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

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

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

I've gone ahead and added Python tests for the below scenarios: Philip's
scenario in move_tests.py and mine in svnmucc_tests.py.

I have an odd problem with Philip's scenario (move_tests.py
nested_replaces): if I set expected_status['A/B'] to an Item(status='A '),
I get an error stating the actual tree has a 'R ' node; and when
I change the expectation to 'R ', I get an error stating the actual tree
has 'A '.

The patch and the two error outputs are attached. (I note that one of
them says "in status tree" and one "in entries tree".)

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?


Daniel Shahaf wrote on Tue, Jun 25, 2013 at 21:53:07 +0000:
> On Tue, Jun 25, 2013 at 12:42:55PM +0100, Philip Martin wrote:
> > R /A (from /X/Y/Z:1)
> > A /A/B (from /A/B:1)
> > R /A/B/C (from /X:1)
> > D /A/B/C/Y
> > R /X (from /A/B/C:1)
> > A /X/Y (from /X/Y:1)
> > R /X/Y/Z (from /A:1)
> > D /X/Y/Z/B
> >
> What if we had three trees?
> % svnmucc -mm -U $URL \
> rm A rm M rm X \
> cp HEAD X/Y/Z A cp HEAD A/B/C M cp HEAD M/N/O X \
> cp HEAD A/B A/B cp HEAD M/N M/N cp HEAD X/Y X/Y \
> rm A/B/C rm M/N/O rm X/Y/Z \
> cp HEAD X A/B/C cp HEAD A M/N/O cp HEAD M X/Y/Z \
> ;
> r2 committed by danielsh at 2013-06-25T21:51:29.046012Z
> % svn log qv -r2 $URL
> ------------------------------------------------------------------------
> r2 | danielsh | 2013-06-25 21:51:29 +0000 (Tue, 25 Jun 2013)
> Changed paths:
> R /A (from /X/Y/Z:1)
> A /A/B (from /A/B:1)
> R /A/B/C (from /X:1)
> R /M (from /A/B/C:1)
> A /M/N (from /M/N:1)
> R /M/N/O (from /A:1)
> R /X (from /M/N/O:1)
> A /X/Y (from /X/Y:1)
> R /X/Y/Z (from /M:1)
> ------------------------------------------------------------------------
> How would such a thing be represented?
> > How would Ev2 describe that? Perhaps

Received on 2013-06-26 14:19:30 CEST

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