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

Method testSummarizing

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

Source from the content-addressed store, hash-verified

1943 [ip1, ip2])
1944
1945 def testSummarizing(self):
1946 #ip = ipaddress.ip_address
1947 #ipnet = ipaddress.ip_network
1948 summarize = ipaddress.summarize_address_range
1949 ip1 = ipaddress.ip_address('1.1.1.0')
1950 ip2 = ipaddress.ip_address('1.1.1.255')
1951
1952 # summarize works only for IPv4 & IPv6
1953 class IPv7Address(ipaddress.IPv6Address):
1954 @property
1955 def version(self):
1956 return 7
1957 ip_invalid1 = IPv7Address('::1')
1958 ip_invalid2 = IPv7Address('::1')
1959 self.assertRaises(ValueError, list,
1960 summarize(ip_invalid1, ip_invalid2))
1961 # test that a summary over ip4 & ip6 fails
1962 self.assertRaises(TypeError, list,
1963 summarize(ip1, ipaddress.IPv6Address('::1')))
1964 self.assertRaises(TypeError, list,
1965 summarize(ip1, ipaddress.IPv6Address('::1%scope')))
1966 # test a /24 is summarized properly
1967 self.assertEqual(list(summarize(ip1, ip2))[0],
1968 ipaddress.ip_network('1.1.1.0/24'))
1969 # test an IPv4 range that isn't on a network byte boundary
1970 ip2 = ipaddress.ip_address('1.1.1.8')
1971 self.assertEqual(list(summarize(ip1, ip2)),
1972 [ipaddress.ip_network('1.1.1.0/29'),
1973 ipaddress.ip_network('1.1.1.8')])
1974 # all!
1975 ip1 = ipaddress.IPv4Address(0)
1976 ip2 = ipaddress.IPv4Address(ipaddress.IPv4Address._ALL_ONES)
1977 self.assertEqual([ipaddress.IPv4Network('0.0.0.0/0')],
1978 list(summarize(ip1, ip2)))
1979
1980 ip1 = ipaddress.ip_address('1::')
1981 ip2 = ipaddress.ip_address('1:ffff:ffff:ffff:ffff:ffff:ffff:ffff')
1982 # test an IPv6 is summarized properly
1983 self.assertEqual(list(summarize(ip1, ip2))[0],
1984 ipaddress.ip_network('1::/16'))
1985 # test an IPv6 range that isn't on a network byte boundary
1986 ip2 = ipaddress.ip_address('2::')
1987 self.assertEqual(list(summarize(ip1, ip2)),
1988 [ipaddress.ip_network('1::/16'),
1989 ipaddress.ip_network('2::/128')])
1990
1991 ip1 = ipaddress.ip_address('1::%scope')
1992 ip2 = ipaddress.ip_address('1:ffff:ffff:ffff:ffff:ffff:ffff:ffff%scope')
1993 # test an IPv6 is summarized properly
1994 self.assertEqual(list(summarize(ip1, ip2))[0],
1995 ipaddress.ip_network('1::/16'))
1996 # test an IPv6 range that isn't on a network byte boundary
1997 ip2 = ipaddress.ip_address('2::%scope')
1998 self.assertEqual(list(summarize(ip1, ip2)),
1999 [ipaddress.ip_network('1::/16'),
2000 ipaddress.ip_network('2::/128')])
2001
2002 # test exception raised when first is greater than last

Callers

nothing calls this directly

Calls 5

IPv7AddressClass · 0.85
summarizeFunction · 0.85
listClass · 0.85
assertRaisesMethod · 0.45
assertEqualMethod · 0.45

Tested by

no test coverage detected