From 890fa92655d38a5a92b539498d44043bd090e745 Mon Sep 17 00:00:00 2001 From: bwarsaw Date: Mon, 31 Mar 2003 23:27:35 +0000 Subject: Add ndiff hack for better error reporting of long text. --- tests/TestBase.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'tests/TestBase.py') diff --git a/tests/TestBase.py b/tests/TestBase.py index 816abaa28..fca806b7a 100644 --- a/tests/TestBase.py +++ b/tests/TestBase.py @@ -19,15 +19,34 @@ import os import shutil +import difflib import unittest +from cStringIO import StringIO from Mailman import MailList from Mailman import Utils from Mailman import mm_cfg +NL = '\n' + class TestBase(unittest.TestCase): + if hasattr(difflib, 'ndiff'): + # Python 2.2 and beyond + def ndiffAssertEqual(self, first, second): + """Like failUnlessEqual except use ndiff for readable output.""" + if first <> second: + sfirst = str(first) + ssecond = str(second) + diff = difflib.ndiff(sfirst.splitlines(), ssecond.splitlines()) + fp = StringIO() + print >> fp, NL, NL.join(diff) + raise self.failureException, fp.getvalue() + else: + # Python 2.1 + ndiffAssertEqual = unittest.TestCase.assertEqual + def setUp(self): mlist = MailList.MailList() mlist.Create('_xtest', 'test@dom.ain', 'xxxxx') -- cgit v1.2.3-70-g09d2