[BUG] 0004990: #requiredSelectors is wrong
Daniel Vainsencher
danielv at techunix.technion.ac.il
Mon Sep 18 19:20:55 UTC 2006
Thanks for testing! and for showing the bug in a very reproducible
manner. I've updated the mantis entry, with a version that fixes the
bug, please verify that that version works for you (read the note).
BTW, next time please attach the test to the bug itself, a person might
or might not see the squeak-dev copy.
Summary of the bug - calculating required methods is slow, so much of
the effort was placed into the case in which caching is made practical
by client cooperation. Including the testing effort. The bug was in the
code that handles non-cooperative clients.
Daniel
Damien Cassou wrote:
> http://bugs.impara.de/view.php?id=4990
>
> It seems there is a bug in 3.9.
> Here is a test case:
>
> ATestCase>>testRequirement
> "
> self debug: #testRequirement
> "
> | class |
> class := Object
> subclass: #AClassForTest
> instanceVariableNames: ''
> classVariableNames: ''
> poolDictionaries: ''
> category: self class category.
> [
> class compile: 'call
> ^ self isCalled'.
> self assert: (class requiredSelectors includes: #isCalled).
>
>
> class compile: 'isCalled
> ^ 1'.
> "Fail here:"
> self deny: (class requiredSelectors includes: #isCalled)]
>
> ensure: [class removeFromSystem]
>
More information about the Squeak-dev
mailing list
|