Commit graph

34 commits

Author SHA1 Message Date
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
637ea8a849 Use Adamantium::Flat from mbj/adamantium at configurable-freezers branch 2012-11-03 02:12:33 +01:00
Markus Schirp
ccbe2f6396 Mark failing specs as panding and use attr_reader again 2012-10-26 11:24:29 +02:00
Markus Schirp
9fcb271637 General source code beautifications 2012-10-19 23:34:19 +02:00
Markus Schirp
7ecf828768 User adamantium (former immutable) 2012-10-15 14:36:19 +02:00
Markus Schirp
96beff82b9 Fix object space matcher 2012-09-15 23:23:53 +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
Markus Schirp
565058f566 Correctly implement and specify singleton method extraction 2012-08-29 13:32:44 +02:00
Markus Schirp
789dac96ac Handle explicit toplevel scope in method match classifier 2012-08-29 12:50:40 +02:00
Markus Schirp
586284544a Add equalization on identification string for matchers 2012-08-29 12:44:03 +02:00
Markus Schirp
f24b190a2a Add specs for Mutant::Matcher::Method::Instance.each(scope) 2012-08-28 20:07:55 +02:00
Markus Schirp
459d028de1 Add a working mutation tester for mutant
* Expand attr_reader :name, to def name; @name; end
  As attr_reader defined methods do not have a valid source location.
* Expose more internal state to allow the generation of nice match
  identifications. Needs to be cleaned up.
2012-08-20 17:53:41 +02:00
Markus Schirp
18af58c7e3 Remove complexity in singleton method matcher 2012-08-16 19:42:32 +02:00
Markus Schirp
583668138e Add mutations on singleton methods
* Fixing singleton matcher to return Rubiniuy::AST::DefineSingleton
  and not Rubinius::AST::DefineSingletonScope
* Adjust counts of runner spec
2012-08-16 19:10:24 +02:00
Markus Schirp
42e6fe84e5 Add runner with reporter
* Use MethodObject mixin
* Rename Context::Constant to Context::Scope
* Use Mutation class instead of passing around raw nodes
2012-08-16 04:10:54 +02:00
Markus Schirp
d20655f4c2 Add a spike runner 2012-08-14 22:45:34 +02:00
Markus Schirp
c9219b1f1e Add source_path to context state 2012-08-14 12:26:56 +02:00
Markus Schirp
9755009966 Use scope based subclassing pattern 2012-08-09 23:07:22 +02:00
Markus Schirp
23a04009ce Use abstract support gem instead of homebrew
The support gem is better speced than the homebrew version ever was.
2012-08-03 01:28:15 +02:00
Markus Schirp
72996901bb Use immutable support gem 2012-08-03 00:19:01 +02:00
Markus Schirp
8810c6e009 Rename Mutantee to Subject 2012-08-01 18:34:03 +02:00
Markus Schirp
d50ecc483d Cleanup missing whitespace after comma
* There must be a code metric tool helping me in converting my style.
2012-07-31 04:10:37 +02:00
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
993f08d975 Remove explict argument to to_enum in method matcher 2012-07-29 22:44:53 +02:00
Markus Schirp
d0524f1724 Cleanup Mutant::Method::Classifier
* Use constants instead of magic numbers
* Use regexp literal. Dunno why it was not used.
* Freeze constants
2012-07-29 21:48:20 +02:00
Markus Schirp
10c3dfc390 Finalize method matching
* Add tests for all edge cases I could create
* Add infrastructure for loading mutations into the vm.
* The fun part is next!
2012-07-26 19:25:23 +02:00
Markus Schirp
dc893bfd7d Progress on method matching
* Adjust metrics
* Add initial integration spec on method matching
* Yard and Heckle coverage is at 100% (heckle cov is disputable)
* Rcov does not really make sense as MRI 1.8 cannot reach all code
  paths.
2012-07-24 01:41:08 +02:00
Markus Schirp
d74481b8fb Cleanup whitespace after comma 2012-07-23 23:03:55 +02:00
Markus Schirp
ffceb9d81d Rename method in classifier to be more explict 2012-07-23 23:02:00 +02:00
Markus Schirp
3caf012eb9 Remove dead code 2012-07-23 23:01:04 +02:00
Markus Schirp
dd34e29ce9 Cleanup classifier method nameing and placement 2012-07-23 22:57:42 +02:00
Markus Schirp
df6ccafeab Add method matcher infrastructure
Needs more specs for sure. Especially edge cases.
2012-07-23 22:54:35 +02:00