def test_ip_from_string_v4_ok(self): self.assertEqual(ipaddr.IP(32, 0), ipaddr.ip_from_string('0.0.0.0')) self.assertEqual(ipaddr.IP(32, 0xffffffff), ipaddr.ip_from_string('255.255.255.255')) self.assertEqual(ipaddr.IP(32, 0x7f000001), ipaddr.ip_from_string('127.0.0.1')) self.assertEqual(ipaddr.IP(32, 0x7f000001), ipaddr.ip_from_string('127.000.000.001'))
def test_ip_from_string_v6_ok(self): self.assertEqual(ipaddr.IP(128, 0), ipaddr.ip_from_string('0:0:0:0:0:0:0:0')) self.assertEqual( ipaddr.IP(128, 2**128 - 1), ipaddr.ip_from_string('ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff')) self.assertEqual(ipaddr.IP(128, 1), ipaddr.ip_from_string('0:0:0:0:0:0:0:1')) self.assertEqual(ipaddr.IP(128, 0xffff0000000000000000000000000000L), ipaddr.ip_from_string('ffff:0:0:0:0:0:0:0'))
def test_ip_from_string_v6_omitting_zeros_ok(self): self.assertEqual(ipaddr.IP(128, 1), ipaddr.ip_from_string('::1')) self.assertEqual(ipaddr.IP(128, 0), ipaddr.ip_from_string('::0')) self.assertEqual(ipaddr.IP(128, 0), ipaddr.ip_from_string('::')) self.assertEqual( ipaddr.ip_from_string('ffff:ffff:ffff:0:ffff:ffff:ffff:ffff'), ipaddr.ip_from_string('ffff:ffff:ffff::ffff:ffff:ffff:ffff')) self.assertEqual(ipaddr.ip_from_string('ffff:ffff:0:0:0:0:0:ffff'), ipaddr.ip_from_string('ffff:ffff::ffff')) self.assertEqual(ipaddr.ip_from_string('ffff:0:0:0:0:0:0:0'), ipaddr.ip_from_string('ffff::'))
def test_ip_to_string_v6_ok(self): call = lambda val: ipaddr.ip_to_string(ipaddr.IP(128, val)) self.assertEqual('0:0:0:0:0:0:0:0', call(0)) self.assertEqual('ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff', call(2**128-1)) self.assertEqual('0:0:0:0:0:0:0:ffff', call(0xffff)) self.assertEqual( 'ffff:0:0:0:0:0:0:0', call(0xffff0000000000000000000000000000L))
def test_ip_to_string_v6_bad(self): with self.assertRaises(ValueError): ipaddr.ip_to_string(ipaddr.IP(128, 2**128))
def test_ip_to_string_v4_bad(self): with self.assertRaises(ValueError): ipaddr.ip_to_string(ipaddr.IP(8, 0)) with self.assertRaises(ValueError): ipaddr.ip_to_string(ipaddr.IP(32, 2**32))
def test_ip_to_string_v4_ok(self): call = lambda val: ipaddr.ip_to_string(ipaddr.IP(32, val)) self.assertEqual('0.0.0.0', call(0)) self.assertEqual('255.255.255.255', call(2**32 - 1)) self.assertEqual('0.0.0.255', call(255)) self.assertEqual('127.0.0.1', call(0x7f000001))