Request for review : 7121314 : Behavior mismatch between AbstractCollection.toArray(T[] ) and its spec

Ulf Zibis Ulf.Zibis at
Thu Mar 29 01:32:33 UTC 2012

David, this is great news. You like my approach. :-)

The separation in 3 files is intentional. I was thinking about of reusing TestCollection for future 
tastcases on other methods of AbstractCollection. But I'm not enough familiar with jtreg to argue, 
if this is possible.
Similarly class Infrastructure could be reused over all JDK's tests. But personnally I would prefer 
to more and more use the JUnit framework. Is there already an existing example?
How do you ensure, that all existing jdk subclasses of AbstractCollection are tested by the same 

I like your javadoc for setSizeSequence, but I have an addition, see below.

Have a nice flight,


Am 29.03.2012 02:36, schrieb David Holmes:
> Hi Ulf,
> Thanks for the updates. This will take a little rearranging to get into the right form I think - a 
> single file is easier to deal with so we could nest the TestCollection class.
> Regarding setPseudoConcurrentChronologicalSizeSequence, I think perhaps:
>    /** Sets the values that size() will return on each use. The next
>        call to size will return sizes[0], then sizes[1] etc. This
>        allows us to emulate a concurrent change to the contents of
>        the collection without having to perform concurrent changes.
>        If sizes contains a larger valuethan on last invocation, the collection will appear to
>        have shrunk when iterated; if a smaller value then the
>        collection will appear to have grown when iterated
>    */
>    void setSizeSequence(int... sizes) {
>         this.sizes = sizes;
>         nextSize = 0;
>     }
> Sean: can you massage this into a final version? If not I will try to do so but I'm about to head 
> out to JavaOne Japan and then am taking some vacation time. Might be something I can work on on 
> the plane :)
> Thanks,
> David
> On 29/03/2012 4:48 AM, Ulf Zibis wrote:
>> Hi David, Sean,
>> I have made little changes to make understanding little easier, see
>> attachment...
>> -Ulf
>> Am 28.03.2012 07:29, schrieb David Holmes:
>>> Hi Ulf,
>>> I understand your point about ensuring we test
>>> AbstractCollection.toArray but I find this revised test much harder to
>>> understand.
>>> Also in the name setPseudoConcurrentSizeCourse the word "Course"
>>> doesn't fit. I'm not sure what you were meaning here? Perhaps just
>>> modifySize or emulateConcurrentSizeChange ?
>>> Thanks,
>>> David

More information about the core-libs-dev mailing list