You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by ph...@apache.org on 2017/07/16 18:37:00 UTC

svn commit: r1802080 - /subversion/trunk/subversion/tests/cmdline/export_tests.py

Author: philip
Date: Sun Jul 16 18:37:00 2017
New Revision: 1802080

URL: http://svn.apache.org/viewvc?rev=1802080&view=rev
Log:
Add an XFAIL test.  Exporting a specific revision from a working copy
with root-relative externals currently results in an assertion failure.

* subversion/tests/cmdline/export_tests.py
  (export_revision_with_root_relative_external): Add new test.
  (test_list): Register the new test.

Patch by:  Doug Brown <doug{_AT_}schmorgal.com>

Modified:
    subversion/trunk/subversion/tests/cmdline/export_tests.py

Modified: subversion/trunk/subversion/tests/cmdline/export_tests.py
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/export_tests.py?rev=1802080&r1=1802079&r2=1802080&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/cmdline/export_tests.py (original)
+++ subversion/trunk/subversion/tests/cmdline/export_tests.py Sun Jul 16 18:37:00 2017
@@ -1070,6 +1070,38 @@ def export_file_externals2(sbox):
                                         expected_output,
                                         expected_disk)
 
+@XFail()
+def export_revision_with_root_relative_external(sbox):
+  "export a revision with root-relative external"
+  sbox.build()
+
+  wc_dir = sbox.wc_dir
+
+  # Set 'svn:externals' property in 'A/C' to 'A/B/E/alpha'(file external),
+  C_path = os.path.join(wc_dir, 'A', 'C')
+  externals_prop = "^/A/B/E/alpha exfile_alpha"
+
+  tmp_f = sbox.get_tempname('prop')
+  svntest.main.file_append(tmp_f, externals_prop)
+  svntest.main.run_svn(None, 'ps', '-F', tmp_f, 'svn:externals', C_path)
+  svntest.main.run_svn(None,'ci', '-m', 'log msg', '--quiet', C_path)
+
+  # Update the working copy to receive file external
+  svntest.main.run_svn(None, 'up', wc_dir)
+
+  # Export revision 2 from URL
+  export_target = sbox.add_wc_path('export_url')
+  svntest.actions.run_and_verify_svn(None, [],
+                                     'export', sbox.repo_url, export_target,
+                                     '-r', 2)
+
+  # Export revision 2 from WC
+  # Fails (canonicalize: Assertion `*src != '/'' failed)
+  export_target = sbox.add_wc_path('export_wc')
+  svntest.actions.run_and_verify_svn(None, [],
+                                     'export', sbox.wc_dir, export_target,
+                                     '-r', 2)
+
 
 ########################################################################
 # Run the tests
@@ -1107,6 +1139,7 @@ test_list = [ None,
               export_custom_keywords,
               export_file_external,
               export_file_externals2,
+              export_revision_with_root_relative_external,
              ]
 
 if __name__ == '__main__':