mirror of
https://github.com/python/cpython.git
synced 2026-04-11 22:31:02 +00:00
Merged revisions 72489 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r72489 | gregory.p.smith | 2009-05-08 16:16:47 -0700 (Fri, 08 May 2009) | 3 lines Fix an off by one error on negative indexs to __getitem__ http://code.google.com/p/ipaddr-py/issues/detail?id=15 ........
This commit is contained in:
parent
bb6721474c
commit
2fcd73d7cb
2 changed files with 12 additions and 0 deletions
|
|
@ -209,6 +209,7 @@ def __getitem__(self, n):
|
|||
raise IndexError
|
||||
return self._string_from_ip_int(self.network + n)
|
||||
else:
|
||||
n += 1
|
||||
if self.broadcast + n < self.network:
|
||||
raise IndexError
|
||||
return self._string_from_ip_int(self.broadcast + n)
|
||||
|
|
|
|||
|
|
@ -274,6 +274,17 @@ def test_nth(self):
|
|||
self.assertEqual(self.ipv6[5],
|
||||
'2001:658:22a:cafe::5')
|
||||
|
||||
def test_getitem(self):
|
||||
# http://code.google.com/p/ipaddr-py/issues/detail?id=15
|
||||
addr = ipaddr.IPv4('172.31.255.128/255.255.255.240')
|
||||
self.assertEqual(28, addr.prefixlen)
|
||||
addr_list = list(addr)
|
||||
self.assertEqual('172.31.255.128', addr_list[0])
|
||||
self.assertEqual('172.31.255.128', addr[0])
|
||||
self.assertEqual('172.31.255.143', addr_list[-1])
|
||||
self.assertEqual('172.31.255.143', addr[-1])
|
||||
self.assertEqual(addr_list[-1], addr[-1])
|
||||
|
||||
def test_equals(self):
|
||||
self.assertTrue(self.ipv4 == ipaddr.IPv4('1.2.3.4/24'))
|
||||
self.assertFalse(self.ipv4 == ipaddr.IPv4('1.2.3.4/23'))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue