]> granicus.if.org Git - python/commitdiff
Improve diffing logic and output for test_pydoc.
authorGeorg Brandl <georg@python.org>
Tue, 20 May 2008 08:07:36 +0000 (08:07 +0000)
committerGeorg Brandl <georg@python.org>
Tue, 20 May 2008 08:07:36 +0000 (08:07 +0000)
Lib/test/test_pydoc.py

index 6c10ebf182b903d013e69c1523326d143278bc52..25e3d3d65520fb31b64475171cbde92100fc14f9 100644 (file)
@@ -190,11 +190,11 @@ def get_pydoc_text(module):
 
 def print_diffs(text1, text2):
     "Prints unified diffs for two texts"
-    lines1 = text1.splitlines()
-    lines2 = text2.splitlines()
-    diffs = difflib.unified_diff(lines1, lines2, n=0)
-    diffs = list(diffs) # its a generator
-    print '\n'.join(diffs)
+    lines1 = text1.splitlines(True)
+    lines2 = text2.splitlines(True)
+    diffs = difflib.unified_diff(lines1, lines2, n=0, fromfile='expected',
+                                 tofile='got')
+    print '\n' + ''.join(diffs)
 
 def get_mod_file(module):
     """Returns the name of the .py file if the module is compiled"""
@@ -209,14 +209,14 @@ class PyDocDocTest(unittest.TestCase):
         mod_file = get_mod_file(pydoc_mod)
         expected_html = expected_html_pattern % (mod_file, mod_file)
         if result != expected_html:
-            print_diffs(result, expected_html)
+            print_diffs(expected_html, result)
             self.fail("outputs are not equal, see diff above")
 
     def test_text_doc(self):
         result = get_pydoc_text(pydoc_mod)
         expected_text = expected_text_pattern % get_mod_file(pydoc_mod)
         if result != expected_text:
-            print_diffs(result, expected_text)
+            print_diffs(expected_text, result)
             self.fail("outputs are not equal, see diff above")
 
     def test_not_here(self):