mutant 0.5.26 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. checksums.yaml +4 -4
  2. data/.rspec +1 -0
  3. data/.travis.yml +1 -0
  4. data/Changelog.md +16 -3
  5. data/Gemfile +0 -2
  6. data/Gemfile.devtools +2 -2
  7. data/README.md +9 -15
  8. data/bin/mutant +0 -1
  9. data/config/flay.yml +1 -1
  10. data/config/flog.yml +1 -1
  11. data/config/mutant.yml +1 -1
  12. data/config/reek.yml +14 -11
  13. data/config/rubocop.yml +1 -1
  14. data/lib/mutant.rb +22 -21
  15. data/lib/mutant/ast.rb +47 -0
  16. data/lib/mutant/cli.rb +7 -4
  17. data/lib/mutant/config.rb +1 -0
  18. data/lib/mutant/context.rb +1 -1
  19. data/lib/mutant/diff.rb +38 -7
  20. data/lib/mutant/env.rb +22 -3
  21. data/lib/mutant/expression.rb +15 -4
  22. data/lib/mutant/integration.rb +1 -1
  23. data/lib/mutant/isolation.rb +2 -4
  24. data/lib/mutant/matcher.rb +1 -1
  25. data/lib/mutant/matcher/method.rb +1 -1
  26. data/lib/mutant/matcher/method/singleton.rb +1 -1
  27. data/lib/mutant/matcher/methods.rb +0 -2
  28. data/lib/mutant/meta/example.rb +0 -2
  29. data/lib/mutant/meta/example/dsl.rb +1 -1
  30. data/lib/mutant/mutator.rb +1 -1
  31. data/lib/mutant/mutator/node.rb +3 -3
  32. data/lib/mutant/mutator/node/begin.rb +1 -1
  33. data/lib/mutant/mutator/node/block.rb +16 -3
  34. data/lib/mutant/mutator/node/if.rb +1 -1
  35. data/lib/mutant/mutator/node/literal/fixnum.rb +1 -1
  36. data/lib/mutant/mutator/node/resbody.rb +0 -2
  37. data/lib/mutant/mutator/node/send.rb +17 -7
  38. data/lib/mutant/mutator/node/send/index.rb +0 -2
  39. data/lib/mutant/mutator/registry.rb +1 -1
  40. data/lib/mutant/mutator/util.rb +1 -1
  41. data/lib/mutant/mutator/util/array.rb +1 -1
  42. data/lib/mutant/reporter.rb +13 -3
  43. data/lib/mutant/reporter/cli.rb +54 -8
  44. data/lib/mutant/reporter/cli/format.rb +197 -0
  45. data/lib/mutant/reporter/cli/printer.rb +402 -22
  46. data/lib/mutant/reporter/cli/tput.rb +27 -0
  47. data/lib/mutant/reporter/null.rb +4 -34
  48. data/lib/mutant/reporter/trace.rb +6 -38
  49. data/lib/mutant/result.rb +44 -56
  50. data/lib/mutant/runner.rb +99 -52
  51. data/lib/mutant/runner/collector.rb +134 -0
  52. data/lib/mutant/subject/method/instance.rb +12 -4
  53. data/lib/mutant/version.rb +1 -1
  54. data/lib/mutant/warning_filter.rb +0 -2
  55. data/lib/mutant/zombifier/file.rb +1 -1
  56. data/meta/block.rb +17 -1
  57. data/meta/send.rb +123 -1
  58. data/mutant-rspec.gemspec +3 -3
  59. data/mutant.gemspec +1 -1
  60. data/spec/integration/mutant/corpus_spec.rb +4 -195
  61. data/spec/integration/mutant/null_spec.rb +1 -3
  62. data/spec/integration/mutant/rspec_spec.rb +1 -3
  63. data/spec/integration/mutant/test_mutator_handles_types_spec.rb +1 -3
  64. data/spec/integration/mutant/zombie_spec.rb +1 -3
  65. data/spec/integrations.yml +7 -0
  66. data/spec/shared/method_matcher_behavior.rb +1 -1
  67. data/spec/spec_helper.rb +1 -0
  68. data/spec/support/compress_helper.rb +1 -0
  69. data/spec/support/corpus.rb +239 -0
  70. data/spec/support/mutation_verifier.rb +2 -4
  71. data/spec/unit/mutant/cli_spec.rb +20 -13
  72. data/spec/unit/mutant/context/root_spec.rb +1 -3
  73. data/spec/unit/mutant/context/scope/root_spec.rb +1 -3
  74. data/spec/unit/mutant/context/scope/unqualified_name_spec.rb +1 -3
  75. data/spec/unit/mutant/diff_spec.rb +37 -19
  76. data/spec/unit/mutant/expression/method_spec.rb +5 -7
  77. data/spec/unit/mutant/expression/methods_spec.rb +5 -7
  78. data/spec/unit/mutant/expression/namespace/flat_spec.rb +6 -8
  79. data/spec/unit/mutant/expression/namespace/recursive_spec.rb +6 -7
  80. data/spec/unit/mutant/expression_spec.rb +14 -5
  81. data/spec/unit/mutant/integration_spec.rb +14 -3
  82. data/spec/unit/mutant/isolation_spec.rb +2 -4
  83. data/spec/unit/mutant/loader/eval_spec.rb +1 -3
  84. data/spec/unit/mutant/matcher/chain_spec.rb +1 -3
  85. data/spec/unit/mutant/matcher/compiler/subject_prefix_spec.rb +21 -0
  86. data/spec/unit/mutant/matcher/compiler_spec.rb +28 -3
  87. data/spec/unit/mutant/matcher/filter_spec.rb +1 -3
  88. data/spec/unit/mutant/matcher/method/instance_spec.rb +3 -5
  89. data/spec/unit/mutant/matcher/method/singleton_spec.rb +22 -4
  90. data/spec/unit/mutant/matcher/methods/instance_spec.rb +7 -6
  91. data/spec/unit/mutant/matcher/methods/singleton_spec.rb +4 -6
  92. data/spec/unit/mutant/matcher/namespace_spec.rb +1 -3
  93. data/spec/unit/mutant/matcher/null_spec.rb +1 -3
  94. data/spec/unit/mutant/mutation_spec.rb +1 -3
  95. data/spec/unit/mutant/mutator/node_spec.rb +1 -3
  96. data/spec/unit/mutant/reporter/cli_spec.rb +444 -206
  97. data/spec/unit/mutant/reporter/null_spec.rb +1 -3
  98. data/spec/unit/mutant/require_highjack_spec.rb +1 -3
  99. data/spec/unit/mutant/runner_spec.rb +42 -28
  100. data/spec/unit/mutant/subject/context_spec.rb +1 -3
  101. data/spec/unit/mutant/subject/method/instance_spec.rb +27 -19
  102. data/spec/unit/mutant/subject/method/singleton_spec.rb +49 -17
  103. data/spec/unit/mutant/subject_spec.rb +1 -3
  104. data/spec/unit/mutant/test_spec.rb +1 -3
  105. data/spec/unit/mutant/warning_expectation.rb +1 -3
  106. data/spec/unit/mutant/warning_filter_spec.rb +1 -3
  107. data/spec/unit/mutant_spec.rb +13 -3
  108. data/test_app/Gemfile.devtools +2 -2
  109. data/test_app/spec/unit/test_app/literal/string_spec.rb +1 -1
  110. metadata +10 -21
  111. data/lib/mutant/matcher/method/finder.rb +0 -72
  112. data/lib/mutant/reporter/cli/progress.rb +0 -10
  113. data/lib/mutant/reporter/cli/progress/config.rb +0 -30
  114. data/lib/mutant/reporter/cli/progress/env.rb +0 -30
  115. data/lib/mutant/reporter/cli/progress/noop.rb +0 -27
  116. data/lib/mutant/reporter/cli/progress/result.rb +0 -12
  117. data/lib/mutant/reporter/cli/progress/result/mutation.rb +0 -45
  118. data/lib/mutant/reporter/cli/progress/result/subject.rb +0 -54
  119. data/lib/mutant/reporter/cli/progress/subject.rb +0 -27
  120. data/lib/mutant/reporter/cli/registry.rb +0 -81
  121. data/lib/mutant/reporter/cli/report.rb +0 -10
  122. data/lib/mutant/reporter/cli/report/env.rb +0 -92
  123. data/lib/mutant/reporter/cli/report/mutation.rb +0 -103
  124. data/lib/mutant/reporter/cli/report/subject.rb +0 -32
  125. data/lib/mutant/reporter/cli/report/test.rb +0 -28
  126. data/lib/mutant/walker.rb +0 -53
  127. data/spec/shared/mutator_behavior.rb +0 -55
@@ -1,6 +1,4 @@
1
- require 'spec_helper'
2
-
3
- describe Mutant::Reporter::Null do
1
+ RSpec.describe Mutant::Reporter::Null do
4
2
  let(:object) { described_class.new }
5
3
 
6
4
  describe '#report' do
@@ -1,6 +1,4 @@
1
- require 'spec_helper'
2
-
3
- describe Mutant::RequireHighjack do
1
+ RSpec.describe Mutant::RequireHighjack do
4
2
  let(:object) { described_class.new(target, highjacked_calls.method(:push)) }
5
3
 
6
4
  let(:highjacked_calls) { [] }
@@ -1,31 +1,29 @@
1
- require 'spec_helper'
1
+ class Double
2
+ include Concord.new(:name, :attributes)
3
+
4
+ def self.new(name, attributes = {})
5
+ super
6
+ end
7
+
8
+ def update(_attributes)
9
+ self
10
+ end
11
+
12
+ def method_missing(name, *arguments)
13
+ super unless attributes.key?(name)
14
+ fail "Arguments provided for #{name}" if arguments.any?
15
+ attributes.fetch(name)
16
+ end
17
+ end
2
18
 
3
19
  # FIXME: This is not even close to a mutation covering spec.
4
- describe Mutant::Runner do
20
+ RSpec.describe Mutant::Runner do
5
21
  let(:object) { described_class.new(env) }
6
22
 
7
23
  let(:reporter) { Mutant::Reporter::Trace.new }
8
24
  let(:config) { Mutant::Config::DEFAULT.update(reporter: reporter, isolation: Mutant::Isolation::None) }
9
25
  let(:subjects) { [subject_a, subject_b] }
10
26
 
11
- class Double
12
- include Concord.new(:name, :attributes)
13
-
14
- def self.new(name, attributes = {})
15
- super
16
- end
17
-
18
- def update(_attributes)
19
- self
20
- end
21
-
22
- def method_missing(name, *arguments)
23
- super unless attributes.key?(name)
24
- fail "Arguments provided for #{name}" if arguments.any?
25
- attributes.fetch(name)
26
- end
27
- end
28
-
29
27
  let(:subject_a) { Double.new('Subject A', mutations: mutations_a, tests: subject_a_tests) }
30
28
  let(:subject_b) { Double.new('Subject B', mutations: mutations_b) }
31
29
 
@@ -70,13 +68,15 @@ describe Mutant::Runner do
70
68
  subject: subject_a,
71
69
  mutation_results: [
72
70
  Mutant::Result::Mutation.new(
73
- mutation: mutation_a1,
74
- runtime: 0.0,
71
+ index: 0,
72
+ mutation: mutation_a1,
73
+ runtime: 0.0,
75
74
  test_results: [test_report_a1]
76
75
  ),
77
76
  Mutant::Result::Mutation.new(
78
- mutation: mutation_a2,
79
- runtime: 0.0,
77
+ index: 1,
78
+ mutation: mutation_a2,
79
+ runtime: 0.0,
80
80
  test_results: [test_report_a1]
81
81
  )
82
82
  ],
@@ -91,19 +91,33 @@ describe Mutant::Runner do
91
91
  end
92
92
 
93
93
  describe '#result' do
94
- context 'on normal execution' do
94
+ let(:expected_result) do
95
+ Mutant::Result::Env.new(
96
+ env: env,
97
+ runtime: 0.0,
98
+ done: false,
99
+ subject_results: expected_subject_results
100
+ )
101
+ end
102
+
103
+ pending 'on normal execution' do
95
104
  subject { object.result }
96
105
 
97
- its(:env) { should be(env) }
98
- its(:subject_results) { should eql(expected_subject_results) }
106
+ its(:env) { should be(env) }
107
+
108
+ it 'reports result' do
109
+ expect { subject }.to change { config.reporter.report_calls }.from([]).to([expected_result])
110
+ end
99
111
  end
100
112
 
101
- context 'when isolation raises error' do
113
+ skip 'when isolation raises error' do
102
114
  subject { object.result }
103
115
 
104
116
  its(:env) { should be(env) }
105
117
  its(:subject_results) { should eql(expected_subject_results) }
106
118
 
119
+ it { should eql(expected_result) }
120
+
107
121
  before do
108
122
  expect(Mutant::Isolation::None).to receive(:call)
109
123
  .twice
@@ -1,6 +1,4 @@
1
- require 'spec_helper'
2
-
3
- describe Mutant::Subject, '#context' do
1
+ RSpec.describe Mutant::Subject, '#context' do
4
2
  subject { object.context }
5
3
 
6
4
  let(:class_under_test) do
@@ -1,33 +1,41 @@
1
- # encoding: UTF-8
2
-
3
- require 'spec_helper'
4
-
5
- describe Mutant::Subject::Method::Instance do
1
+ RSpec.describe Mutant::Subject::Method::Instance do
6
2
  let(:object) { described_class.new(config, context, node) }
7
- let(:context) { double }
3
+ let(:context) { Mutant::Context::Scope.new(scope, double('Source Path')) }
8
4
  let(:config) { Mutant::Config::DEFAULT }
9
5
 
10
6
  let(:node) do
11
7
  s(:def, :foo, s(:args))
12
8
  end
13
9
 
14
- describe '#prepare' do
10
+ let(:scope) do
11
+ Class.new do
12
+ attr_reader :bar
15
13
 
16
- let(:context) do
17
- Mutant::Context::Scope.new(scope, double('Source Path'))
14
+ def initialize
15
+ @bar = :boo
16
+ end
17
+
18
+ def foo
19
+ end
20
+
21
+ def self.name
22
+ 'Test'
23
+ end
18
24
  end
25
+ end
19
26
 
20
- let(:scope) do
21
- Class.new do
22
- attr_reader :bar
27
+ describe '#expression' do
28
+ subject { object.expression }
23
29
 
24
- def initialize
25
- @bar = :boo
26
- end
30
+ it { should eql(Mutant::Expression.parse('Test#foo')) }
27
31
 
28
- def foo
29
- end
30
- end
32
+ it_should_behave_like 'an idempotent method'
33
+ end
34
+
35
+ describe '#prepare' do
36
+
37
+ let(:context) do
38
+ Mutant::Context::Scope.new(scope, double('Source Path'))
31
39
  end
32
40
 
33
41
  subject { object.prepare }
@@ -71,7 +79,7 @@ describe Mutant::Subject::Method::Instance do
71
79
  end
72
80
  end
73
81
 
74
- describe Mutant::Subject::Method::Instance::Memoized do
82
+ RSpec.describe Mutant::Subject::Method::Instance::Memoized do
75
83
  let(:object) { described_class.new(config, context, node) }
76
84
  let(:context) { double }
77
85
  let(:config) { Mutant::Config::DEFAULT }
@@ -1,29 +1,33 @@
1
- # encoding: UTF-8
2
-
3
- require 'spec_helper'
4
-
5
- describe Mutant::Subject::Method::Singleton do
1
+ RSpec.describe Mutant::Subject::Method::Singleton do
6
2
 
7
3
  let(:object) { described_class.new(config, context, node) }
8
4
  let(:config) { Mutant::Config::DEFAULT }
9
- let(:context) { double }
5
+ let(:node) { s(:defs, s(:self), :foo, s(:args)) }
10
6
 
11
- let(:node) do
12
- s(:defs, s(:self), :foo, s(:args))
7
+ let(:context) do
8
+ Mutant::Context::Scope.new(scope, double('Source Path'))
13
9
  end
14
10
 
15
- describe '#prepare' do
16
-
17
- let(:context) do
18
- Mutant::Context::Scope.new(scope, double('Source Path'))
19
- end
11
+ let(:scope) do
12
+ Class.new do
13
+ def self.foo
14
+ end
20
15
 
21
- let(:scope) do
22
- Class.new do
23
- def self.foo
24
- end
16
+ def self.name
17
+ 'Test'
25
18
  end
26
19
  end
20
+ end
21
+
22
+ describe '#expression' do
23
+ subject { object.expression }
24
+
25
+ it { should eql(Mutant::Expression.parse('Test.foo')) }
26
+
27
+ it_should_behave_like 'an idempotent method'
28
+ end
29
+
30
+ describe '#prepare' do
27
31
 
28
32
  subject { object.prepare }
29
33
 
@@ -39,4 +43,32 @@ describe Mutant::Subject::Method::Singleton do
39
43
 
40
44
  it { should eql("def self.foo\nend") }
41
45
  end
46
+
47
+ describe '#public?' do
48
+ subject { object.public? }
49
+
50
+ context 'when method is public' do
51
+ it { should be(true) }
52
+ end
53
+
54
+ context 'when method is private' do
55
+ before do
56
+ scope.class_eval do
57
+ private_class_method :foo
58
+ end
59
+ end
60
+
61
+ it { should be(false) }
62
+ end
63
+
64
+ context 'when method is protected' do
65
+ before do
66
+ class << scope
67
+ protected :foo
68
+ end
69
+ end
70
+
71
+ it { should be(false) }
72
+ end
73
+ end
42
74
  end
@@ -1,6 +1,4 @@
1
- require 'spec_helper'
2
-
3
- describe Mutant::Subject do
1
+ RSpec.describe Mutant::Subject do
4
2
  let(:class_under_test) do
5
3
  Class.new(described_class) do
6
4
  def expression
@@ -1,6 +1,4 @@
1
- require 'spec_helper'
2
-
3
- describe Mutant::Test do
1
+ RSpec.describe Mutant::Test do
4
2
  let(:object) { described_class.new(integration, expression) }
5
3
 
6
4
  let(:integration) { double('Integration', name: 'test-integration') }
@@ -1,6 +1,4 @@
1
- require 'spec_helper'
2
-
3
- describe Mutant::WarningExpectation do
1
+ RSpec.describe Mutant::WarningExpectation do
4
2
  let(:object) { described_class.new(expected_warnings) }
5
3
 
6
4
  let(:expected_warnings) { [] }
@@ -1,6 +1,4 @@
1
- require 'spec_helper'
2
-
3
- describe Mutant::WarningFilter do
1
+ RSpec.describe Mutant::WarningFilter do
4
2
  before do
5
3
  if RUBY_ENGINE.eql?('rbx')
6
4
  skip 'Disabled because expected warnings are from MRI'
@@ -1,8 +1,18 @@
1
- require 'spec_helper'
2
-
3
- describe Mutant do
1
+ RSpec.describe Mutant do
4
2
  let(:object) { described_class }
5
3
 
4
+ describe '.ci?' do
5
+ subject { object.ci? }
6
+
7
+ let(:result) { double('Result') }
8
+
9
+ before do
10
+ expect(ENV).to receive(:key?).with('CI').and_return(result)
11
+ end
12
+
13
+ it { should be(result) }
14
+ end
15
+
6
16
  describe '.zombify' do
7
17
  subject { object.zombify }
8
18
 
@@ -2,8 +2,8 @@
2
2
 
3
3
  group :development do
4
4
  gem 'rake', '~> 10.3.2'
5
- gem 'rspec', '~> 2.99.0'
6
- gem 'rspec-core', '~> 2.99.0'
5
+ gem 'rspec', '~> 3.0.0'
6
+ gem 'rspec-its', '~> 1.0.1'
7
7
  gem 'yard', '~> 0.8.7.4'
8
8
 
9
9
  platform :rbx do
@@ -2,7 +2,7 @@
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
- describe TestApp::Literal, '#string' do
5
+ RSpec.describe TestApp::Literal, '#string' do
6
6
  subject { object.string }
7
7
 
8
8
  let(:object) { described_class.new }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mutant
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.26
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Markus Schirp
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-08 00:00:00.000000000 Z
11
+ date: 2014-08-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: parser
@@ -212,14 +212,14 @@ dependencies:
212
212
  requirements:
213
213
  - - "~>"
214
214
  - !ruby/object:Gem::Version
215
- version: 1.0.0
215
+ version: 1.2.0
216
216
  type: :runtime
217
217
  prerelease: false
218
218
  version_requirements: !ruby/object:Gem::Requirement
219
219
  requirements:
220
220
  - - "~>"
221
221
  - !ruby/object:Gem::Version
222
- version: 1.0.0
222
+ version: 1.2.0
223
223
  - !ruby/object:Gem::Dependency
224
224
  name: bundler
225
225
  requirement: !ruby/object:Gem::Requirement
@@ -303,7 +303,6 @@ files:
303
303
  - lib/mutant/matcher/config.rb
304
304
  - lib/mutant/matcher/filter.rb
305
305
  - lib/mutant/matcher/method.rb
306
- - lib/mutant/matcher/method/finder.rb
307
306
  - lib/mutant/matcher/method/instance.rb
308
307
  - lib/mutant/matcher/method/singleton.rb
309
308
  - lib/mutant/matcher/methods.rb
@@ -375,33 +374,21 @@ files:
375
374
  - lib/mutant/mutator/util/symbol.rb
376
375
  - lib/mutant/reporter.rb
377
376
  - lib/mutant/reporter/cli.rb
377
+ - lib/mutant/reporter/cli/format.rb
378
378
  - lib/mutant/reporter/cli/printer.rb
379
- - lib/mutant/reporter/cli/progress.rb
380
- - lib/mutant/reporter/cli/progress/config.rb
381
- - lib/mutant/reporter/cli/progress/env.rb
382
- - lib/mutant/reporter/cli/progress/noop.rb
383
- - lib/mutant/reporter/cli/progress/result.rb
384
- - lib/mutant/reporter/cli/progress/result/mutation.rb
385
- - lib/mutant/reporter/cli/progress/result/subject.rb
386
- - lib/mutant/reporter/cli/progress/subject.rb
387
- - lib/mutant/reporter/cli/registry.rb
388
- - lib/mutant/reporter/cli/report.rb
389
- - lib/mutant/reporter/cli/report/env.rb
390
- - lib/mutant/reporter/cli/report/mutation.rb
391
- - lib/mutant/reporter/cli/report/subject.rb
392
- - lib/mutant/reporter/cli/report/test.rb
379
+ - lib/mutant/reporter/cli/tput.rb
393
380
  - lib/mutant/reporter/null.rb
394
381
  - lib/mutant/reporter/trace.rb
395
382
  - lib/mutant/require_highjack.rb
396
383
  - lib/mutant/result.rb
397
384
  - lib/mutant/runner.rb
385
+ - lib/mutant/runner/collector.rb
398
386
  - lib/mutant/subject.rb
399
387
  - lib/mutant/subject/method.rb
400
388
  - lib/mutant/subject/method/instance.rb
401
389
  - lib/mutant/subject/method/singleton.rb
402
390
  - lib/mutant/test.rb
403
391
  - lib/mutant/version.rb
404
- - lib/mutant/walker.rb
405
392
  - lib/mutant/warning_expectation.rb
406
393
  - lib/mutant/warning_filter.rb
407
394
  - lib/mutant/zombifier.rb
@@ -471,9 +458,9 @@ files:
471
458
  - spec/integrations.yml
472
459
  - spec/rcov.opts
473
460
  - spec/shared/method_matcher_behavior.rb
474
- - spec/shared/mutator_behavior.rb
475
461
  - spec/spec_helper.rb
476
462
  - spec/support/compress_helper.rb
463
+ - spec/support/corpus.rb
477
464
  - spec/support/ice_nine_config.rb
478
465
  - spec/support/mutation_verifier.rb
479
466
  - spec/support/rspec.rb
@@ -492,6 +479,7 @@ files:
492
479
  - spec/unit/mutant/isolation_spec.rb
493
480
  - spec/unit/mutant/loader/eval_spec.rb
494
481
  - spec/unit/mutant/matcher/chain_spec.rb
482
+ - spec/unit/mutant/matcher/compiler/subject_prefix_spec.rb
495
483
  - spec/unit/mutant/matcher/compiler_spec.rb
496
484
  - spec/unit/mutant/matcher/filter_spec.rb
497
485
  - spec/unit/mutant/matcher/method/instance_spec.rb
@@ -567,6 +555,7 @@ test_files:
567
555
  - spec/unit/mutant/isolation_spec.rb
568
556
  - spec/unit/mutant/loader/eval_spec.rb
569
557
  - spec/unit/mutant/matcher/chain_spec.rb
558
+ - spec/unit/mutant/matcher/compiler/subject_prefix_spec.rb
570
559
  - spec/unit/mutant/matcher/compiler_spec.rb
571
560
  - spec/unit/mutant/matcher/filter_spec.rb
572
561
  - spec/unit/mutant/matcher/method/instance_spec.rb