--- Begin Message ---
Hi,

In a fresh pharo 6 image, I add a class with an instance variable x and 
implement accessors.
Then I write a test method for the accessors of x
MyClassTest>>testReadWriteX
    self assert (MyClass new x: 0) x equals: 0

I run the test and obviously it is green

BUT

I remove the instance variable x. Obviously, the accessors are broken and the 
test should be red when I execute it again but it is not!!!

I can even change the class again (to recompile it I thought) or even load the 
code in a new image and the tests are still green. 
I can also invoque the broken methods in a playground or in an inspector : 
MyClass new x: 0; increment; x then printIt. and astonishingly 1 is printed.
The only way to detect the error is to recompile the method but this does not 
happen (maybe it should) when instance variables are modified or removed in the 
class (even when you use the refactoring tool!) 

I think this is annoying because one can no more really trust his tests.

Cheers
Abdelghani



--- End Message ---

Reply via email to