Author: pburba
Date: Tue Dec  8 19:27:13 2009
New Revision: 888533

URL: http://svn.apache.org/viewvc?rev=888533&view=rev
Log:
Expand existing depth test to cover issue #3544 'svn update does not
restore excluded files'.

* subversion/tests/cmdline/depth_tests.py
  
  (excluded_path_update_operation): Expand test to cover issue #3544

  (test_list): Mark excluded_path_update_operation as XFail.


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

Modified: subversion/trunk/subversion/tests/cmdline/depth_tests.py
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/depth_tests.py?rev=888533&r1=888532&r2=888533&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/cmdline/depth_tests.py (original)
+++ subversion/trunk/subversion/tests/cmdline/depth_tests.py Tue Dec  8 
19:27:13 2009
@@ -2056,6 +2056,7 @@
   B_path = os.path.join(A_path, 'B')
   L_path = os.path.join(A_path, 'L')
   E_path = os.path.join(B_path, 'E')
+  iota_path = os.path.join(wc_dir, 'iota')
 
   # Simply exclude a subtree
   expected_output = svntest.wc.State(wc_dir, {
@@ -2131,6 +2132,38 @@
                                         None, None, None, None,
                                         B_path)
 
+  # Test issue #
+  # Exclude a file then set depth of WC to infinity, the file should return.
+  expected_output = svntest.wc.State(wc_dir, {
+    'iota' : Item(status='D '),
+    })
+  expected_status.remove('iota');
+  expected_disk.remove('iota');
+  svntest.actions.run_and_verify_update(wc_dir,
+                                        expected_output,
+                                        expected_disk,
+                                        expected_status,
+                                        None, None,
+                                        None, None, None, None,
+                                        '--set-depth', 'exclude', iota_path)
+
+  # Update the whole WC to depth=infinity.
+  expected_output = svntest.wc.State(wc_dir, {
+    'iota' : Item(status='A '),
+    })
+  expected_status = svntest.actions.get_virginal_state(wc_dir, 1)
+  expected_disk = svntest.main.greek_state.copy()
+  # This update currently fails when iota is reported as added, but shows in
+  # status as unversioned.  See issue #3544 'svn update does not restore
+  # excluded files'.  This test is marked as XFail until that issue is fixed.
+  svntest.actions.run_and_verify_update(wc_dir,
+                                        expected_output,
+                                        expected_disk,
+                                        expected_status,
+                                        None, None,
+                                        None, None, None, None,
+                                        '--set-depth', 'infinity', wc_dir)
+
 def excluded_path_misc_operation(sbox):
   """make sure other subcommands handle exclude"""
 
@@ -2504,7 +2537,7 @@
               pull_in_tree_with_depth_option,
               fold_tree_with_unversioned_modified_items,
               depth_empty_update_on_file,
-              excluded_path_update_operation,
+              XFail(excluded_path_update_operation),
               excluded_path_misc_operation,
               excluded_receive_remote_removal,
               exclude_keeps_hidden_entries,


Reply via email to