[squeak-dev] Re: Ideas about sets and dictionaries

Ralph Johnson johnson at cs.uiuc.edu
Thu Nov 12 12:55:05 UTC 2009


On Thu, Nov 12, 2009 at 3:44 AM, Igor Stasenko <siguctua at gmail.com> wrote:

> Testing against virtually every existing application is unreasonable
> demand and nobody having time to do that.

But did you run it against the standard set of tests in Squeak?

The question is whether changing the behavior of Set will break the
image.   And if it does, how hard will it be to fix? i can't remember
ever reading or writing code that would break if Sets could include
nil, but that doesn't mean there isn't any.  The whole reason for
having these tests is so we can see if changes break something.  But
if we don't run the tests then they don't do us any good.

Since there are no unit tests that ensure that Sets never contain nil,
it should not be hard to make a version of Set that can contain nil.
That is why I said it was boring and obvious to say that your version
of Set plassed the unit tests for Collections.

I loaded the changes into Squeak 10.2.  First, I ran the tests; two
failed.  Then I loaded the new version of Set and ran the tests again.
 Now only one failed, an obscure unwind error that has been around a
long time.  So, your change doesn't break any of the 2254 tests in
that image.  it probably wouldn't be hard to test it with squeak-dev,
too.

It is not hard to run all the tests.  Sure, it takes a little time,
but you can run them in the background and go read your e-mail.  But
just running the collection tests doesn't mean much, since getting the
collection tests to run is easy so telling us that they work doesn't
tell us much.

-Ralph



More information about the Squeak-dev mailing list