Markus Schirp
508c37e747
Workaround visibility change through loader
2012-12-07 17:27:36 +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
7a471875fc
Publish exit status of CLI runner in executable
2012-11-24 17:36:47 +01:00
Markus Schirp
9d32ddc44f
Do not cache asts to fix spec failures with method matching
2012-11-24 16:59:41 +01:00
Markus Schirp
3c1f5b3831
Cache stuff in method matcher => ~20% speedup
2012-11-22 02:50:55 +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
7ecf828768
User adamantium (former immutable)
2012-10-15 14:36:19 +02:00
Markus Schirp
586284544a
Add equalization on identification string for matchers
2012-08-29 12:44:03 +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
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
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
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