Author: cmpilato
Date: Wed Jul  7 17:48:16 2010
New Revision: 961442

URL: http://svn.apache.org/viewvc?rev=961442&view=rev
Log:
Add a regression test for issue #3674.

* subversion/tests/cmdline/lock_tests.py
  (replace_and_propset_locked_path): New test.
  (test_list): Add reference to new test, XFail()d on the DAV layers.

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

Modified: subversion/trunk/subversion/tests/cmdline/lock_tests.py
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/lock_tests.py?rev=961442&r1=961441&r2=961442&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/cmdline/lock_tests.py (original)
+++ subversion/trunk/subversion/tests/cmdline/lock_tests.py Wed Jul  7 17:48:16 
2010
@@ -1472,6 +1472,7 @@ def lock_path_not_in_head(sbox):
   svntest.actions.run_and_verify_svn2(None, None, expected_lock_fail_err_re,
                                       0, 'lock', lambda_path)
 
+#----------------------------------------------------------------------
 def verify_path_escaping(sbox):
   "verify escaping of lock paths"
 
@@ -1509,6 +1510,33 @@ def verify_path_escaping(sbox):
   svntest.actions.run_and_verify_status(wc_dir, expected_status)
 
 
+#----------------------------------------------------------------------
+# Issue #3674: Replace + propset of locked file fails over DAV
+def replace_and_propset_locked_path(sbox):
+  "test replace + propset of locked file"
+
+  sbox.build()
+  wc_dir = sbox.wc_dir
+
+  mu_path = os.path.join(wc_dir, 'A', 'mu')
+
+  # Lock mu.
+  svntest.actions.run_and_verify_svn(None, None, [],
+                                     'lock', mu_path, '-m', 'Locked here')
+
+  # Now replace and propset on mu.
+  svntest.actions.run_and_verify_svn(None, None, [],
+                                     'rm', '--keep-local', mu_path)
+  svntest.actions.run_and_verify_svn(None, None, [],
+                                     'add', mu_path)
+  svntest.actions.run_and_verify_svn(None, None, [],
+                                     'propset', 'foo', 'bar', mu_path)
+
+  # Finally, commit mu.
+  svntest.actions.run_and_verify_svn(None, None, [],
+                                     'commit', '-m', 'Replace mu', mu_path)
+
+
 ########################################################################
 # Run the tests
 
@@ -1553,6 +1581,8 @@ test_list = [ None,
               lock_twice_in_one_wc,
               lock_path_not_in_head,
               verify_path_escaping,
+              XFail(replace_and_propset_locked_path,
+                    svntest.main.is_ra_type_dav),
             ]
 
 if __name__ == '__main__':


Reply via email to