+class TestCompat(unittest.TestCase):
+
+ datav6 = [ ("0:0:0:0:0:0:0:0", "::"), ("0::0:0:7", "::7"),
+ ("00ab:00:00:c:00:00:00:d", "ab:0:0:c::d"),
+ ("00ab:0000:0000:0000:000c:0000:0000:000d", "ab::c:0:0:d"),
+ ("1:02:3:04:5:006:7:0008", "1:2:3:4:5:6:7:8"),
+ ("::FFFF:1.2.3.4", "::ffff:102:304") ]
+ datav4 = [ ("001.002.003.004", "1.2.3.4") ]
+
+ def testCompat(self):
+ for addr, b in self.datav6:
+ numaddr = v6addr.inet_pton(socket.AF_INET6, addr)
+ a = v6addr.inet_ntop(socket.AF_INET6, numaddr)
+ self.assertEquals(a, b)
+ for addr, b in self.datav4:
+ numaddr = v6addr.inet_pton(socket.AF_INET, addr)
+ a = v6addr.inet_ntop(socket.AF_INET, numaddr)
+ self.assertEquals(a, b)
+
+ def testInvalidFamily(self):
+ self.assertRaises(socket.error, v6addr.inet_pton,
+ socket.AF_UNIX, "1.2.3.4")
+ self.assertRaises(socket.error, v6addr.inet_ntop,
+ socket.AF_UNIX, "\01\02\03\03")
+