|
@@ -95,12 +95,16 @@ class NameTest(unittest.TestCase):
|
|
b = bytearray()
|
|
b = bytearray()
|
|
b += b'\x07example'*32 + b'\x03com\x00'
|
|
b += b'\x07example'*32 + b'\x03com\x00'
|
|
self.assertRaises(DNSMessageFORMERR, Name, b, 0)
|
|
self.assertRaises(DNSMessageFORMERR, Name, b, 0)
|
|
|
|
+ self.assertRaises(OverflowError, Name, b, -1)
|
|
|
|
+ self.assertRaises(OverflowError, Name, b, 0x10000)
|
|
|
|
|
|
def test_at(self):
|
|
def test_at(self):
|
|
self.assertEqual(7, self.name1.at(0))
|
|
self.assertEqual(7, self.name1.at(0))
|
|
self.assertEqual(101, self.name1.at(1))
|
|
self.assertEqual(101, self.name1.at(1))
|
|
self.assertRaises(IndexError, self.name1.at, 100)
|
|
self.assertRaises(IndexError, self.name1.at, 100)
|
|
self.assertRaises(TypeError, self.name1.at, "wrong")
|
|
self.assertRaises(TypeError, self.name1.at, "wrong")
|
|
|
|
+ self.assertRaises(OverflowError, self.name1.at, -1)
|
|
|
|
+ self.assertRaises(OverflowError, self.name1.at, 0x10000)
|
|
|
|
|
|
def test_get_length(self):
|
|
def test_get_length(self):
|
|
self.assertEqual(13, self.name1.get_length())
|
|
self.assertEqual(13, self.name1.get_length())
|
|
@@ -153,12 +157,20 @@ class NameTest(unittest.TestCase):
|
|
self.assertRaises(TypeError, self.name1.split, 1, "wrong")
|
|
self.assertRaises(TypeError, self.name1.split, 1, "wrong")
|
|
self.assertRaises(IndexError, self.name1.split, 123, 1)
|
|
self.assertRaises(IndexError, self.name1.split, 123, 1)
|
|
self.assertRaises(IndexError, self.name1.split, 1, 123)
|
|
self.assertRaises(IndexError, self.name1.split, 1, 123)
|
|
|
|
+
|
|
|
|
+ self.assertRaises(OverflowError, self.name1.split, -1, 123)
|
|
|
|
+ self.assertRaises(OverflowError, self.name1.split, 0, -1)
|
|
|
|
+ self.assertRaises(OverflowError, self.name1.split, 1, 0x10000)
|
|
|
|
+ self.assertRaises(OverflowError, self.name1.split, 0x10000, 5)
|
|
|
|
|
|
s = self.name1.split(1)
|
|
s = self.name1.split(1)
|
|
self.assertEqual("com.", s.to_text())
|
|
self.assertEqual("com.", s.to_text())
|
|
s = self.name1.split(0)
|
|
s = self.name1.split(0)
|
|
self.assertEqual("example.com.", s.to_text())
|
|
self.assertEqual("example.com.", s.to_text())
|
|
self.assertRaises(IndexError, self.name1.split, 123)
|
|
self.assertRaises(IndexError, self.name1.split, 123)
|
|
|
|
+
|
|
|
|
+ self.assertRaises(OverflowError, self.name1.split, 0x10000)
|
|
|
|
+ self.assertRaises(OverflowError, self.name1.split, -123)
|
|
|
|
|
|
def test_reverse(self):
|
|
def test_reverse(self):
|
|
self.assertEqual("com.example.", self.name1.reverse().to_text())
|
|
self.assertEqual("com.example.", self.name1.reverse().to_text())
|
|
@@ -169,7 +181,6 @@ class NameTest(unittest.TestCase):
|
|
self.assertEqual("example.com.example.com.", self.name1.concatenate(self.name1).to_text())
|
|
self.assertEqual("example.com.example.com.", self.name1.concatenate(self.name1).to_text())
|
|
self.assertRaises(TypeError, self.name1.concatenate, "wrong")
|
|
self.assertRaises(TypeError, self.name1.concatenate, "wrong")
|
|
self.assertRaises(TooLongName, self.name1.concatenate, Name("example."*31))
|
|
self.assertRaises(TooLongName, self.name1.concatenate, Name("example."*31))
|
|
-
|
|
|
|
|
|
|
|
def test_downcase(self):
|
|
def test_downcase(self):
|
|
self.assertEqual("EXAMPLE.com.", self.name4.to_text())
|
|
self.assertEqual("EXAMPLE.com.", self.name4.to_text())
|