You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by da...@apache.org on 2011/05/17 12:01:01 UTC
svn commit: r1104092 -
/subversion/trunk/subversion/tests/cmdline/special_tests.py
Author: danielsh
Date: Tue May 17 10:01:01 2011
New Revision: 1104092
URL: http://svn.apache.org/viewvc?rev=1104092&view=rev
Log:
Add an XFail test for issue #3884.
* subversion/tests/cmdline/special_tests.py
(merge_foreign_symlink): New, XFail.
(test_list): Run it.
Modified:
subversion/trunk/subversion/tests/cmdline/special_tests.py
Modified: subversion/trunk/subversion/tests/cmdline/special_tests.py
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/special_tests.py?rev=1104092&r1=1104091&r2=1104092&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/cmdline/special_tests.py (original)
+++ subversion/trunk/subversion/tests/cmdline/special_tests.py Tue May 17 10:01:01 2011
@@ -744,6 +744,53 @@ def symlink_destination_change(sbox):
svntest.actions.run_and_verify_status(wc_dir, expected_status)
# Now replace the symlink with a normal file and try to commit, we
+
+#----------------------------------------------------------------------
+# This used to lose the special status in the target working copy
+# (disk and metadata).
+@Issue(3884)
+@SkipUnless(svntest.main.is_posix_os)
+@XFail()
+def merge_foreign_symlink(sbox):
+ "merge symlink-add from foreign repos"
+
+ sbox.build()
+ wc_dir = sbox.wc_dir
+
+ # Make a copy of this repository and associated working copy. Both
+ # should have nothing but a Greek tree in them, and the two
+ # repository UUIDs should differ.
+ sbox2 = sbox.clone_dependent(True)
+ sbox2.build()
+ wc_dir2 = sbox2.wc_dir
+
+ # convenience variables
+ zeta_path = sbox.ospath('A/zeta')
+ zeta2_path = sbox2.ospath('A/zeta')
+
+ # sbox2 r2: create zeta2 in sbox2
+ os.symlink('target', zeta2_path)
+ sbox2.simple_add('A/zeta')
+ sbox2.simple_commit('A/zeta')
+
+
+ # sbox1: merge that
+ svntest.main.run_svn(None, 'merge', '-c', '2', sbox2.repo_url,
+ sbox.ospath(''))
+
+ # Verify special status.
+ expected_disk = svntest.main.greek_state.copy()
+ expected_disk.add({
+ 'A/zeta': Item(props={ 'svn:special': '*' })
+ })
+ svntest.actions.verify_disk(sbox.ospath(''), expected_disk, True)
+
+ # TODO: verify status:
+ # expected_status = svntest.actions.get_virginal_state(wc_dir, 2)
+ # expected_status.add({
+ # 'A/zeta' : Item(status='A ', wc_rev='-', props={'svn:special': '*'}),
+ # })
+
########################################################################
# Run the tests
@@ -767,6 +814,7 @@ test_list = [ None,
propvalue_normalized,
unrelated_changed_special_status,
symlink_destination_change,
+ merge_foreign_symlink,
]
if __name__ == '__main__':