MCPcopy Index your code
hub / github.com/python/cpython / testNetworkComparison

Method testNetworkComparison

Lib/test/test_ipaddress.py:2109–2194  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

2107 ipaddress.ip_interface('::2%scope/48'))
2108
2109 def testNetworkComparison(self):
2110 # ip1 and ip2 have the same network address
2111 ip1 = ipaddress.IPv4Network('1.1.1.0/24')
2112 ip2 = ipaddress.IPv4Network('1.1.1.0/32')
2113 ip3 = ipaddress.IPv4Network('1.1.2.0/24')
2114
2115 self.assertTrue(ip1 < ip3)
2116 self.assertTrue(ip3 > ip2)
2117
2118 self.assertEqual(ip1.compare_networks(ip1), 0)
2119
2120 # if addresses are the same, sort by netmask
2121 self.assertEqual(ip1.compare_networks(ip2), -1)
2122 self.assertEqual(ip2.compare_networks(ip1), 1)
2123
2124 self.assertEqual(ip1.compare_networks(ip3), -1)
2125 self.assertEqual(ip3.compare_networks(ip1), 1)
2126 self.assertTrue(ip1._get_networks_key() < ip3._get_networks_key())
2127
2128 ip1 = ipaddress.IPv6Network('2001:2000::/96')
2129 ip2 = ipaddress.IPv6Network('2001:2001::/96')
2130 ip3 = ipaddress.IPv6Network('2001:ffff:2000::/96')
2131
2132 self.assertTrue(ip1 < ip3)
2133 self.assertTrue(ip3 > ip2)
2134 self.assertEqual(ip1.compare_networks(ip3), -1)
2135 self.assertTrue(ip1._get_networks_key() < ip3._get_networks_key())
2136
2137 # Test comparing different protocols.
2138 # Should always raise a TypeError.
2139 self.assertRaises(TypeError,
2140 self.ipv4_network.compare_networks,
2141 self.ipv6_network)
2142 ipv6 = ipaddress.IPv6Interface('::/0')
2143 ipv4 = ipaddress.IPv4Interface('0.0.0.0/0')
2144 self.assertRaises(TypeError, ipv4.__lt__, ipv6)
2145 self.assertRaises(TypeError, ipv4.__gt__, ipv6)
2146 self.assertRaises(TypeError, ipv6.__lt__, ipv4)
2147 self.assertRaises(TypeError, ipv6.__gt__, ipv4)
2148
2149 # Regression test for issue 19.
2150 ip1 = ipaddress.ip_network('10.1.2.128/25')
2151 self.assertFalse(ip1 < ip1)
2152 self.assertFalse(ip1 > ip1)
2153 ip2 = ipaddress.ip_network('10.1.3.0/24')
2154 self.assertTrue(ip1 < ip2)
2155 self.assertFalse(ip2 < ip1)
2156 self.assertFalse(ip1 > ip2)
2157 self.assertTrue(ip2 > ip1)
2158 ip3 = ipaddress.ip_network('10.1.3.0/25')
2159 self.assertTrue(ip2 < ip3)
2160 self.assertFalse(ip3 < ip2)
2161 self.assertFalse(ip2 > ip3)
2162 self.assertTrue(ip3 > ip2)
2163
2164 # Regression test for issue 28.
2165 ip1 = ipaddress.ip_network('10.10.10.0/31')
2166 ip2 = ipaddress.ip_network('10.10.10.0')

Callers

nothing calls this directly

Calls 9

assertTrueMethod · 0.80
compare_networksMethod · 0.80
_get_networks_keyMethod · 0.80
assertFalseMethod · 0.80
assertEqualMethod · 0.45
assertRaisesMethod · 0.45
sortMethod · 0.45
assertIsMethod · 0.45
__lt__Method · 0.45

Tested by

no test coverage detected