Browse Source

Added serialized sizes for request and response in open invite

onyinyang 2 years ago
parent
commit
701a047454
1 changed files with 23 additions and 10 deletions
  1. 23 10
      src/tests.rs

+ 23 - 10
src/tests.rs

@@ -45,14 +45,25 @@ impl TestHarness {
         self.ba.advance_days(days);
     }
 
-    fn open_invite(&mut self) -> (cred::Lox, bridge_table::BridgeLine) {
+    fn open_invite(&mut self) -> (usize, usize, (cred::Lox, bridge_table::BridgeLine)) {
         // Issue an open invitation
         let inv = self.bdb.invite();
 
         // Use it to get a Lox credential
         let (req, state) = open_invite::request(&inv);
-        let resp = self.ba.handle_open_invite(req).unwrap();
-        open_invite::handle_response(state, resp, &self.ba.lox_pub).unwrap()
+        let encoded: Vec<u8> = bincode::serialize(&req).unwrap();
+        let req_len = encoded.len();
+        let decoded: open_invite::Request = bincode::deserialize(&encoded[..]).unwrap();
+
+        let resp = self.ba.handle_open_invite(decoded).unwrap();
+        let encoded_resp: Vec<u8> = bincode::serialize(&resp).unwrap();
+        let resp_len = encoded_resp.len();
+        let decode_resp: open_invite::Response = bincode::deserialize(&encoded_resp[..]).unwrap();
+        return (
+            req_len,
+            resp_len,
+            (open_invite::handle_response(state, decode_resp, &self.ba.lox_pub).unwrap()),
+        );
     }
 
     fn trust_promotion(&mut self, cred: &cred::Lox) -> cred::Migration {
@@ -141,13 +152,15 @@ fn test_open_invite() {
     let mut th = TestHarness::new();
 
     // Join an untrusted user
-    let (cred, bridgeline) = th.open_invite();
+    let (ser_req, ser_resp, (cred, bridgeline)) = th.open_invite();
 
     // Check that we can use the credential to read a bucket
     let (id, key) = bridge_table::from_scalar(cred.bucket).unwrap();
     let encbuckets = th.ba.enc_bridge_table();
     let bucket =
         bridge_table::BridgeTable::decrypt_bucket(id, &key, &encbuckets[id as usize]).unwrap();
+    println!("Request size = {:?}", ser_req);
+    println!("Response size = {:?}", ser_resp);
     println!("cred = {:?}", cred);
     println!("bucket = {:?}", bucket);
     println!("bridgeline = {:?}", bridgeline);
@@ -160,7 +173,7 @@ fn test_open_invite() {
 fn test_trust_promotion() {
     let mut th = TestHarness::new();
 
-    let cred = th.open_invite().0;
+    let cred = th.open_invite().2 .0;
     assert!(th.ba.verify_lox(&cred));
 
     // Time passes
@@ -183,7 +196,7 @@ fn test_trust_promotion() {
 fn test_level0_migration() {
     let mut th = TestHarness::new();
 
-    let cred = th.open_invite().0;
+    let cred = th.open_invite().2 .0;
     assert!(th.ba.verify_lox(&cred));
 
     // Time passes
@@ -210,7 +223,7 @@ fn test_level_up() {
     let mut th = TestHarness::new();
 
     // Join an untrusted user
-    let cred = th.open_invite().0;
+    let cred = th.open_invite().2 .0;
 
     // Time passes
     th.advance_days(47);
@@ -250,7 +263,7 @@ fn test_issue_invite() {
     let mut th = TestHarness::new();
 
     // Join an untrusted user
-    let cred = th.open_invite().0;
+    let cred = th.open_invite().2 .0;
 
     // Time passes
     th.advance_days(47);
@@ -282,7 +295,7 @@ fn test_redeem_invite() {
     let mut th = TestHarness::new();
 
     // Join an untrusted user
-    let cred = th.open_invite().0;
+    let cred = th.open_invite().2 .0;
 
     // Time passes
     th.advance_days(47);
@@ -372,7 +385,7 @@ fn test_blockage_migration() {
     let mut th = TestHarness::new();
 
     // Join an untrusted user
-    let cred = th.open_invite().0;
+    let cred = th.open_invite().2 .0;
 
     // Time passes
     th.advance_days(47);