> -----Original Message----- > From: phi...@apache.org [mailto:phi...@apache.org] > Sent: vrijdag 15 februari 2013 13:09 > To: comm...@subversion.apache.org > Subject: svn commit: r1446548 - > /subversion/trunk/subversion/tests/cmdline/update_tests.py > > Author: philip > Date: Fri Feb 15 12:08:54 2013 > New Revision: 1446548 > > URL: http://svn.apache.org/r1446548 > Log: > This test was updating 'A/E' but that path never exists, I think the > path should be 'A/B/E' based on the rest of the test. The test is > still XFAIL as for some reason the update reports two conflicts on > 'A', otherwise the test would PASS. > > * subversion/tests/cmdline/update_tests.py > (update_moved_away): Change the update target, tweak expectations. > > Modified: > subversion/trunk/subversion/tests/cmdline/update_tests.py > > Modified: subversion/trunk/subversion/tests/cmdline/update_tests.py > URL: > http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/ > update_tests.py?rev=1446548&r1=1446547&r2=1446548&view=diff > ========================================================== > ==================== > --- subversion/trunk/subversion/tests/cmdline/update_tests.py (original) > +++ subversion/trunk/subversion/tests/cmdline/update_tests.py Fri Feb 15 > 12:08:54 2013 > @@ -6589,7 +6589,7 @@ def windows_update_backslash(sbox): > > @XFail() > def update_moved_away(sbox): > - "switch a moved away directory" > + "update subtree of moved away" > > sbox.build() > wc_dir = sbox.wc_dir > @@ -6599,17 +6599,21 @@ def update_moved_away(sbox): > > sbox.simple_move('A', 'A_moved') > > + # Adding prev_status=' ' and prev_treeconflict='C' to A will make > + # the test PASS but why are we getting two conflicts? > expected_output = svntest.wc.State(wc_dir, { > + 'A' : Item(status=' ', treeconflict='C'), > })
Thanks for tweaking... Yes, this looks strange. We had one conflict before your work (standard shadowed update). Is the other one caused by the revision bump? > > expected_disk = None > - expected_status = expected_output = svntest.wc.State(wc_dir, { > + expected_status = svntest.wc.State(wc_dir, { > '' : Item(status=' ', wc_rev='1'), > - 'A' : Item(status='D ', wc_rev='1', moved_to='A_moved'), > + 'A' : Item(status='D ', wc_rev='1', moved_to='A_moved', > + treeconflict='C'), > 'A/B' : Item(status='D ', wc_rev='1'), > - 'A/B/E' : Item(status='D ', wc_rev='1'), > - 'A/B/E/beta' : Item(status='D ', wc_rev='1'), > - 'A/B/E/alpha' : Item(status='D ', wc_rev='1'), > + 'A/B/E' : Item(status='D ', wc_rev='2'), > + 'A/B/E/beta' : Item(status='D ', wc_rev='2'), > + 'A/B/E/alpha' : Item(status='D ', wc_rev='2'), > 'A/B/F' : Item(status='D ', wc_rev='1'), > 'A/B/lambda' : Item(status='D ', wc_rev='1'), > 'A/D' : Item(status='D ', wc_rev='1'), > @@ -6624,7 +6628,8 @@ def update_moved_away(sbox): > 'A/D/gamma' : Item(status='D ', wc_rev='1'), > 'A/C' : Item(status='D ', wc_rev='1'), > 'A/mu' : Item(status='D ', wc_rev='1'), > - 'A_moved' : Item(status='A ', copied='+', moved_from='A'), > + 'A_moved' : Item(status='A ', copied='+', wc_rev='-', > + moved_from='A'), > 'A_moved/D' : Item(status=' ', copied='+', wc_rev='-'), > 'A_moved/D/G' : Item(status=' ', copied='+', wc_rev='-'), > 'A_moved/D/G/rho' : Item(status=' ', copied='+', wc_rev='-'), > @@ -6636,7 +6641,7 @@ def update_moved_away(sbox): > 'A_moved/D/H/chi' : Item(status=' ', copied='+', wc_rev='-'), > 'A_moved/D/gamma' : Item(status=' ', copied='+', wc_rev='-'), > 'A_moved/B' : Item(status=' ', copied='+', wc_rev='-'), > - 'A_moved/B/E' : Item(status='A ', copied='+', wc_rev='-'), > + 'A_moved/B/E' : Item(status=' ', copied='+', wc_rev='-'), I added this one, to make sure we don't just accidentally upgrade the original revision of the descendants only, without adding an additional op-root. I think this part should be covered in an additional test that tries to resolve the tree conflict. > 'A_moved/B/E/beta' : Item(status=' ', copied='+', wc_rev='-'), > 'A_moved/B/E/alpha' : Item(status=' ', copied='+', wc_rev='-'), > 'A_moved/B/lambda' : Item(status=' ', copied='+', wc_rev='-'), > @@ -6647,11 +6652,9 @@ def update_moved_away(sbox): > 'new' : Item(status=' ', wc_rev='2'), > }) > > - # This update currently breaks the moved status away from the > - # original location. > - > - # Either this update should fail (error/skip), or the moved from > - # information should stay in sync. (A/E should be its own op-depth) > + # This update raises a tree-conflict on A. The conflict cannot be > + # resolved to update the move destination because the move source is > + # mixed rev. Is it easy to test that resolving fails? Run 'svn resolve --accept something' and verify the error? (Away from my pc... spending time with my sons) Bert