Commit graph

17 commits

Author SHA1 Message Date
Markus Schirp
034523c6b1 Fix the use of instance doubles globally
[fix #361]
2015-11-15 20:16:42 +00:00
Markus Schirp
8233c5871f Reduce matcher interface
* New primary interface #call makes specs and implementations much
  easier
* We had #each mostly for historical reasons that are not relevant
  anymore
* Mutation covers the Mutant::Matcher namespace
2015-10-28 20:13:00 +00:00
Markus Schirp
d647563055 Refactor expression parsing and representation
* Avoids boot time mutation of REGISTER constant
* Allows to define project specific expression parsing
* Avoids custom (slow) serialization of Expression objects speeding up
  reporter / killer IPC
* Improve specification
* Improve integration API as it now finally references an object the config
* Allow reproduction of syntax from Expression#syntax
* Allow instantiation of Expresssion objects without generating the
  syntax, much nicer for most specs & internal code, avoids generating
  a string to parse it into an expression
* Fix LSP violation in Mutant::Matcher namespace
2015-06-21 14:44:33 +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
efa12158d1 Avoid multiple enumeration of object space 2014-07-02 17:47:51 +00:00
Markus Schirp
3390abc675 Use environment object inside matchers
This will allow to use reporters from matchers avoiding stupid direct
writes to $stderr.

Also it will allow to remove matching from CLI altogether in a phase of
the runner. Allowing to decouple Mutant::Config from VM environment
allowing to serialize it ;)

Step by step. Takes a while.
2014-06-30 13:08:52 +00:00
Markus Schirp
7e17690714 Fix namespace matches result ordering to be deterministic 2014-06-30 12:41:14 +00:00
Markus Schirp
3390d59954 Fix naming of Expression.{try_,}_parse
* try_parse is now the one that does not raise
* parse is now the one that does rase
2014-06-29 23:16:36 +00:00
Markus Schirp
11b945fbbe Use expression logic for namespace matching 2014-06-29 22:52:50 +00:00
Markus Schirp
ee940f1c21 Remove RBX specific spec exclude 2014-06-29 00:25:27 +00:00
Markus Schirp
c87a9e991f Fix namespace matcher API use 2014-06-29 00:23:54 +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
822ddd799f Make non mri specific specs pass under RBX 2014-06-08 19:51:04 +00:00
Markus Schirp
83f6a22a16 Fix adjacent namespece selections
Closes #167
2014-06-06 21:31:17 +00:00
Markus Schirp
c75729ead2 Cleanup remaining use of old cli classifier 2014-06-02 12:45:29 +00:00
Markus Schirp
399f352328 Consistently use expect syntax 2014-02-02 22:49:33 +01:00
Markus Schirp
9edb375ef3 Use more modern spec layout
* This specs still have spec per method granularity
* But one file specs multiple methods
* Compatible with mutant spec selector
* Deduplicates boilerplate unit setup
2013-12-29 23:29:58 +01:00
Renamed from spec/unit/mutant/matcher/namespace/each_spec.rb (Browse further)