[Pharo-project] Strange bug in TraitsTest
If you open a test runner and select only KernelTests-ClassTest and TraitsTests-TraitsTestCase you may find a failure ClassTest>>testRootsOfTheWorld But I don't understand fully why it appears. I had once the chance to get a debugger on the failure (which does usually not work on this failure) and so I know that the rootsOfTheWorld (which is usually 3) is 6 in size containing additionally classes C3 C4 and C6. The ones which are created by TraitsTestCase (see my last mail "Bug for harvest"). They all have a superclass of nil but they aren't included in the SystemNavigation. (conditions for being included in the rootsOfTheWorld) If you press "Run selected" again the same error occurrs while pressing "Run failures" gives you all green (ok, it is this way in my case) And I can't reproduce the same in a 3.10 image. It seems that there is a timing problem involved. Selecting only the two test cases I get the failure every time (or nearly). Selecting all tests it appears only at random. Any hints? Norbert
Hmmm, it has something to do with the name pharo :) I checked the available images. Sapphire 10018 doesn't show up this. But Pharo 10021 does. And in 10021 there is one additional test in ClassTest testHaSharedPools Author seems to be Stephane. Do you know anything which have introduced this? Norbert On Wed, 2008-06-11 at 19:24 +0200, Norbert Hartl wrote:
If you open a test runner and select only KernelTests-ClassTest and TraitsTests-TraitsTestCase you may find a failure
ClassTest>>testRootsOfTheWorld
But I don't understand fully why it appears. I had once the chance to get a debugger on the failure (which does usually not work on this failure) and so I know that the rootsOfTheWorld (which is usually 3) is 6 in size containing additionally classes C3 C4 and C6. The ones which are created by TraitsTestCase (see my last mail "Bug for harvest").
They all have a superclass of nil but they aren't included in the SystemNavigation. (conditions for being included in the rootsOfTheWorld)
If you press "Run selected" again the same error occurrs while pressing "Run failures" gives you all green (ok, it is this way in my case)
And I can't reproduce the same in a 3.10 image.
It seems that there is a timing problem involved. Selecting only the two test cases I get the failure every time (or nearly). Selecting all tests it appears only at random.
Any hints?
Norbert
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
No may be this is related with the hash fixes of marcus. I will have to check :) Thanks for reporting that. Can you add that in a bug tracking system? Which one do we use? I will ask samuel if he has some ideas for the logo because we should move on for the infrastructure of the web site (I'm sorry about the current state of affair). On Jun 11, 2008, at 7:43 PM, Norbert Hartl wrote:
Hmmm, it has something to do with the name pharo :) I checked the available images. Sapphire 10018 doesn't show up this. But Pharo 10021 does. And in 10021 there is one additional test in ClassTest
testHaSharedPools
Author seems to be Stephane. Do you know anything which have introduced this?
Norbert
On Wed, 2008-06-11 at 19:24 +0200, Norbert Hartl wrote:
If you open a test runner and select only KernelTests-ClassTest and TraitsTests-TraitsTestCase you may find a failure
ClassTest>>testRootsOfTheWorld
But I don't understand fully why it appears. I had once the chance to get a debugger on the failure (which does usually not work on this failure) and so I know that the rootsOfTheWorld (which is usually 3) is 6 in size containing additionally classes C3 C4 and C6. The ones which are created by TraitsTestCase (see my last mail "Bug for harvest").
They all have a superclass of nil but they aren't included in the SystemNavigation. (conditions for being included in the rootsOfTheWorld)
If you press "Run selected" again the same error occurrs while pressing "Run failures" gives you all green (ok, it is this way in my case)
And I can't reproduce the same in a 3.10 image.
It seems that there is a timing problem involved. Selecting only the two test cases I get the failure every time (or nearly). Selecting all tests it appears only at random.
Any hints?
Norbert
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
On Wed, 2008-06-11 at 21:50 +0200, Stéphane Ducasse wrote:
No may be this is related with the hash fixes of marcus. I will have to check :) Thanks for reporting that. Can you add that in a bug tracking system? Which one do we use?
Yes, I'll open a ticket. I think we are using google. So after all we use: - google for wiki and bugs - inria for file downloads - squeaksource for code upload we seem not to use: - bugs.squeak.org (we should someone remove the project from there) Norbert
I will ask samuel if he has some ideas for the logo because we should move on for the infrastructure of the web site (I'm sorry about the current state of affair).
On Jun 11, 2008, at 7:43 PM, Norbert Hartl wrote:
Hmmm, it has something to do with the name pharo :) I checked the available images. Sapphire 10018 doesn't show up this. But Pharo 10021 does. And in 10021 there is one additional test in ClassTest
testHaSharedPools
Author seems to be Stephane. Do you know anything which have introduced this?
Norbert
On Wed, 2008-06-11 at 19:24 +0200, Norbert Hartl wrote:
If you open a test runner and select only KernelTests-ClassTest and TraitsTests-TraitsTestCase you may find a failure
ClassTest>>testRootsOfTheWorld
But I don't understand fully why it appears. I had once the chance to get a debugger on the failure (which does usually not work on this failure) and so I know that the rootsOfTheWorld (which is usually 3) is 6 in size containing additionally classes C3 C4 and C6. The ones which are created by TraitsTestCase (see my last mail "Bug for harvest").
They all have a superclass of nil but they aren't included in the SystemNavigation. (conditions for being included in the rootsOfTheWorld)
If you press "Run selected" again the same error occurrs while pressing "Run failures" gives you all green (ok, it is this way in my case)
And I can't reproduce the same in a 3.10 image.
It seems that there is a timing problem involved. Selecting only the two test cases I get the failure every time (or nearly). Selecting all tests it appears only at random.
Any hints?
Norbert
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
On Wed, Jun 11, 2008 at 5:08 PM, Norbert Hartl <norbert@hartl.name> wrote: [snip]
Yes, I'll open a ticket. I think we are using google. So after all we use:
- google for wiki and bugs - inria for file downloads - squeaksource for code upload
- inria for the mailing list. VÃctor.
we seem not to use:
- bugs.squeak.org (we should someone remove the project from there)
Norbert
I will ask samuel if he has some ideas for the logo because we should move on for the infrastructure of the web site (I'm sorry about the current state of affair).
On Jun 11, 2008, at 7:43 PM, Norbert Hartl wrote:
Hmmm, it has something to do with the name pharo :) I checked the available images. Sapphire 10018 doesn't show up this. But Pharo 10021 does. And in 10021 there is one additional test in ClassTest
testHaSharedPools
Author seems to be Stephane. Do you know anything which have introduced this?
Norbert
On Wed, 2008-06-11 at 19:24 +0200, Norbert Hartl wrote:
If you open a test runner and select only KernelTests-ClassTest and TraitsTests-TraitsTestCase you may find a failure
ClassTest>>testRootsOfTheWorld
But I don't understand fully why it appears. I had once the chance to get a debugger on the failure (which does usually not work on this failure) and so I know that the rootsOfTheWorld (which is usually 3) is 6 in size containing additionally classes C3 C4 and C6. The ones which are created by TraitsTestCase (see my last mail "Bug for harvest").
They all have a superclass of nil but they aren't included in the SystemNavigation. (conditions for being included in the rootsOfTheWorld)
If you press "Run selected" again the same error occurrs while pressing "Run failures" gives you all green (ok, it is this way in my case)
And I can't reproduce the same in a 3.10 image.
It seems that there is a timing problem involved. Selecting only the two test cases I get the failure every time (or nearly). Selecting all tests it appears only at random.
Any hints?
Norbert
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
I don't see what could testRootsOfTheWorld be useful for. Anyway, the reason why this fails is because for the traits tests I use test resources and they are set up before all tests are run and testRootsOfTheWorld asserts that there are exactly 3 classes in the system that do not have a superclass. There are two simple solutions for this. Either remove testRootsOfTheWorld or change the test classes created in TraitsRescource to inherit from Object instead of ProtoObject. I would do the former unless somebody has a convincing argument for keeping that test in the image. Adrian NB: I'll also fix #testLocalMethodWithSameCodeInTrait when I'm at it (this tests that there do not exist duplicated methods between a trait and a class using the trait) On Jun 11, 2008, at 19:24 , Norbert Hartl wrote:
If you open a test runner and select only KernelTests-ClassTest and TraitsTests-TraitsTestCase you may find a failure
ClassTest>>testRootsOfTheWorld
But I don't understand fully why it appears. I had once the chance to get a debugger on the failure (which does usually not work on this failure) and so I know that the rootsOfTheWorld (which is usually 3) is 6 in size containing additionally classes C3 C4 and C6. The ones which are created by TraitsTestCase (see my last mail "Bug for harvest").
They all have a superclass of nil but they aren't included in the SystemNavigation. (conditions for being included in the rootsOfTheWorld)
If you press "Run selected" again the same error occurrs while pressing "Run failures" gives you all green (ok, it is this way in my case)
And I can't reproduce the same in a 3.10 image.
It seems that there is a timing problem involved. Selecting only the two test cases I get the failure every time (or nearly). Selecting all tests it appears only at random.
Any hints?
Norbert
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
On Thu, 2008-06-12 at 15:28 +0200, Adrian Lienhard wrote:
I don't see what could testRootsOfTheWorld be useful for. Anyway, the reason why this fails is because for the traits tests I use test resources and they are set up before all tests are run and testRootsOfTheWorld asserts that there are exactly 3 classes in the system that do not have a superclass.
I don't think that the test does harm. And I don't really care about the test. What I don't understand is the "side effect". The classes are created in TraitsTestCase. The failing test is in ClassTest. As far as I can see the created classes are removed on tearDown time. Norbert
There are two simple solutions for this. Either remove testRootsOfTheWorld or change the test classes created in TraitsRescource to inherit from Object instead of ProtoObject. I would do the former unless somebody has a convincing argument for keeping that test in the image.
Adrian
NB: I'll also fix #testLocalMethodWithSameCodeInTrait when I'm at it (this tests that there do not exist duplicated methods between a trait and a class using the trait)
On Jun 11, 2008, at 19:24 , Norbert Hartl wrote:
If you open a test runner and select only KernelTests-ClassTest and TraitsTests-TraitsTestCase you may find a failure
ClassTest>>testRootsOfTheWorld
But I don't understand fully why it appears. I had once the chance to get a debugger on the failure (which does usually not work on this failure) and so I know that the rootsOfTheWorld (which is usually 3) is 6 in size containing additionally classes C3 C4 and C6. The ones which are created by TraitsTestCase (see my last mail "Bug for harvest").
They all have a superclass of nil but they aren't included in the SystemNavigation. (conditions for being included in the rootsOfTheWorld)
If you press "Run selected" again the same error occurrs while pressing "Run failures" gives you all green (ok, it is this way in my case)
And I can't reproduce the same in a 3.10 image.
It seems that there is a timing problem involved. Selecting only the two test cases I get the failure every time (or nearly). Selecting all tests it appears only at random.
Any hints?
Norbert
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Hi adrian go for it :) Stef On Jun 12, 2008, at 3:28 PM, Adrian Lienhard wrote:
I don't see what could testRootsOfTheWorld be useful for. Anyway, the reason why this fails is because for the traits tests I use test resources and they are set up before all tests are run and testRootsOfTheWorld asserts that there are exactly 3 classes in the system that do not have a superclass.
There are two simple solutions for this. Either remove testRootsOfTheWorld or change the test classes created in TraitsRescource to inherit from Object instead of ProtoObject. I would do the former unless somebody has a convincing argument for keeping that test in the image.
Adrian
NB: I'll also fix #testLocalMethodWithSameCodeInTrait when I'm at it (this tests that there do not exist duplicated methods between a trait and a class using the trait)
On Jun 11, 2008, at 19:24 , Norbert Hartl wrote:
If you open a test runner and select only KernelTests-ClassTest and TraitsTests-TraitsTestCase you may find a failure
ClassTest>>testRootsOfTheWorld
But I don't understand fully why it appears. I had once the chance to get a debugger on the failure (which does usually not work on this failure) and so I know that the rootsOfTheWorld (which is usually 3) is 6 in size containing additionally classes C3 C4 and C6. The ones which are created by TraitsTestCase (see my last mail "Bug for harvest").
They all have a superclass of nil but they aren't included in the SystemNavigation. (conditions for being included in the rootsOfTheWorld)
If you press "Run selected" again the same error occurrs while pressing "Run failures" gives you all green (ok, it is this way in my case)
And I can't reproduce the same in a 3.10 image.
It seems that there is a timing problem involved. Selecting only the two test cases I get the failure every time (or nearly). Selecting all tests it appears only at random.
Any hints?
Norbert
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
On Jun 12, 2008, at 15:49 , Norbert Hartl wrote:
On Thu, 2008-06-12 at 15:28 +0200, Adrian Lienhard wrote:
I don't see what could testRootsOfTheWorld be useful for. Anyway, the reason why this fails is because for the traits tests I use test resources and they are set up before all tests are run and testRootsOfTheWorld asserts that there are exactly 3 classes in the system that do not have a superclass.
I don't think that the test does harm. And I don't really care about the test. What I don't understand is the "side effect". The classes are created in TraitsTestCase. The failing test is in ClassTest. As far as I can see the created classes are removed on tearDown time.
Well, this is how the test runner works... It first sets up all test resources (which in this case creates the offending classes), then it runs all tests, and then it releases the resources. That is, resource allocation and deallocation is "global", therefore ClassTest is affected. Hope that explains it better. Adrian
Norbert
There are two simple solutions for this. Either remove testRootsOfTheWorld or change the test classes created in TraitsRescource to inherit from Object instead of ProtoObject. I would do the former unless somebody has a convincing argument for keeping that test in the image.
Adrian
NB: I'll also fix #testLocalMethodWithSameCodeInTrait when I'm at it (this tests that there do not exist duplicated methods between a trait and a class using the trait)
On Jun 11, 2008, at 19:24 , Norbert Hartl wrote:
If you open a test runner and select only KernelTests-ClassTest and TraitsTests-TraitsTestCase you may find a failure
ClassTest>>testRootsOfTheWorld
But I don't understand fully why it appears. I had once the chance to get a debugger on the failure (which does usually not work on this failure) and so I know that the rootsOfTheWorld (which is usually 3) is 6 in size containing additionally classes C3 C4 and C6. The ones which are created by TraitsTestCase (see my last mail "Bug for harvest").
They all have a superclass of nil but they aren't included in the SystemNavigation. (conditions for being included in the rootsOfTheWorld)
If you press "Run selected" again the same error occurrs while pressing "Run failures" gives you all green (ok, it is this way in my case)
And I can't reproduce the same in a 3.10 image.
It seems that there is a timing problem involved. Selecting only the two test cases I get the failure every time (or nearly). Selecting all tests it appears only at random.
Any hints?
Norbert
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
participants (4)
-
Adrian Lienhard -
Norbert Hartl -
Stéphane Ducasse -
Victor Rodriguez