Scott Miller wrote:
> 
> > progressing, but it is and will continue to be reasonably slow compared
> > to someone who has more time.
> Unfortunately, I'm rather in the same boat.  Thats why I haven't been
> exactly enthusiastic about diving in a grabbing a whole package.

Well, I'll not work on any of the concrete implementations until I
finish the rest of it, and then we can co-ordinate if there are still
concrete implementations to be done by that stage.

> > as yet. Also, there isn't any sort of test suite yet because I'm still
> > grappling with the idea of how to test the semantics of a collections
> > implementation.
> A Test suite is something I may be able to work on.  The way I understand
> the problem, we need to verify that all the Collections return expected
> results.  So we build a test suite that loads initial values into each
> collection type, then test the Collection to see if it even loaded values
> right.  Then test each method (several tests, probably) based on hard
> coded expected results.  I'm obviously missing something difficult here,
> so clue me in if you would.

It probably is that simple - I've never written testsuites before, and
so have no real clue as to how deep the tests should, well, test.

The real difficulty is that there are a lot of methods, and a lot of
classes to test the methods on in a lot of cases (eg, the
hasMoreElements method of an Enumeration obtained by calling
Collections.enumerate(List) on a List obtained from the subList(int,
int) call of the result of Arrays.asList(Object[]) on an array), to give
a slightly contrived over the top example. Unfortunately, some pieces of
code simply *won't* get called without some messing about like that.

> > The classes I'm referring to as concrete implementations are:
> >
> > ArrayList LinkedList Vector    Stack
>                        check     check
> 
> > TreeSet   HashSet
> > TreeMap   HashMap    Hashtable (and Dictionary)
> 
> I'll look at the other concretes to see what can be done.

Oh, one class I missed is WeakHashMap, as of beta4.

Thanks for the help though,
Stuart.

Reply via email to