Commit graph

6 commits

Author SHA1 Message Date
Markus Schirp
3e1f9c408f Cleanup and dedup mutation generation
* Mutator and Generator where merged.
* A single pass over all duplications was made.
* It is clear a specific handles?(node) code for finding mutators
  is needed. Like virtus does for attributes, should also cache.
* Does not pass on 1.9 mode currently as blocks are unexpectly parsed
  differend when it comes to a series of literal booleans.
2012-07-31 04:00:05 +02:00
Markus Schirp
02a726d767 Retry on random mutates that are the same
* This fixes problems where generated mutations have a chance
  to be the same like the mutation subject.
2012-07-30 22:18:00 +02:00
Markus Schirp
ef9172bca4 Guard against the generation of equal mutants
* Move Mutant::Mutator::Generator in a dedicated file
* Mutant::Mutator::Generator#append only forwards mutated node when it
  does not equal original nodes sexpession. This does not catch
  equivalent mutations, but mutations that exactly reproduce the same
  AST. This way a check for not generating the same asts can be
  centralized.
2012-07-30 21:40:49 +02:00
Markus Schirp
27f43eef35 Mutate float literals also to negative infinity
* Also fixes invalid naming of support methods in literal float mutator.
2012-07-29 18:08:29 +02:00
Markus Schirp
0b9b46d12f Add range literal support
* Full of duplication. Will be addressed when all literals are done.
2012-07-28 00:17:00 +02:00
Markus Schirp
9e8b451933 Add mutation for some literals
* This is in progress code. The plan is to support all literals before
  beginning to cleanup and dedup the mutation generation. Have to
  understand the AST and the possible mutations more in depth before
  making structural decisions here.
2012-07-27 22:39:31 +02:00