You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Daniel Rall <dl...@collab.net> on 2006/11/30 00:51:35 UTC

'diff_tests.py 29 31' test failures over ra_serf

'diff_tests.py 29 31' are both failing for me over ra_serf because the
paths don't have their output listed in the expected order.  Here's an
example from the test 29 failure, with "iota" listed before "A" (both
paths are at the root of the Greek tree):

--- snip ---
EXPECTED STDOUT:

Property changes on: A
___________________________________________________________________
Name: dirprop
   + r2value


Property changes on: iota
___________________________________________________________________
Name: fileprop
   + r2value

ACTUAL STDOUT:

Property changes on: iota
___________________________________________________________________
Name: fileprop
   + r2value


Property changes on: A
___________________________________________________________________
Name: dirprop
   + r2value

EXCEPTION: SVNLineUnequal
FAIL:  diff_tests.py 29: diff to BASE with local property mods
--- snip ---

Re: 'diff_tests.py 29 31' test failures over ra_serf

Posted by Justin Erenkrantz <ju...@erenkrantz.com>.
On Thu, Nov 30, 2006 at 03:18:12PM -0800, Daniel Rall wrote:
> > svntest.main.compare_unordered_output() may be helpful here.
> >  
> > > Unfortunately my Python-fu isn't strong enough - can anyone help?
> 
> Once I fixed compare_unordered_output() to avoid clobbering its
> parameters, it worked like charm to fix diff_tests.py over ra_serf
> (r22525).

Sweet!  Thanks.  -- justin

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: 'diff_tests.py 29 31' test failures over ra_serf

Posted by Daniel Rall <dl...@collab.net>.
On Tue, 05 Dec 2006, Malcolm Rowe wrote:

> On Thu, Nov 30, 2006 at 03:18:12PM -0800, Daniel Rall wrote:
> > > > Yes, I agree.  I think I originally wrote those tests as well, and
> > > > ideally we'd be checking that the result consists of a set of 'hunks'
> > > >  - in this case, the hunks are the complete file and property diffs from
> > > > each file - in any order.
> > > 
> > > svntest.main.compare_unordered_output() may be helpful here.
> > >  
> > 
> > Once I fixed compare_unordered_output() to avoid clobbering its
> > parameters, it worked like charm to fix diff_tests.py over ra_serf
> > (r22525).
> > 
> 
> Excellent, thanks, Dan!
> 
> So I assume that means that the expected output is now
> compared in a completely order-independent fashion?

Yup!  Paul Burba introduced the compare_unordered_output() routine in
r21696 for a similar problem I'd reported in the past.

> I was originally thinking of doing something like that - though I didn't
> realise we already had a function to do it - but I wasn't sure that that
> might not invalidate some of the things we were trying to test.  Looking
> at the tests again, I guess it looks fairly unlikely to be a problem.

Yes, I think it should be fine for this case.

- Dan

Re: 'diff_tests.py 29 31' test failures over ra_serf

Posted by Malcolm Rowe <ma...@farside.org.uk>.
On Thu, Nov 30, 2006 at 03:18:12PM -0800, Daniel Rall wrote:
> > > Yes, I agree.  I think I originally wrote those tests as well, and
> > > ideally we'd be checking that the result consists of a set of 'hunks'
> > >  - in this case, the hunks are the complete file and property diffs from
> > > each file - in any order.
> > 
> > svntest.main.compare_unordered_output() may be helpful here.
> >  
> 
> Once I fixed compare_unordered_output() to avoid clobbering its
> parameters, it worked like charm to fix diff_tests.py over ra_serf
> (r22525).
> 

Excellent, thanks, Dan!

So I assume that means that the expected output is now
compared in a completely order-independent fashion?

I was originally thinking of doing something like that - though I didn't
realise we already had a function to do it - but I wasn't sure that that
might not invalidate some of the things we were trying to test.  Looking
at the tests again, I guess it looks fairly unlikely to be a problem.

Regards,
Malcolm

Re: 'diff_tests.py 29 31' test failures over ra_serf

Posted by Daniel Rall <dl...@collab.net>.
On Thu, 30 Nov 2006, Daniel Rall wrote:

> On Thu, 30 Nov 2006, Malcolm Rowe wrote:
> 
> > On Wed, Nov 29, 2006 at 11:11:53PM -0800, Justin Erenkrantz wrote:
> > > >'diff_tests.py 29 31' are both failing for me over ra_serf because the
> > > >paths don't have their output listed in the expected order.  Here's an
> > > >example from the test 29 failure, with "iota" listed before "A" (both
> > > >paths are at the root of the Greek tree):
> > > 
> > > Right.  This is mentioned in subversion/libsvn_ra_serf/README.  The
> > > issue is that there's no guarantee in the API that the order is
> > > deterministic.  I personally view this as a test suite shortcoming -
> > > not a failure in ra_serf.  -- justin
> > > 
> > 
> > Yes, I agree.  I think I originally wrote those tests as well, and
> > ideally we'd be checking that the result consists of a set of 'hunks'
> >  - in this case, the hunks are the complete file and property diffs from
> > each file - in any order.
> 
> svntest.main.compare_unordered_output() may be helpful here.
>  
> > Unfortunately my Python-fu isn't strong enough - can anyone help?

Once I fixed compare_unordered_output() to avoid clobbering its
parameters, it worked like charm to fix diff_tests.py over ra_serf
(r22525).

- Dan

Re: 'diff_tests.py 29 31' test failures over ra_serf

Posted by Daniel Rall <dl...@collab.net>.
On Thu, 30 Nov 2006, Malcolm Rowe wrote:

> On Wed, Nov 29, 2006 at 11:11:53PM -0800, Justin Erenkrantz wrote:
> > >'diff_tests.py 29 31' are both failing for me over ra_serf because the
> > >paths don't have their output listed in the expected order.  Here's an
> > >example from the test 29 failure, with "iota" listed before "A" (both
> > >paths are at the root of the Greek tree):
> > 
> > Right.  This is mentioned in subversion/libsvn_ra_serf/README.  The
> > issue is that there's no guarantee in the API that the order is
> > deterministic.  I personally view this as a test suite shortcoming -
> > not a failure in ra_serf.  -- justin
> > 
> 
> Yes, I agree.  I think I originally wrote those tests as well, and
> ideally we'd be checking that the result consists of a set of 'hunks'
>  - in this case, the hunks are the complete file and property diffs from
> each file - in any order.

svntest.main.compare_unordered_output() may be helpful here.
 
> Unfortunately my Python-fu isn't strong enough - can anyone help?


Re: 'diff_tests.py 29 31' test failures over ra_serf

Posted by Malcolm Rowe <ma...@farside.org.uk>.
On Wed, Nov 29, 2006 at 11:11:53PM -0800, Justin Erenkrantz wrote:
> >'diff_tests.py 29 31' are both failing for me over ra_serf because the
> >paths don't have their output listed in the expected order.  Here's an
> >example from the test 29 failure, with "iota" listed before "A" (both
> >paths are at the root of the Greek tree):
> 
> Right.  This is mentioned in subversion/libsvn_ra_serf/README.  The
> issue is that there's no guarantee in the API that the order is
> deterministic.  I personally view this as a test suite shortcoming -
> not a failure in ra_serf.  -- justin
> 

Yes, I agree.  I think I originally wrote those tests as well, and
ideally we'd be checking that the result consists of a set of 'hunks'
 - in this case, the hunks are the complete file and property diffs from
each file - in any order.

Unfortunately my Python-fu isn't strong enough - can anyone help?

Regards,
Malcolm

Re: 'diff_tests.py 29 31' test failures over ra_serf

Posted by Justin Erenkrantz <ju...@erenkrantz.com>.
On 11/29/06, Daniel Rall <dl...@collab.net> wrote:
> 'diff_tests.py 29 31' are both failing for me over ra_serf because the
> paths don't have their output listed in the expected order.  Here's an
> example from the test 29 failure, with "iota" listed before "A" (both
> paths are at the root of the Greek tree):

Right.  This is mentioned in subversion/libsvn_ra_serf/README.  The
issue is that there's no guarantee in the API that the order is
deterministic.  I personally view this as a test suite shortcoming -
not a failure in ra_serf.  -- justin

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org