41 lines
1.7 KiB
Text
41 lines
1.7 KiB
Text
Code:
|
|
* Test mutant with dynamically created zombie.
|
|
* Break up lib/mutant/mutator/node/send.rb in class specific files
|
|
* Log all warnings through reporter, so remove random $stderr.puts calls
|
|
|
|
Mutations:
|
|
* Add binary operator specific mutations (YAY, finally reached this point)
|
|
* Add some kind of a "do not touch me object" that raises on all messages.
|
|
It can be used to make sure each literal value is touched.
|
|
* Replace nil or add "do not touch me object" to literal mutations.
|
|
* Mutate options on Regexp literals
|
|
* Add mutations for dynamic regexp symbol and string literals
|
|
* Mutate "def foo; bar; end" to "def foo; self; end"?
|
|
* Emit negative and positive mutations
|
|
* Mutate Block catch "def foo(&block)" and block pass "foo(&block)"
|
|
* Mutate super arguments just like send arguments
|
|
* Binary operator mutations
|
|
* Add timeout to terminate infinite loops
|
|
|
|
Example of a negative mutation:
|
|
Mutations on local variables and arguments prefixed with an underscore would be emitted as
|
|
negative mutations that must be alive.
|
|
|
|
Loader:
|
|
* Make sure loader does not change visibility of injected mutants
|
|
|
|
Killers:
|
|
* Move test framework specific stuff to strategy
|
|
* Add a general master <=> killer IPC interface. So different strategies of isolation
|
|
(fork, vs jruby runtime creation) will work without big impact.
|
|
|
|
Strategy:
|
|
* Aggregate warnings on missing spec files
|
|
* Provide "expicit files to kill with" strategy
|
|
|
|
Matcher:
|
|
* Allow matches on attr_reader with literal name argument(s)?
|
|
* Allow matches on define_method with literal name argument?
|
|
|
|
jruby-support:
|
|
* Create a runtime per mutation to kill mutations in isolation
|