https://pharo.fogbugz.com/f/cases/20765/removing-an-instance-variable-does-not-really-remove-it

On Sun, Nov 26, 2017 at 9:50 PM, Stephane Ducasse
<stepharo.s...@gmail.com> wrote:
> Hi abdel
>
> I created a class with x and two accessors and I created the same test
> than you. They were green.
> Then I removed the instance variable x
> and I run the tests and they were greeeeeeeeennnnnnnnnnn (agrhhhhhhhh)
>
> I checked the accessors and the methods where showing that the
> instance variable is missing.
>
> So to me this is indeed a bug. I have no idea why the test should run.
>
> Stef
>
> On Sun, Nov 26, 2017 at 9:08 PM, abdelghani ALIDRA via Pharo-users
> <pharo-users@lists.pharo.org> wrote:
>>
>>
>> ---------- Forwarded message ----------
>> From: abdelghani ALIDRA <alidran...@yahoo.fr>
>> To: "pharo-users@lists.pharo.org" <pharo-users@lists.pharo.org>
>> Cc:
>> Bcc:
>> Date: Sun, 26 Nov 2017 20:08:29 +0000 (UTC)
>> Subject: Removing instance variables doesn't recompile the methods
>>
>> 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
>>
>>
>>

Reply via email to