You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by ph...@apache.org on 2010/10/19 17:47:03 UTC

svn commit: r1024287 - in /subversion/trunk/subversion: libsvn_wc/upgrade.c tests/cmdline/upgrade_tests.py tests/cmdline/upgrade_tests_data/dirs-only.tar.bz2

Author: philip
Date: Tue Oct 19 15:47:03 2010
New Revision: 1024287

URL: http://svn.apache.org/viewvc?rev=1024287&view=rev
Log:
Allow upgrade to wcng to work when there are no pristine files.

* subversion/libsvn_wc/upgrade.c
  (svn_wc_upgrade): Ensure pristine dir exists before moving it.

* subversion/tests/cmdline/upgrade_tests.py
  (dirs_only_upgrade): New test.
  (test_list): Add new test.

* subversion/tests/cmdline/upgrade_tests_data/dirs-only.tar.bz2: New.

Added:
    subversion/trunk/subversion/tests/cmdline/upgrade_tests_data/dirs-only.tar.bz2   (with props)
Modified:
    subversion/trunk/subversion/libsvn_wc/upgrade.c
    subversion/trunk/subversion/tests/cmdline/upgrade_tests.py

Modified: subversion/trunk/subversion/libsvn_wc/upgrade.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/upgrade.c?rev=1024287&r1=1024286&r2=1024287&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/upgrade.c (original)
+++ subversion/trunk/subversion/libsvn_wc/upgrade.c Tue Oct 19 15:47:03 2010
@@ -1707,6 +1707,7 @@ svn_wc_upgrade(svn_wc_context_t *wc_ctx,
                                     scratch_pool);
   pristine_to = svn_wc__adm_child(local_abspath, PRISTINE_STORAGE_RELPATH,
                                   scratch_pool);
+  SVN_ERR(svn_wc__ensure_directory(pristine_from, scratch_pool));
   SVN_ERR(svn_wc__wq_build_file_move(&work_item, db,
                                      pristine_from, pristine_to,
                                      scratch_pool, scratch_pool));

Modified: subversion/trunk/subversion/tests/cmdline/upgrade_tests.py
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/upgrade_tests.py?rev=1024287&r1=1024286&r2=1024287&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/cmdline/upgrade_tests.py (original)
+++ subversion/trunk/subversion/tests/cmdline/upgrade_tests.py Tue Oct 19 15:47:03 2010
@@ -654,6 +654,23 @@ def delete_and_keep_local(sbox):
     raise svntest.Failure('wc/Deleted should not exist')
 
 
+def dirs_only_upgrade(sbox):
+  "upgrade a wc without files" 
+
+  sbox.build(create_wc = False)
+  replace_sbox_with_tarfile(sbox, 'dirs-only.tar.bz2')
+
+  expected_output = ["Upgraded '%s'.\n" % (sbox.ospath('').rstrip('/')),
+                     "Upgraded '%s'.\n" % (sbox.ospath('A'))]
+
+  svntest.actions.run_and_verify_svn(None, expected_output, [],
+                                     'upgrade', sbox.wc_dir)
+
+  expected_status = svntest.wc.State(sbox.wc_dir, {
+      ''                  : Item(status='  ', wc_rev='1'),
+      'A'                 : Item(status='  ', wc_rev='1'),
+      })
+  run_and_verify_status_no_server(sbox.wc_dir, expected_status)
 
 ########################################################################
 # Run the tests
@@ -675,6 +692,7 @@ test_list = [ None,
               missing_dirs,
               missing_dirs2,
               XFail(delete_and_keep_local),
+              dirs_only_upgrade,
              ]
 
 

Added: subversion/trunk/subversion/tests/cmdline/upgrade_tests_data/dirs-only.tar.bz2
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/upgrade_tests_data/dirs-only.tar.bz2?rev=1024287&view=auto
==============================================================================
Binary file - no diff available.

Propchange: subversion/trunk/subversion/tests/cmdline/upgrade_tests_data/dirs-only.tar.bz2
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream