def testAddressCleanupCorrect(self): unoptimized_addr = [nacaddr.IPv4('10.16.128.6/32', token='FOO'), nacaddr.IPv4('10.16.128.7/32', token='BAR')] self.naming.GetNetAddr.return_value = unoptimized_addr pol = policy.ParsePolicy(HEADER + GOOD_TERM_2, self.naming) term = pol.filters[0][1][0] self.assertEqual(nacaddr.CollapseAddrList(unoptimized_addr), term.source_address) pol = policy.ParsePolicy(HEADER_SRX + GOOD_TERM_2, self.naming) term = pol.filters[0][1][0] self.assertEqual(nacaddr.CollapseAddrListPreserveTokens(unoptimized_addr), term.source_address)
def testCollapseAddrListPreserveTokens(self): addr_list = [nacaddr.IPv4('10.0.1.7/32', token='BIZ'), nacaddr.IPv4('192.168.1.10/32', token='ALSOUNDERSUPER'), nacaddr.IPv4('10.0.0.6/32', token='FOO'), nacaddr.IPv4('10.0.0.9/32', token='BAR'), nacaddr.IPv4('10.0.0.8/32', token='FOO'), nacaddr.IPv4('10.0.0.7/32', token='BAR'), nacaddr.IPv4('192.168.1.1/24', token='SUPER', strict=False), nacaddr.IPv4('10.0.1.6/32', token='BIZ'), nacaddr.IPv4('192.168.1.7/31', token='UNDERSUPER', strict=False) ] expected = [nacaddr.IPv4('10.0.0.7/32', token='BAR'), nacaddr.IPv4('10.0.0.9/32', token='BAR'), nacaddr.IPv4('10.0.1.6/31', token='BIZ'), nacaddr.IPv4('10.0.0.6/32', token='FOO'), nacaddr.IPv4('10.0.0.8/32', token='FOO'), nacaddr.IPv4('192.168.1.1/24', token='SUPER', strict=False), ] collapsed = nacaddr.CollapseAddrListPreserveTokens(addr_list) self.assertListEqual(collapsed, expected)