def test_total_address_overlapping(self): """ For the scenario where networks will contain eachother. """ total = ipgroup.totalAddresses(["129.21.0.0/16", "129.21.1.0/18", "129.21.1.0/24", ]) self.assertEqual(2**16, total)
def test_total_address_overlapping2(self): """ For the scenario where networks will contain eachother big networks to show that the function is fast, no longer enumerating all networks. """ total = ipgroup.totalAddresses(["1.0.0.0/8", "2.0.0.0/8", "2.0.0.0/16", "2.1.1.0/24", "1.0.0.0/16", "1.1.1.0/24", "2.0.0.0/8", ]) self.assertEqual((2**24 + 2**24), total)
def test_total_address_overlap_IPv6(self): total = ipgroup.totalAddresses(['2620:008d:8000::/48', '2620:008d:8000:e693::/64', ]) self.assertEqual(2**80, total)
def test_total_address5(self): total = ipgroup.totalAddresses(["128.151.2.0/24", "128.151.2.0/23", ]) self.assertEqual(2**9, total)
def test_total_address3(self): total = ipgroup.totalAddresses(["192.168.1.1/16", "127.0.0.0/28" ]) self.assertEqual((2**16 + 2**4), total)
def test_total_address2(self): total = ipgroup.totalAddresses(["192.168.1.1/16", "127.0.0.0/16", ]) self.assertEqual(2**17, total)
def test_total_address1(self): self.assertEqual(8, ipgroup.totalAddresses("127.0.0.0/29"))