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

Re: APR hash order ruby test failure

From: Hyrum K Wright <hyrum.wright_at_wandisco.com>
Date: Wed, 28 Mar 2012 07:24:32 -0500

On Wed, Mar 28, 2012 at 4:30 AM, Philip Martin
<philip.martin_at_wandisco.com> wrote:
> Philip Martin <philip.martin_at_wandisco.com> writes:
>
>> There is another failure in the ruby testsuite:
>>
>> http://ci.apache.org/builders/svn-x64-ubuntu-gcc/builds/4626
>>
>>   1) Failure:
>> test_changelists_get_with_block(SvnClientTest)
>> /var/lib/buildbot/svn-buildslave/svn-x64-ubuntu/build/subversion/bindings/swig/ruby/test/test_client.rb:2296:in `assert_changelists'
>> /var/lib/buildbot/svn-buildslave/svn-x64-ubuntu/build/subversion/bindings/swig/ruby/test/util.rb:204:in `make_context'
>> /var/lib/buildbot/svn-buildslave/svn-x64-ubuntu/build/subversion/bindings/swig/ruby/test/test_client.rb:2288:in `assert_changelists'
>> /var/lib/buildbot/svn-buildslave/svn-x64-ubuntu/build/subversion/bindings/swig/ruby/test/test_client.rb:2349:in `test_changelists_get_with_block':
>> <{nil=>
>>   ["/tmp/d20120322-8616-qtl2ah/wc",
>>    "/tmp/d20120322-8616-qtl2ah/wc/hello1.txt",
>>    "/tmp/d20120322-8616-qtl2ah/wc/hello2.txt"]}> expected but was
>> <{nil=>
>>   ["/tmp/d20120322-8616-qtl2ah/wc",
>>    "/tmp/d20120322-8616-qtl2ah/wc/hello2.txt",
>>    "/tmp/d20120322-8616-qtl2ah/wc/hello1.txt"]}>.
>
> Another failure that looks like a similar problem in a different place:
>
>  1) Failure:
> test_diff_callbacks_for_backward_compatibility(SvnWcTest)
> /var/lib/buildbot/svn-buildslave/svn-x64-ubuntu/build/subversion/bindings/swig/ruby/test/test_wc.rb:756:in `assert_diff_callbacks'
> /var/lib/buildbot/svn-buildslave/svn-x64-ubuntu/build/subversion/bindings/swig/ruby/svn/wc.rb:136:in `_open'
> /var/lib/buildbot/svn-buildslave/svn-x64-ubuntu/build/subversion/bindings/swig/ruby/svn/wc.rb:114:in `open'
> /var/lib/buildbot/svn-buildslave/svn-x64-ubuntu/build/subversion/bindings/swig/ruby/test/test_wc.rb:711:in `assert_diff_callbacks'
> /var/lib/buildbot/svn-buildslave/svn-x64-ubuntu/build/subversion/bindings/swig/ruby/svn/ra.rb:52:in `open'
> /var/lib/buildbot/svn-buildslave/svn-x64-ubuntu/build/subversion/bindings/swig/ruby/test/test_wc.rb:699:in `assert_diff_callbacks'
> /var/lib/buildbot/svn-buildslave/svn-x64-ubuntu/build/subversion/bindings/swig/ruby/test/util.rb:204:in `make_context'
> /var/lib/buildbot/svn-buildslave/svn-x64-ubuntu/build/subversion/bindings/swig/ruby/test/test_wc.rb:696:in `assert_diff_callbacks'
> /var/lib/buildbot/svn-buildslave/svn-x64-ubuntu/build/subversion/bindings/swig/ruby/test/test_wc.rb:764:in `test_diff_callbacks_for_backward_compatibility':
> <[[:dir_props_changed,
>  "/tmp/d20120327-16259-17t4nz8/wc",
>  [#<Svn::Core::Prop:0x2ac09bd95450
>    @name="svn:entry:committed-date",
>    @value=nil>,
>   #<Svn::Core::Prop:0x2ac09bd95428
>    @name="svn:entry:committed-rev",
>    @value=nil>,
>   #<Svn::Core::Prop:0x2ac09bd95400 @name="svn:entry:last-author", @value=nil>,
>   #<Svn::Core::Prop:0x2ac09bd95360 @name="svn:entry:uuid", @value=nil>]],
>  [:file_changed,
>  "/tmp/d20120327-16259-17t4nz8/wc/dir/hello.txt",
>  [#<Svn::Core::Prop:0x2ac09bd952e8 @name="my-prop", @value="value">]],
>  [:file_added, "/tmp/d20120327-16259-17t4nz8/wc/dir/hello2.txt", []]]> expected but was
> <[[:dir_props_changed,
>  "/tmp/d20120327-16259-17t4nz8/wc",
>  [#<Svn::Core::Prop:0x2ac09bd95ea0
>    @name="svn:entry:committed-date",
>    @value=nil>,
>   #<Svn::Core::Prop:0x2ac09bd95e50
>    @name="svn:entry:committed-rev",
>    @value=nil>,
>   #<Svn::Core::Prop:0x2ac09bd95f18 @name="svn:entry:last-author", @value=nil>,
>   #<Svn::Core::Prop:0x2ac09bd95dd8 @name="svn:entry:uuid", @value=nil>]],
>  [:file_added, "/tmp/d20120327-16259-17t4nz8/wc/dir/hello2.txt", []],
>  [:file_changed,
>  "/tmp/d20120327-16259-17t4nz8/wc/dir/hello.txt",
>  [#<Svn::Core::Prop:0x2ac09bd95860 @name="my-prop", @value="value">]]]>.
>
> We fix these by converting the arrays to sets so that the order is
> irrelevant.  The open question is whether we do this solely within the
> testsuite, changing both sides of the comparison, or whether we change
> the bindings to return a set and adjust the testsuite to match.

I think that depends on the compatibility guarantees of the bindings.
Making them a set feels more correct from a semantic perspective, but
I don't know if it will break existing consumers.

-Hyrum

-- 
uberSVN: Apache Subversion Made Easy
http://www.uberSVN.com/
Received on 2012-03-28 14:25:04 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.