Commit graph

14 commits

Author SHA1 Message Date
Markus Schirp
c6299604af Factor out test selection into Mutant::Selector objects
* Overall easier to test
* Reduces the need to pass around config to subjects
* Reduces the diff to tracing branch
2014-12-22 16:02:04 +00:00
Markus Schirp
40c337ce5b Fine grained rspec integration
* Flattens the rspec example groups on filtering to remove redundant
  work being done on executing subtrees of already executed example
  groups
* Uses test batching to kill one mutation per isolation that results in
  a significant speedup.
* Drop rspec 2 support.

[closes #256]
2014-12-01 22:43:28 +00:00
Markus Schirp
e08d3b6b80 Use actor based parallelization 2014-11-30 23:11:01 +00:00
Markus Schirp
84b259ab6a Reduce public interface of Subject 2014-11-17 21:40:39 +00:00
Markus Schirp
375059519a Add specs for Mutation#insert 2014-11-17 20:35:05 +00:00
Markus Schirp
6df5811a87 Use RSpec as receiver for rspec DSL methods
* I dislike the global infection RSpec does. This commit is a first step
  to get a rid of it.
* Also remove the need for `require 'spec_helper` in each spec file with
  adjusting `.rspec`.
2014-08-10 21:04:07 +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
a19f3b1691 Nuke UTF-8 encoding headers
* I do not use 1.9.3
* Also keeping them in each file increases mental overhead (true it *can* be autoamted)
* None of the files encodes NON ASCII chars.
* I do not expect it makes any difference, since nobody programmatically
  will consume strings generated by mutant under the assumption they are UTF-8 encoded.
* 1.9.3 Users have to deal with the encoding fuckup under ruby anyways.
2014-06-09 15:37:48 +00:00
Markus Schirp
f5b89b2aa7 Freeze constants 2014-06-02 11:09:49 +00:00
Markus Schirp
82634f383c Do not present un idempotent interface on abstract class 2014-05-11 14:38:07 +00:00
Markus Schirp
14c906b8e2 Remove memoizer in parent class.
* See: https://github.com/dkubb/memoizable/issues/13
2014-02-02 22:49:33 +01:00
Markus Schirp
3f61c482c1 Add missing encoding comments 2013-09-14 01:27:00 +02:00
Markus Schirp
49b09eeeac Fix rubocop reported issues
It will take ages till my brain produces 1.9 style syntax :D
2013-09-14 01:17:14 +02:00
Markus Schirp
2b620f4889 Add specs for public interface of Mutant::Mutation 2013-09-14 01:01:11 +02:00