Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Added several mutant operators that were missing and could be interesting:
MTAssignmentNullifierOperator
which transforms the value of an assignment to nil:variable := value
->variable := nil
MTReplaceWhileTrueWithWhileFalseMutantOperator
andMTReplaceWhileFalseWithWhileTrueMutantOperator
MTReplaceWhileTrueReceiverWithTrueOperator
andMTReplaceWhileTrueReceiverWithFalseOperator
MTReplaceWhileFalseReceiverWithTrueOperator
andMTReplaceWhileFalseReceiverWithFalseOperator
I found the assignment operator while experimenting a bit. With the current operators, especially
MTEmptyMethodOperator
, there was never a method without mutation because this operator could always be applied.So I tried to get methods without mutation without taking into account this operator, and I found several methods with only assignments, like the initialize methods.
As for the operators on
whileTrue:
andwhileFalse:
, I was just looking at the ones onifTrue:
andifFalse:
and noticed that there wasn't any operator for their while counterparts.