Markus Schirp
13cd04d9be
Introduce AST::Meta to externalize semantic analysis
...
* Add Mutant::AST namespace to hold all AST related data / helpers.
* Mutant::AST will be externalized into an ast-meta gem that can be
shared with unparser for deduplication.
* Over the time the mutators itself will not need to deal with semantic
analysis of the AST anymore by themselves.
* Move AST analysis for send nodes to AST::Meta
* Fix #209
2014-06-29 21:26:58 +00:00
Markus Schirp
3d94003616
Fix invalid AST generation on operator method with self as receiver
2014-06-15 19:48:27 +00:00
Markus Schirp
e3d4f62f95
Fix index assignment mutations
2014-06-15 15:34:45 +00:00
Markus Schirp
ac179cd450
Remove useless mutations and fix index reference
2014-06-15 13:12:11 +00:00
Markus Schirp
c5f5d595ca
Correctly avoid mutations that produce differend AST but same source
...
* Add detection for this case in Example::Verification
* Revert source location killing Normalization after parse.
* Closes #198
2014-06-09 14:56:15 +00:00
Markus Schirp
8d31d52a93
Sync devtools and fix rubocop warnings
2014-06-08 13:01:26 +00:00
Markus Schirp
d21f4ae5fb
Do not mutate to invalid AST on reqarg promotion
...
Closes #153
2014-06-06 23:05:29 +00:00
Markus Schirp
1f38aeb042
Do not emit rescue matchers with higher selectabillity
...
Closes #183
2014-06-06 19:45:11 +00:00
Markus Schirp
bee44d7888
Avoid mutating break to next
...
Closes #201
2014-06-06 13:06:52 +00:00
Markus Schirp
017ccc1044
Add expression => self mutation
...
Also reorganizes parts of meta to align filenames to node name better.
Closes #191
2014-06-05 17:48:39 +00:00
Markus Schirp
cadd42908a
Do not emit lhs mutations for ivars on or assign
...
* Closes #150
2014-06-04 16:09:27 +00:00
Markus Schirp
ef0f5c2d8c
Arrange meta by node name
2014-06-02 14:22:57 +00:00
Markus Schirp
4a9ab9340e
Define expected mutations with less redundancy
...
The mutation examples are now introspectable, this allows to render nice
index or performing better automated analysis against the corpus.
2014-06-02 14:05:11 +00:00