[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: nested_moves tests (r1496885) Re: Ev2 as a move-aware editor

From: Daniel Shahaf <danielsh_at_elego.de>
Date: Wed, 26 Jun 2013 15:45:19 +0300

Daniel Shahaf wrote on Wed, Jun 26, 2013 at 15:18:52 +0300:
> That patch isn't ready for commit; I am only at the point of
> constructing a State object that will make the test pass, but I haven't
> yet compared that State object to the actual moves the test does to
> determine whether the 'svn status' output is buggy or correct.
>
> I'm not really familiar with expected_status objects, so perhaps someone can
> have a look at constructing the State object here?

Bert spotted the error in the original patch: needed to specify entry_status=.

Can someone review the result? In particular, I'm not sure that the
'A/B' and 'A/B/C/Y/Z' StateItem's are correct.

Thanks

Daniel

Index: subversion/tests/cmdline/move_tests.py
===================================================================
--- subversion/tests/cmdline/move_tests.py (revision 1496890)
+++ subversion/tests/cmdline/move_tests.py (working copy)
@@ -1247,7 +1247,7 @@ def nested_replaces(sbox):
                        '-m', 'r1: create tree',
                        repo_url + '/A/B/C', repo_url + '/X/Y/Z')
   svntest.main.run_svn(None, 'checkout', '-q', repo_url, wc_dir)
- expected_status = svntest.wc.State(wc_dir, {
+ r1_status = svntest.wc.State(wc_dir, {
     '' : Item(status=' ', wc_rev='1'),
     'A' : Item(status=' ', wc_rev='1'),
     'A/B' : Item(status=' ', wc_rev='1'),
@@ -1256,7 +1256,7 @@ def nested_replaces(sbox):
     'X/Y' : Item(status=' ', wc_rev='1'),
     'X/Y/Z' : Item(status=' ', wc_rev='1'),
     })
- svntest.actions.run_and_verify_status(wc_dir, expected_status)
+ svntest.actions.run_and_verify_status(wc_dir, r1_status)
 
   ## r2: juggling
   moves = [
@@ -1271,7 +1271,20 @@ def nested_replaces(sbox):
   ]
   for src, dst in moves:
     svntest.main.run_svn(None, 'mv', ospath(src), ospath(dst))
- # svntest.actions.run_and_verify_status(wc_dir, expected_status)
+ r2_status = svntest.wc.State(wc_dir, {
+ '' : Item(status=' ', wc_rev='1'),
+ 'A' : Item(status='R ', copied='+', moved_from='X/Y/Z', moved_to='X/Y/Z', wc_rev='-'),
+ 'A/B' : Item(status='A ', copied='+', moved_from='X/Y/Z/B', wc_rev='-', entry_status='R '),
+ 'A/B/C' : Item(status='R ', copied='+', moved_from='X', moved_to='X', wc_rev='-'),
+ 'A/B/C/Y' : Item(status='D ', copied='+', wc_rev='-', moved_to='X/Y'),
+ 'A/B/C/Y/Z' : Item(status='D ', copied='+', wc_rev='-'),
+ 'X' : Item(status='R ', copied='+', moved_from='A/B/C', moved_to='A/B/C', wc_rev='-'),
+ 'X/Y' : Item(status='A ', copied='+', moved_from='A/B/C/Y', wc_rev='-', entry_status='R '),
+ 'X/Y/Z' : Item(status='R ', copied='+', moved_from='A', moved_to='A', wc_rev='-'),
+ 'X/Y/Z/B' : Item(status='D ', copied='+', wc_rev='-', moved_to='A/B'),
+ 'X/Y/Z/B/C' : Item(status='D ', copied='+', wc_rev='-'),
+ })
+ svntest.actions.run_and_verify_status(wc_dir, r2_status)
 
   svntest.main.run_svn(None, 'commit', '-m', 'r2: juggle the tree', wc_dir)
   expected_output = svntest.verify.UnorderedRegexListOutput(map(re.escape, [
@@ -1291,7 +1304,7 @@ def nested_replaces(sbox):
 
   ## Test updating to r1.
   svntest.main.run_svn(None, 'update', '-r1', wc_dir)
- svntest.actions.run_and_verify_status(wc_dir, expected_status)
+ svntest.actions.run_and_verify_status(wc_dir, r1_status)
 
 #######################################################################
 # Run the tests
Received on 2013-06-26 14:45:56 CEST

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.