Commit graph

21 commits

Author SHA1 Message Date
John Backus
bf833bd53f Add mutation from foo.to_i to Integer(foo)
Closes #451
2015-10-18 22:53:14 -07:00
Markus Schirp
c9158d6903 Merge pull request #417 from backus/enhancement/not-equality-mutations
Add a mutation from `a != b` to `!a.eql?(b)` and `!a.equal?(b)`.
2015-09-08 14:02:31 +00:00
John Backus
a8453f01cc Add mutation A.const_get(:B) -> A::B
Closes #422
2015-09-01 15:22:37 +00:00
John Backus
4922cea2df Add mutations for a != b
Adds mutations which transform `a != b` into `!a.eql?(b)`
and `!a.equal?(b)`

closes #270
2015-08-20 14:02:15 -07:00
John Backus
3964eb2e8f Add mutations from to_h -> to_hash
closes #218
2015-08-09 20:36:44 -07:00
Markus Schirp
838a03845a Add mutation from #[] to #at #fetch 2015-07-05 16:07:03 +00:00
Markus Schirp
a0216cb6fa Bump ruby requirement to 2.1
* Use %i style symbol literal arrays
* Fix style
* Whitelist some preferred style
2015-05-31 21:20:54 +00:00
Markus Schirp
c392cb5e4b Remove redundant encoding comment
* Mutant is ruby 2.0+ only where UTF-8 is default encoding
2015-04-27 21:07:30 +00:00
Markus Schirp
a1c6018f30 Add mutation from send to __send__
* `__send__` is the canonical form.
2014-11-27 22:01:53 +00:00
Markus Schirp
f54c7c42cf Add gt to gte and lt to lte mutations
* I believe these are also good mutations as lt vs lte and gt vs gte
  differencies always will be observable from good specs and the
  developer will always be very sure he uses the right one.
2014-11-25 20:44:07 +00:00
Markus Schirp
c7de9a24fb Prefer Object#is_a? over #kind_of? 2014-10-08 11:49:48 +00:00
Markus Schirp
cf1c9a2bed Add relational operator mutations
[fix #205]
2014-08-11 15:21:05 +00:00
Markus Schirp
8164de883e Add mutation from #reverse_merge to #merge
[fix #214]
2014-08-11 15:11:02 +00:00
Markus Schirp
99b19a1d92 Add mutation from {is_a,kind_of}? to instance_of? 2014-07-25 17:33:01 +00:00
Markus Schirp
18029b1756 Add mutations from to_{s,i,a} -> to_{str,int,ary}
[closes #217]
2014-07-10 19:42:37 +00:00
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
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
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