You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by Lev Assinovsky <le...@peterlink.ru> on 2002/03/13 10:45:43 UTC

[collections] One test failed

Hi Michael!
May be  it's interesting for you?
I made cvs update (for collections) and
run ant (jdk 1.4).
Here are the results:

test:
     [java] .........................................
     [java] .........................................
     [java] .........................................
     [java] .........................................
     [java] .........................................
     [java] .........................................
     [java] .........................................
     [java] .........................................
     [java] .........................................
     [java] .........................................
     [java] .........................................
     [java] .........................................
     [java] .........................................
     [java] .............F........F....................
     [java] .........................................
     [java] .........................................
     [java] .........................................
     [java] .........................................
     [java] ...........
     [java] Time: 13.029
     [java] There were 2 failures:
     [java] 1)
testIterator(org.apache.commons.collections.TestHashBag)junit.framework.AssertionFailedError:

First should be 'A' expected:<A> but was:<B>
     [java]     at
org.apache.commons.collections.TestBag.testIterator(Unknown Source)
     [java]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
     [java]     at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:42)

     [java]     at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:28)

     [java] 2)
testIteratorFail(org.apache.commons.collections.TestHashBag)junit.framework.AssertionFailedErr

or: First should be 'A' expected:<A> but was:<B>
     [java]     at
org.apache.commons.collections.TestBag.testIteratorFail(Unknown Source)
     [java]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
Method)
     [java]     at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:42)

     [java]     at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:28)

     [java]
     [java] FAILURES!!!
     [java] Tests run: 749,  Failures: 2,  Errors: 0
     [java]


Regards,

--
Lev Assinovsky                Peterlink Web
Programmer                    St. Petersburg, Russia
Tel/Fax: +7 812 3275343       197022 ul.Chapigina 7а
E-mail: lev@peterlink.ru




--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: [collections] One test failed

Posted by "Michael A. Smith" <ma...@apache.org>.
On Wed, 13 Mar 2002, Lev Assinovsky wrote:
> Hi Michael!
> May be  it's interesting for you?
> I made cvs update (for collections) and
> run ant (jdk 1.4).

Yup.  I mentioned this yesterday afternoon, just didn't have a chance last 
night to get to them.  

"I've seen this as well, and is actually a bad test.  The test is
iterating over the results and expecting a certain order, however "hash"
based collections usually do not guaruntee a particular ordering.  In this
case, the hashing behavior between JDK 1.3 and JDK 1.4 is different so the
iterator is returning the elements in a different order (thus the test
fails)."

In other words, the test is assuming that the Bag.iterator() method
returns the elements in some particular order.  For the HashBag, this
ordering is based on a hashtable, which does not guaruntee any particular
order.  The hashing behavior changed between jdk 1.3 and 1.4, so the order
changed for 1.4 (and broke the test under 1.4). 

The Bag interface does not specify that iterator() should return its
elements in any particular order.  Since the test assumes an order, this
is is a bug in the test, not in the code itself.

regards,
michael

> Here are the results:
> 
> test:
>      [java] .........................................
>      [java] .........................................
>      [java] .........................................
>      [java] .........................................
>      [java] .........................................
>      [java] .........................................
>      [java] .........................................
>      [java] .........................................
>      [java] .........................................
>      [java] .........................................
>      [java] .........................................
>      [java] .........................................
>      [java] .........................................
>      [java] .............F........F....................
>      [java] .........................................
>      [java] .........................................
>      [java] .........................................
>      [java] .........................................
>      [java] ...........
>      [java] Time: 13.029
>      [java] There were 2 failures:
>      [java] 1)
> testIterator(org.apache.commons.collections.TestHashBag)junit.framework.AssertionFailedError:
> 
> First should be 'A' expected:<A> but was:<B>
>      [java]     at
> org.apache.commons.collections.TestBag.testIterator(Unknown Source)
>      [java]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
>      [java]     at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:42)
> 
>      [java]     at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:28)
> 
>      [java] 2)
> testIteratorFail(org.apache.commons.collections.TestHashBag)junit.framework.AssertionFailedErr
> 
> or: First should be 'A' expected:<A> but was:<B>
>      [java]     at
> org.apache.commons.collections.TestBag.testIteratorFail(Unknown Source)
>      [java]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
>      [java]     at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:42)
> 
>      [java]     at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:28)
> 
>      [java]
>      [java] FAILURES!!!
>      [java] Tests run: 749,  Failures: 2,  Errors: 0
>      [java]
> 
> 
> Regards,
> 
> --
> Lev Assinovsky                Peterlink Web
> Programmer                    St. Petersburg, Russia
> Tel/Fax: +7 812 3275343       197022 ul.Chapigina 7Á
> E-mail: lev@peterlink.ru
> 
> 
> 
> 
> --
> To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
> For additional commands, e-mail: <ma...@jakarta.apache.org>
> 


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>