Author: svn-role Date: Thu Mar 19 18:24:15 2015 New Revision: 1667841 URL: http://svn.apache.org/r1667841 Log: Merge r1664997 from trunk:
* r1664997 Fix test failures when running from a directory whose name contains characters which must be escaped when used in a URL. Justification: User reported problem when testing 1.9 beta. Votes: +1: rhuijben, brane, stefan2 Modified: subversion/branches/1.9.x/ (props changed) subversion/branches/1.9.x/STATUS subversion/branches/1.9.x/subversion/tests/cmdline/svnsync_authz_tests.py subversion/branches/1.9.x/subversion/tests/cmdline/svnsync_tests.py subversion/branches/1.9.x/subversion/tests/cmdline/svntest/main.py subversion/branches/1.9.x/subversion/tests/cmdline/svntest/sandbox.py Propchange: subversion/branches/1.9.x/ ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Thu Mar 19 18:24:15 2015 @@ -89,4 +89,4 @@ /subversion/branches/verify-at-commit:1462039-1462408 /subversion/branches/verify-keep-going:1439280-1546110 /subversion/branches/wc-collate-path:1402685-1480384 -/subversion/trunk:1660545-1660547,1660549-1662901,1663003,1663183-1663184,1663338,1663347,1663374,1663450,1663697,1663706,1663738,1663749,1663791,1664078,1664080,1664084-1664085,1664187,1664191,1664193,1664200,1664344,1664476,1664480-1664481,1664483,1664507,1664520-1664521,1664523,1664526-1664527,1664531-1664532,1664588,1664653,1664684,1664927,1665164,1665611-1665612,1665845,1665850,1665852,1665886,1666270,1666272,1666690,1666851 +/subversion/trunk:1660545-1660547,1660549-1662901,1663003,1663183-1663184,1663338,1663347,1663374,1663450,1663697,1663706,1663738,1663749,1663791,1664078,1664080,1664084-1664085,1664187,1664191,1664193,1664200,1664344,1664476,1664480-1664481,1664483,1664507,1664520-1664521,1664523,1664526-1664527,1664531-1664532,1664588,1664653,1664684,1664927,1664997,1665164,1665611-1665612,1665845,1665850,1665852,1665886,1666270,1666272,1666690,1666851 Modified: subversion/branches/1.9.x/STATUS URL: http://svn.apache.org/viewvc/subversion/branches/1.9.x/STATUS?rev=1667841&r1=1667840&r2=1667841&view=diff ============================================================================== --- subversion/branches/1.9.x/STATUS (original) +++ subversion/branches/1.9.x/STATUS Thu Mar 19 18:24:15 2015 @@ -178,14 +178,6 @@ Veto-blocked changes: Approved changes: ================= - * r1664997 - Fix test failures when running from a directory whose name contains - characters which must be escaped when used in a URL. - Justification: - User reported problem when testing 1.9 beta. - Votes: - +1: rhuijben, brane, stefan2 - * r1665195, r1666096, r1666379 Produce an easier to understand error when a server sends a HTTP 405 code Justification: Modified: subversion/branches/1.9.x/subversion/tests/cmdline/svnsync_authz_tests.py URL: http://svn.apache.org/viewvc/subversion/branches/1.9.x/subversion/tests/cmdline/svnsync_authz_tests.py?rev=1667841&r1=1667840&r2=1667841&view=diff ============================================================================== --- subversion/branches/1.9.x/subversion/tests/cmdline/svnsync_authz_tests.py (original) +++ subversion/branches/1.9.x/subversion/tests/cmdline/svnsync_authz_tests.py Thu Mar 19 18:24:15 2015 @@ -30,7 +30,7 @@ import sys, os # Test suite-specific modules -import locale, re, urllib +import locale, re # Our testing module import svntest @@ -471,8 +471,7 @@ def copy_delete_unreadable_child(sbox): src_authz + ':/A': '* =', }) - dest_url = svntest.main.file_scheme_prefix \ - + urllib.pathname2url(os.path.abspath(dest_sbox.repo_dir)) + dest_url = dest_sbox.file_protocol_url() run_init(dest_url, sbox.repo_url) run_sync(dest_url) Modified: subversion/branches/1.9.x/subversion/tests/cmdline/svnsync_tests.py URL: http://svn.apache.org/viewvc/subversion/branches/1.9.x/subversion/tests/cmdline/svnsync_tests.py?rev=1667841&r1=1667840&r2=1667841&view=diff ============================================================================== --- subversion/branches/1.9.x/subversion/tests/cmdline/svnsync_tests.py (original) +++ subversion/branches/1.9.x/subversion/tests/cmdline/svnsync_tests.py Thu Mar 19 18:24:15 2015 @@ -28,7 +28,7 @@ import sys, os # Test suite-specific modules -import re, urllib +import re # Our testing module import svntest @@ -131,16 +131,14 @@ def setup_and_sync(sbox, dump_file_conte repo_url = sbox.repo_url cwd = os.getcwd() if is_src_ra_local: - repo_url = svntest.main.file_scheme_prefix + \ - urllib.pathname2url(os.path.join(cwd, sbox.repo_dir)) + repo_url = sbox.file_protocol_url() if subdir: repo_url = repo_url + subdir dest_repo_url = dest_sbox.repo_url if is_dest_ra_local: - dest_repo_url = svntest.main.file_scheme_prefix + \ - urllib.pathname2url(os.path.join(cwd, dest_sbox.repo_dir)) + dest_repo_url = dest_sbox.file_protocol_url() run_init(dest_repo_url, repo_url, source_prop_encoding) run_sync(dest_repo_url, repo_url, Modified: subversion/branches/1.9.x/subversion/tests/cmdline/svntest/main.py URL: http://svn.apache.org/viewvc/subversion/branches/1.9.x/subversion/tests/cmdline/svntest/main.py?rev=1667841&r1=1667840&r2=1667841&view=diff ============================================================================== --- subversion/branches/1.9.x/subversion/tests/cmdline/svntest/main.py (original) +++ subversion/branches/1.9.x/subversion/tests/cmdline/svntest/main.py Thu Mar 19 18:24:15 2015 @@ -112,7 +112,7 @@ class SVNRepositoryCreateFailure(Failure # Windows specifics if sys.platform == 'win32': windows = True - file_scheme_prefix = 'file:' + file_scheme_prefix = 'file:///' _exe = '.exe' _bat = '.bat' os.environ['SVN_DBG_STACKTRACES_TO_STDERR'] = 'y' @@ -1987,7 +1987,9 @@ def _create_parser(): parser.set_defaults( server_minor_version=SVN_VER_MINOR, url=file_scheme_prefix + \ - urllib.pathname2url(os.path.abspath(os.getcwd())), + svntest.wc.svn_uri_quote( + os.path.abspath( + os.getcwd()).replace(os.path.sep, '/')), http_library=_default_http_library) return parser @@ -2236,7 +2238,9 @@ def execute_tests(test_list, serial_only # Calculate pristine_greek_repos_url from test_area_url. pristine_greek_repos_url = options.test_area_url + '/' + \ - urllib.pathname2url(pristine_greek_repos_dir) + svntest.wc.svn_uri_quote( + pristine_greek_repos_dir.replace( + os.path.sep, '/')) if options.use_jsvn: if options.svn_bin is None: Modified: subversion/branches/1.9.x/subversion/tests/cmdline/svntest/sandbox.py URL: http://svn.apache.org/viewvc/subversion/branches/1.9.x/subversion/tests/cmdline/svntest/sandbox.py?rev=1667841&r1=1667840&r2=1667841&view=diff ============================================================================== --- subversion/branches/1.9.x/subversion/tests/cmdline/svntest/sandbox.py (original) +++ subversion/branches/1.9.x/subversion/tests/cmdline/svntest/sandbox.py Thu Mar 19 18:24:15 2015 @@ -24,7 +24,6 @@ import os import shutil import copy -import urllib import logging import re @@ -114,7 +113,8 @@ class Sandbox: if empty or not read_only: # use a local repo self.repo_dir = os.path.join(svntest.main.general_repo_dir, self.name) self.repo_url = (svntest.main.options.test_area_url + '/' - + urllib.pathname2url(self.repo_dir)) + + svntest.wc.svn_uri_quote( + self.repo_dir.replace(os.path.sep, '/'))) self.add_test_path(self.repo_dir) else: self.repo_dir = svntest.main.pristine_greek_repos_dir @@ -195,7 +195,8 @@ class Sandbox: path = (os.path.join(svntest.main.general_repo_dir, self.name) + '.' + suffix) url = svntest.main.options.test_area_url + \ - '/' + urllib.pathname2url(path) + '/' + svntest.wc.svn_uri_quote( + path.replace(os.path.sep, '/')) self.add_test_path(path, remove) return path, url @@ -276,6 +277,12 @@ class Sandbox: temporary and 'TEMP' or 'PERM', parts[1]) + def file_protocol_url(self): + """get a file:// url pointing to the repository""" + return svntest.main.file_scheme_prefix + \ + svntest.wc.svn_uri_quote( + os.path.abspath(self.repo_dir).replace(os.path.sep, '/')) + def simple_update(self, target=None, revision='HEAD'): """Update the WC or TARGET. TARGET is a relpath relative to the WC."""