[tor-commits] [bridgedb/master] Rewrite testDistWithFilterIP6() in legacy_Tests.

isis at torproject.org isis at torproject.org
Sat Jul 25 19:26:22 UTC 2015


commit c1637a017d7e34a79b71829f0918184b63055c6e
Author: Isis Lovecruft <isis at torproject.org>
Date:   Tue Apr 21 23:35:33 2015 +0000

    Rewrite testDistWithFilterIP6() in legacy_Tests.
---
 lib/bridgedb/test/legacy_Tests.py |   16 ----------------
 lib/bridgedb/test/test_Dist.py    |   22 ++++++++++++++++++++++
 2 files changed, 22 insertions(+), 16 deletions(-)

diff --git a/lib/bridgedb/test/legacy_Tests.py b/lib/bridgedb/test/legacy_Tests.py
index 9a0c74f..c495412 100644
--- a/lib/bridgedb/test/legacy_Tests.py
+++ b/lib/bridgedb/test/legacy_Tests.py
@@ -236,22 +236,6 @@ class IPBridgeDistTests(unittest.TestCase):
     #        self.assertEquals(len(fps), 5)
     #        self.assertTrue(count >= 1)
 
-    def testDistWithFilterIP6(self):
-        d = bridgedb.Dist.HTTPSDistributor(3, "Foo")
-        for _ in xrange(250):
-            d.insert(fakeBridge6(or_addresses=True))
-            d.insert(fakeBridge(or_addresses=True))
-
-        for i in xrange(500):
-            bridges = d.getBridges(randomIPv4String(),
-                                   "faketimestamp",
-                                   bridgeFilterRules=[filterBridgesByIP6])
-            bridge = random.choice(bridges)
-            bridge_line = bridge.getConfigLine(addressClass=ipaddr.IPv6Address)
-            address, portlist = networkstatus.parseALine(bridge_line)
-            assert type(ipaddr.IPAddress(address)) is ipaddr.IPv6Address
-            assert filterBridgesByIP6(random.choice(bridges))
-
     def testDistWithFilterBlockedCountriesAdvanced(self):
         d = bridgedb.Dist.HTTPSDistributor(3, "Foo")
         for _ in xrange(250):
diff --git a/lib/bridgedb/test/test_Dist.py b/lib/bridgedb/test/test_Dist.py
index 82ef823..bc437ba 100644
--- a/lib/bridgedb/test/test_Dist.py
+++ b/lib/bridgedb/test/test_Dist.py
@@ -289,6 +289,28 @@ class HTTPSDistributorTests(unittest.TestCase):
         self.assertIsInstance(ipaddr.IPAddress(address), ipaddr.IPv6Address)
         self.assertIsNotNone(filterBridgesByIP6(random.choice(bridges)))
 
+    def test_HTTPSDistributor_getBridges_ipv6(self):
+        """A request for IPv6 bridges should return IPv6 bridges."""
+        dist = Dist.HTTPSDistributor(3, self.key)
+        [dist.insert(bridge) for bridge in self.bridges[:250]]
+
+        for i in xrange(500):
+            bridgeRequest = self.randomClientRequest()
+            bridgeRequest.withIPv6()
+            bridgeRequest.generateFilters()
+
+            bridges = dist.getBridges(bridgeRequest, "faketimestamp")
+            self.assertTrue(type(bridges) is list)
+            self.assertGreater(len(bridges), 0)
+
+            bridge = random.choice(bridges)
+            bridgeLine = bridge.getBridgeLine(bridgeRequest)
+            addrport, fingerprint = bridgeLine.split()
+            address, port = addrport.rsplit(':', 1)
+            address = address.strip('[]')
+            self.assertIsInstance(ipaddr.IPAddress(address), ipaddr.IPv6Address)
+            self.assertIsNotNone(filterBridgesByIP6(random.choice(bridges)))
+
     def test_HTTPSDistributor_getBridges_ipv4(self):
         """A request for IPv4 bridges should return IPv4 bridges."""
         dist = Dist.HTTPSDistributor(1, self.key)





More information about the tor-commits mailing list