]> git.ipfire.org Git - thirdparty/pdns.git/blob - contrib/assert-equal-DNSMessage/eqdnsmessage.py
Merge pull request #8795 from omoerbeek/rec-lua-docs-policytag
[thirdparty/pdns.git] / contrib / assert-equal-DNSMessage / eqdnsmessage.py
1 import difflib
2 import dns
3 import unittest
4
5 class AssertEqualDNSMessageMixin(unittest.TestCase):
6 def assertEqualDNSMessage(self, first, second, msg=None):
7 if not first == second:
8 a = str(first).split('\n')
9 b = str(second).split('\n')
10
11 diff = '\n'.join(
12 difflib.unified_diff(
13 a,
14 b,
15 fromfile='first',
16 tofile='second',
17 n=max(len(a), len(b)),
18 lineterm=""
19 )
20 )
21
22 standardMsg = "%s != %s:\n%s" % (repr(first), repr(second), diff)
23 msg = self._formatMessage(msg, standardMsg)
24
25 raise self.failureException(msg)
26
27 def setUp(self):
28 self.addTypeEqualityFunc(dns.message.Message, self.assertEqualDNSMessage)
29
30 super(AssertEqualDNSMessageMixin, self).setUp()