Hi Stefan,

Stefan Sperling writes:
> ... this won't work on windows.
> 
> We'll need a utility function in our test suite that prints diffs.

Right. How about this?

Index: subversion/tests/cmdline/svntest/verify.py
===================================================================
--- subversion/tests/cmdline/svntest/verify.py  (revision 978817)
+++ subversion/tests/cmdline/svntest/verify.py  (working copy)
@@ -25,6 +25,7 @@
 ######################################################################
 
 import re, sys
+from difflib import context_diff
 
 import svntest
 
@@ -275,22 +276,8 @@ def display_lines(message, label, expected, actual
   Both EXPECTED and ACTUAL may be strings or lists of strings."""
   if message is not None:
     print(message)
-  if expected is not None:
-    output = 'EXPECTED %s' % label
-    if expected_is_regexp:
-      output += ' (regexp)'
-    if expected_is_unordered:
-      output += ' (unordered)'
-    output += ':'
-    print(output)
-    for x in expected:
-      sys.stdout.write(x)
-    if expected_is_regexp:
-      sys.stdout.write('\n')
-  if actual is not None:
-    print('ACTUAL %s:' % label)
-    for x in actual:
-      sys.stdout.write(x)
+  for line in context_diff(actual, expected, fromfile="actual", 
tofile="expected"):
+    print line,
 
 def compare_and_display_lines(message, label, expected, actual,
                               raisable=None):

Reply via email to