[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[tor-commits] [stem/master] Don't try to test cell packing with non-blank, non-ZERO 'unused' content without specifying it in constructor



commit dbb648f43fe8803637d1a66d988dd995ac3af2b8
Author: Dave Rolek <dmr-x@xxxxxxxxxx>
Date:   Wed Jul 11 23:17:30 2018 +0000

    Don't try to test cell packing with non-blank,non-ZERO 'unused' content without specifying it in constructor
    
    The test for DestroyCell already did this, so apply this structure to
    tests of all other cell types that may have 'unused' content.
    
    And since this is now such a common pattern in the test file, having a
    comment for it is less necessary, so also removing that.
---
 test/unit/client/cell.py | 23 +++++++++++++----------
 1 file changed, 13 insertions(+), 10 deletions(-)

diff --git a/test/unit/client/cell.py b/test/unit/client/cell.py
index d45886f8..ad9bb0f0 100644
--- a/test/unit/client/cell.py
+++ b/test/unit/client/cell.py
@@ -185,8 +185,9 @@ class TestCell(unittest.TestCase):
 
   def test_relay_cell(self):
     for cell_bytes, (command, command_int, circ_id, stream_id, data, digest, unused, link_protocol) in RELAY_CELLS.items():
-      self.assertEqual(cell_bytes, RelayCell(circ_id, command, data, digest, stream_id).pack(link_protocol))
-      self.assertEqual(cell_bytes, RelayCell(circ_id, command_int, data, digest, stream_id).pack(link_protocol))
+      if not unused.strip(ZERO):
+        self.assertEqual(cell_bytes, RelayCell(circ_id, command, data, digest, stream_id).pack(link_protocol))
+        self.assertEqual(cell_bytes, RelayCell(circ_id, command_int, data, digest, stream_id).pack(link_protocol))
 
       cell = Cell.pop(cell_bytes, link_protocol)[0]
       self.assertEqual(circ_id, cell.circ_id)
@@ -220,9 +221,6 @@ class TestCell(unittest.TestCase):
 
   def test_destroy_cell(self):
     for cell_bytes, (circ_id, reason, reason_int, unused, link_protocol) in DESTROY_CELLS.items():
-      # Packed cells always pad with zeros, so if we're testing something with
-      # non-zero padding then skip this check.
-
       if not unused.strip(ZERO):
         self.assertEqual(cell_bytes, DestroyCell(circ_id, reason).pack(link_protocol))
         self.assertEqual(cell_bytes, DestroyCell(circ_id, reason_int).pack(link_protocol))
@@ -236,7 +234,8 @@ class TestCell(unittest.TestCase):
 
   def test_create_fast_cell(self):
     for cell_bytes, (circ_id, key_material, unused, link_protocol) in CREATE_FAST_CELLS.items():
-      self.assertEqual(cell_bytes, CreateFastCell(circ_id, key_material).pack(link_protocol))
+      if not unused.strip(ZERO):
+        self.assertEqual(cell_bytes, CreateFastCell(circ_id, key_material).pack(link_protocol))
 
       cell = Cell.pop(cell_bytes, link_protocol)[0]
       self.assertEqual(circ_id, cell.circ_id)
@@ -248,7 +247,8 @@ class TestCell(unittest.TestCase):
 
   def test_created_fast_cell(self):
     for cell_bytes, (circ_id, key_material, derivative_key, unused, link_protocol) in CREATED_FAST_CELLS.items():
-      self.assertEqual(cell_bytes, CreatedFastCell(circ_id, derivative_key, key_material).pack(link_protocol))
+      if not unused.strip(ZERO):
+        self.assertEqual(cell_bytes, CreatedFastCell(circ_id, derivative_key, key_material).pack(link_protocol))
 
       cell = Cell.pop(cell_bytes, link_protocol)[0]
       self.assertEqual(circ_id, cell.circ_id)
@@ -270,7 +270,8 @@ class TestCell(unittest.TestCase):
 
   def test_netinfo_cell(self):
     for cell_bytes, (timestamp, receiver_address, sender_addresses, unused, link_protocol) in NETINFO_CELLS.items():
-      self.assertEqual(cell_bytes, NetinfoCell(receiver_address, sender_addresses, timestamp).pack(link_protocol))
+      if not unused.strip(ZERO):
+        self.assertEqual(cell_bytes, NetinfoCell(receiver_address, sender_addresses, timestamp).pack(link_protocol))
 
       cell = Cell.pop(cell_bytes, link_protocol)[0]
       self.assertEqual(timestamp, cell.timestamp)
@@ -298,7 +299,8 @@ class TestCell(unittest.TestCase):
 
   def test_certs_cell(self):
     for cell_bytes, (certs, unused, link_protocol) in CERTS_CELLS.items():
-      self.assertEqual(cell_bytes, CertsCell(certs).pack(link_protocol))
+      if not unused.strip(ZERO):
+        self.assertEqual(cell_bytes, CertsCell(certs).pack(link_protocol))
 
       cell = Cell.pop(cell_bytes, link_protocol)[0]
       self.assertEqual(certs, cell.certificates)
@@ -316,7 +318,8 @@ class TestCell(unittest.TestCase):
 
   def test_auth_challenge_cell(self):
     for cell_bytes, (challenge, methods, unused, link_protocol) in AUTH_CHALLENGE_CELLS.items():
-      self.assertEqual(cell_bytes, AuthChallengeCell(methods, challenge).pack(link_protocol))
+      if not unused.strip(ZERO):
+        self.assertEqual(cell_bytes, AuthChallengeCell(methods, challenge).pack(link_protocol))
 
       cell = Cell.pop(cell_bytes, link_protocol)[0]
       self.assertEqual(challenge, cell.challenge)



_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits