Author: danielsh
Date: Fri Apr 12 21:43:20 2013
New Revision: 1467481

URL: http://svn.apache.org/r1467481
Log:
Two semi-related changes: tweak the stack traces, again, and rely on that tweak
to make it easier for the Python tests to recognise the new format.

* subversion/libsvn_subr/error.c
  (print_error): Add a comma at the end of bare file:lineno lines.

* subversion/tests/cmdline/merge_automatic_tests.py
  (subtree_to_and_fro),
* subversion/tests/cmdline/merge_reintegrate_tests.py
  (run_reintegrate_expect_error),
* subversion/tests/cmdline/merge_tests.py
  (merge_with_os_deleted_subtrees):
    Factor out common code into...

* subversion/tests/cmdline/svntest/main.py
  (stack_trace_regexp): .. this new module-global.  In addition, extend the
    regular expression to catch the bare file:lineno lines.

Modified:
    subversion/trunk/subversion/libsvn_subr/error.c
    subversion/trunk/subversion/tests/cmdline/merge_automatic_tests.py
    subversion/trunk/subversion/tests/cmdline/merge_reintegrate_tests.py
    subversion/trunk/subversion/tests/cmdline/merge_tests.py
    subversion/trunk/subversion/tests/cmdline/svntest/main.py

Modified: subversion/trunk/subversion/libsvn_subr/error.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/error.c?rev=1467481&r1=1467480&r2=1467481&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/error.c (original)
+++ subversion/trunk/subversion/libsvn_subr/error.c Fri Apr 12 21:43:20 2013
@@ -487,7 +487,7 @@ print_error(svn_error_t *err, FILE *stre
     const char *symbolic_name;
     if (svn_error__is_tracing_link(err))
       /* Skip it; the error code will be printed by the real link. */
-      svn_error_clear(svn_cmdline_fprintf(stream, err->pool, "\n"));
+      svn_error_clear(svn_cmdline_fprintf(stream, err->pool, ",\n"));
     else if ((symbolic_name = svn_error_symbolic_name(err->apr_err)))
       svn_error_clear(svn_cmdline_fprintf(stream, err->pool,
                                           ": (apr_err=%s)\n", symbolic_name));

Modified: subversion/trunk/subversion/tests/cmdline/merge_automatic_tests.py
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/merge_automatic_tests.py?rev=1467481&r1=1467480&r2=1467481&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/cmdline/merge_automatic_tests.py 
(original)
+++ subversion/trunk/subversion/tests/cmdline/merge_automatic_tests.py Fri Apr 
12 21:43:20 2013
@@ -837,7 +837,7 @@ def subtree_to_and_fro(sbox):
                                 "|(  A_COPY\n)"
                                 "|(    Missing ranges: /A:5\n)"
                                 "|(\n)"
-                                "|(.*apr_err.*)", # In case of debug build
+                                "|" + svntest.main.stack_trace_regexp,
                                 None,
                                 True) # Match *all* lines of stdout
 

Modified: subversion/trunk/subversion/tests/cmdline/merge_reintegrate_tests.py
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/merge_reintegrate_tests.py?rev=1467481&r1=1467480&r2=1467481&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/cmdline/merge_reintegrate_tests.py 
(original)
+++ subversion/trunk/subversion/tests/cmdline/merge_reintegrate_tests.py Fri 
Apr 12 21:43:20 2013
@@ -63,7 +63,7 @@ def run_reintegrate_expect_error(src_url
      unless stdout and stderr both match and the exit code is non-zero.
      Every line of stderr must match the regex EXPECTED_STDERR.
   """
-  expected_stderr += "|(.*apr_err.*)"  # In case of debug build
+  expected_stderr += "|" + svntest.main.stack_trace_regexp
 
   # The actions.run_and_verify_* methods are happy if one line of the error
   # matches the regex, but we want to check that every line matches.

Modified: subversion/trunk/subversion/tests/cmdline/merge_tests.py
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/merge_tests.py?rev=1467481&r1=1467480&r2=1467481&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/cmdline/merge_tests.py (original)
+++ subversion/trunk/subversion/tests/cmdline/merge_tests.py Fri Apr 12 
21:43:20 2013
@@ -16268,7 +16268,7 @@ def merge_with_os_deleted_subtrees(sbox)
   err_re = "svn: E195016: Merge tracking not allowed with missing subtrees; " 
+ \
            "try restoring these items first:"                        + \
            "|(\n)"                                                   + \
-           "|(.*apr_err.*\n)" # In case of debug build
+           "|" + svntest.main.stack_trace_regexp
 
   # Case 1: Infinite depth merge into infinite depth WC target.
   # Every missing subtree under the target should be reported as missing.

Modified: subversion/trunk/subversion/tests/cmdline/svntest/main.py
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/svntest/main.py?rev=1467481&r1=1467480&r2=1467481&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/cmdline/svntest/main.py (original)
+++ subversion/trunk/subversion/tests/cmdline/svntest/main.py Fri Apr 12 
21:43:20 2013
@@ -135,6 +135,8 @@ wc_passwd = 'rayjandom'
 # scenarios
 wc_author2 = 'jconstant' # use the same password as wc_author
 
+stack_trace_regexp = r'(?:.*subversion[\\//].*\.c:[0-9]*,$|.*apr_err=.*)'
+
 # Set C locale for command line programs
 os.environ['LC_ALL'] = 'C'
 


Reply via email to