1
0
Fork 0
Commit graph

117 commits

Author SHA1 Message Date
Markus Schirp
97a75dd062 Cleanup mutation generation
This is a reaction to the to_source rewrite

* Do not use 1.8 specific nodes anymore
* Do not generate AST nodes that would not be generatable from source
2013-01-09 20:43:06 +01:00
Markus Schirp
eb6ea9a74f Metric driven code refactoring
Break some classes, rename stuff etc.
2013-01-04 22:16:03 +01:00
Markus Schirp
33d66860c4 Code style 2013-01-03 23:40:05 +01:00
Markus Schirp
5565f5309a Handle binary operator methods correctly 2013-01-03 19:09:43 +01:00
Markus Schirp
c6e60d9178 Bump version to 0.2.10 2013-01-03 16:52:42 +01:00
Markus Schirp
36f1b8d0ec Add mutations for super 2013-01-02 01:04:16 +01:00
Markus Schirp
08eb381c37 Add super mutations 2013-01-01 23:28:21 +01:00
Markus Schirp
16a11d2c3c Handle Rubinius::AST::While
I know this can result in infinite loops. So also add TODO note about
timeout!
2013-01-01 21:41:39 +01:00
Markus Schirp
cbdc84db88 Add global, local and instance variable assignment mutators 2013-01-01 20:34:44 +01:00
Markus Schirp
36aedc9a5a Catch more cases to preserve self.class 2012-12-30 01:03:31 +01:00
Markus Schirp
07bb7b5bf6 Do not mutate underscore prefixed args or lvars 2012-12-29 23:07:45 +01:00
Markus Schirp
a06030ef06 Take care to not mutate self.class into class 2012-12-29 22:51:42 +01:00
Markus Schirp
22a5cda3f0 Add unary call mutation 2012-12-29 16:12:55 +01:00
Markus Schirp
3dc23c5238 Mutate method call receivers 2012-12-29 16:12:55 +01:00
Markus Schirp
306d4e3225 Correctly set file and line of injected mutants 2012-12-14 19:53:37 +01:00
Markus Schirp
83f86ffbdc Adjust mutation expection according to change in to_source 2012-12-14 19:40:46 +01:00
Markus Schirp
b85c9b6f3b Mark rspec2 or rbx spec bug as pending under rbx 2012-12-12 22:44:58 +01:00
Markus Schirp
386a2bc2df Fix constant scope mutations are emitted in 2012-12-12 22:11:35 +01:00
Markus Schirp
40d5230c68 Introduce noop mutation guards and argument mutators
* Sorry for not splitting up into smaller commit
2012-12-11 00:17:19 +01:00
Markus Schirp
5fed2cb57f Also mutate define arguments 2012-12-10 17:26:56 +01:00
Markus Schirp
de276327f5 Add support for mutating block arguments 2012-12-10 17:11:08 +01:00
Markus Schirp
8a4fad0973 Prepend additional elements to datastructurs instead of append
* This makes it far more likely the elements are used in paralel
  assignment. Credits for idea @snusnu!
2012-12-08 01:53:54 +01:00
Markus Schirp
88e1f0941c Add unary operator expansions 2012-12-08 01:04:43 +01:00
Markus Schirp
bc408d52d2 Add a shitload of operator expansions 2012-12-08 00:52:03 +01:00
Markus Schirp
b5430e2000 Cleanup crashes and invalid mutants 2012-12-07 23:27:21 +01:00
Markus Schirp
aae3b25f99 Expand writer methods correctly to spec files 2012-12-07 20:13:19 +01:00
Markus Schirp
3fc07deaff Make sure mutation is inserted after fork 2012-12-07 18:53:03 +01:00
Markus Schirp
7be00708b6 Improve rspec dm2 strategy
* Expand foo? to foo_predicate_spec.rb
* Expand foo! to foo_bang_spec.rb
* Execute all public method specs on mutation of private method
* Warn on stderr when no spec file was found (better than nothing to be
  iproved later)
2012-12-07 16:57:42 +01:00
Markus Schirp
e0df644a7a Move reporter stats into own file and cleanup 18 spec 2012-12-07 15:59:37 +01:00
Markus Schirp
fe941ff74c Cleanup node body mutation 2012-12-06 22:30:57 +01:00
Markus Schirp
5f215e1dc1 Move specs and adjust flay score 2012-12-06 21:51:52 +01:00
Markus Schirp
69e9de95ed Extract node specific mutator base class 2012-12-06 21:30:28 +01:00
Markus Schirp
b984a15691 Add argument mutator
* Add Util mutator to share code more efficient
2012-12-06 20:44:26 +01:00
Markus Schirp
f5274a3e20 Add return statement mutations 2012-12-06 19:53:44 +01:00
Markus Schirp
5a2f71abec Fix shared mutator spec failure reporting 2012-12-06 19:51:48 +01:00
Markus Schirp
000380c1e0 Emit vcall mutation again 2012-12-06 12:32:16 +01:00
Markus Schirp
0c41c9f8e0 Add multi subject integration spec 2012-11-24 17:39:27 +01:00
Markus Schirp
7a471875fc Publish exit status of CLI runner in executable 2012-11-24 17:36:47 +01:00
Markus Schirp
70060caf5d Cleanup rspec runner and extract unused code 2012-11-24 17:06:33 +01:00
Markus Schirp
dffe2a26e6 Add strategy objects 2012-11-22 00:10:50 +01:00
Markus Schirp
dc083547f5 Connect cli with runner.
Only supports the testing of testapp... but time will come!
2012-11-21 22:28:08 +01:00
Markus Schirp
001f3c7d99 Make mutant run under MRI 1.9.
* Add a Mutant::Loader::Eval that loads code via Kernel#eval
* Move Mutnat::Loader to Mutant::Loader::Rubinius (currently not used)
2012-11-21 20:31:01 +01:00
Markus Schirp
74b704b220 Minor style fixes 2012-10-26 13:12:42 +02:00
Markus Schirp
ccbe2f6396 Mark failing specs as panding and use attr_reader again 2012-10-26 11:24:29 +02:00
Markus Schirp
7ecf828768 User adamantium (former immutable) 2012-10-15 14:36:19 +02:00
Markus Schirp
cd35a6dcc6 Refactor runner and fix integration spec 2012-09-16 00:51:47 +02:00
Markus Schirp
96beff82b9 Fix object space matcher 2012-09-15 23:23:53 +02:00
Markus Schirp
933364b800 Use dkubb/equalizer and remove vendored version 2012-09-15 23:04:10 +02:00
Markus Schirp
3de69d832d Add cli stuff
* Currently broken (sorry) but do have to push to fix some nasty
  transitive dependency stuff (do not ask).
* Fix fix it tomorrow (hopefully I find the time)
2012-09-11 01:01:06 +02:00
Markus Schirp
9df6d1933a Add Mutant::Matcher::Chain 2012-08-29 19:32:35 +02:00