summaryrefslogtreecommitdiff
path: root/tests/test_zone.py
diff options
context:
space:
mode:
authorPetr Viktorin <pviktori@redhat.com>2015-05-21 13:29:32 +0200
committerPetr Viktorin <pviktori@redhat.com>2015-05-21 13:29:32 +0200
commit8646a0410cefa18485fc1f8eaebb7faa2c964ccf (patch)
treeef129d50497eda122e06b02c3bd97143c94888f8 /tests/test_zone.py
parent0b8ae7fd1107f330f94afc03311f233d51968a66 (diff)
downloaddnspython-8646a0410cefa18485fc1f8eaebb7faa2c964ccf.tar.gz
Fix failing test for Zone.to_file
A fix for https://github.com/rthalley/dnspython/issues/94 Make the to_file method work on string files, unless explicitly told to do binary encoding. Take the line terminator from os, rather than relying on the print function. Change the test to use a text file rather than binary, and add a new test for to_file with a binary file.
Diffstat (limited to 'tests/test_zone.py')
-rw-r--r--tests/test_zone.py15
1 files changed, 14 insertions, 1 deletions
diff --git a/tests/test_zone.py b/tests/test_zone.py
index 67fc2ae..08557ad 100644
--- a/tests/test_zone.py
+++ b/tests/test_zone.py
@@ -121,12 +121,25 @@ class ZoneTestCase(unittest.TestCase):
os.unlink('example2.out')
self.assertTrue(ok)
+ def testFromFile2b(self):
+ """Test to_file with a binary file"""
+ z = dns.zone.from_file('example', 'example', relativize=False)
+ ok = False
+ try:
+ with open('example2b.out', 'wb') as f:
+ z.to_file(f, relativize=False, nl='\x0a', binary=True)
+ ok = filecmp.cmp('example2b.out', 'example2.good')
+ finally:
+ if not _keep_output:
+ os.unlink('example2b.out')
+ self.assertTrue(ok)
+
def testToText(self):
z = dns.zone.from_file('example', 'example')
ok = False
try:
text_zone = z.to_text(nl='\x0a')
- f = open('example3.out', 'wb')
+ f = open('example3.out', 'w')
f.write(text_zone)
f.close()
ok = filecmp.cmp('example3.out', 'example3.good')