stryker-net icon indicating copy to clipboard operation
stryker-net copied to clipboard

Mutation of >= and <= into ==

Open jeangsc opened this issue 2 years ago • 1 comments

Example:

Code tested: public static bool Is18OrOlder(int age) { return age >= 18; }

Existing tests: [Fact] public void Minor_Test() { Assert.False(AgeControl.Is18OrOlder(0)); }

[Fact] public void Equal_Test() { Assert.True(AgeControl.Is18OrOlder(18)); }

Both of them pass green when >= is replaced by == , the mutation into == should force the programmer to write a test for higher value than 18 in our example

jeangsc avatar Feb 07 '24 14:02 jeangsc

We currently place 2 mutations for >= (<= and >). The <= mutation already forces the programmer to write a test for the value higher than 18.

As far as I know we tackle all edge cases with these 2 mutations. But if we could simplify by just placing 1 mutation that would improve our performance. We could look into, if this mutation covers the same edge cases.

richardwerkman avatar Feb 07 '24 15:02 richardwerkman