summaryrefslogtreecommitdiff
path: root/tests/test_rdata.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_rdata.py')
-rw-r--r--tests/test_rdata.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/test_rdata.py b/tests/test_rdata.py
index 022642f..7960dd1 100644
--- a/tests/test_rdata.py
+++ b/tests/test_rdata.py
@@ -34,6 +34,7 @@ from dns.rdtypes.ANY.OPT import OPT
import tests.stxt_module
import tests.ttxt_module
+from tests.util import here
class RdataTestCase(unittest.TestCase):
@@ -94,6 +95,15 @@ class RdataTestCase(unittest.TestCase):
a1.replace(address="bogus")
self.assertRaises(dns.exception.SyntaxError, bad)
+ def test_replace_comment(self):
+ a1 = dns.rdata.from_text(dns.rdataclass.IN, dns.rdatatype.A,
+ "1.2.3.4 ;foo")
+ self.assertEqual(a1.rdcomment, "foo")
+ a2 = a1.replace(rdcomment="bar")
+ self.assertEqual(a1, a2)
+ self.assertEqual(a1.rdcomment, "foo")
+ self.assertEqual(a2.rdcomment, "bar")
+
def test_to_generic(self):
a = dns.rdata.from_text(dns.rdataclass.IN, dns.rdatatype.A, "1.2.3.4")
self.assertEqual(str(a.to_generic()), r'\# 4 01020304')
@@ -415,5 +425,13 @@ class RdataTestCase(unittest.TestCase):
rdata = dns.rdata.from_wire('in', 'a', wire, 0, 4)
self.assertEqual(rdata, dns.rdata.from_text('in', 'a', '1.2.3.4'))
+ def test_unpickle(self):
+ expected_mx = dns.rdata.from_text('in', 'mx', '10 mx.example.')
+ with open(here('mx-2-0.pickle'), 'rb') as f:
+ mx = pickle.load(f)
+ self.assertEqual(mx, expected_mx)
+ self.assertIsNone(mx.rdcomment)
+
+
if __name__ == '__main__':
unittest.main()