Can someone test this on Windows please? The test should XFAIL against 1.7/trunk and XPASS against 1.6.
As an aside, the repeated self.ospath() calls can't be terribly efficient --- they will call os.path.join() repeatedly --- but, insofar as that is a problem, I reckon the Sandbox class's API could be improved orthogonally to this patch? [[[ Index: subversion/tests/cmdline/svntest/sandbox.py =================================================================== --- subversion/tests/cmdline/svntest/sandbox.py (revision 1244298) +++ subversion/tests/cmdline/svntest/sandbox.py (working copy) @@ -236,6 +236,17 @@ class Sandbox: targets = self.ospaths(targets) svntest.main.run_svn(False, 'add', *targets) + def simple_add_symlink(self, dest, pointer): + """POINTER is a relpath relative to the WC.""" + if hasattr(os, 'symlink'): + os.symlink(self.ospath(dest), self.ospath(pointer)) + self.simple_add(pointer) + else: + # Windows, or other !is_posix_os() + open(self.ospath(pointer), 'wb').write('link %s' % target) + self.simple_add(pointer) + self.simple_propset('svn:special', 'yes', pointer) + def simple_revert(self, *targets): """TARGET is a relpath relative to the WC.""" assert len(targets) > 0 Index: subversion/tests/cmdline/merge_reintegrate_tests.py =================================================================== --- subversion/tests/cmdline/merge_reintegrate_tests.py (revision 1244303) +++ subversion/tests/cmdline/merge_reintegrate_tests.py (working copy) @@ -2543,7 +2543,6 @@ def reintegrate_replaced_source(sbox): '--reintegrate', A_path) #---------------------------------------------------------------------- -@SkipUnless(svntest.main.is_posix_os) @XFail() @Issue(4052) def reintegrate_symlink_deletion(sbox): @@ -2562,8 +2561,7 @@ def reintegrate_symlink_deletion(sbox): A_COPY_url = sbox.repo_url + "/A_COPY" ## add symlink - os.symlink(mu_path, A_omicron_path) - sbox.simple_add('A/omicron') + sbox.simple_add_symlink('A/mu', 'A/omicron') sbox.simple_commit(message='add symlink') ## branch ]]]