mutant 0.8.24 → 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (218) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +3 -3
  3. data/Changelog.md +14 -654
  4. data/Gemfile +13 -0
  5. data/Gemfile.lock +59 -64
  6. data/LICENSE +271 -20
  7. data/README.md +73 -140
  8. data/Rakefile +0 -21
  9. data/bin/mutant +7 -2
  10. data/config/reek.yml +2 -1
  11. data/config/rubocop.yml +5 -9
  12. data/docs/incremental.md +76 -0
  13. data/docs/known-problems.md +0 -14
  14. data/docs/mutant-minitest.md +1 -1
  15. data/docs/mutant-rspec.md +2 -24
  16. data/lib/mutant.rb +45 -53
  17. data/lib/mutant/ast/nodes.rb +0 -2
  18. data/lib/mutant/ast/types.rb +1 -117
  19. data/lib/mutant/base.rb +192 -0
  20. data/lib/mutant/bootstrap.rb +145 -0
  21. data/lib/mutant/cli.rb +68 -54
  22. data/lib/mutant/config.rb +119 -6
  23. data/lib/mutant/env.rb +94 -8
  24. data/lib/mutant/expression.rb +6 -1
  25. data/lib/mutant/expression/parser.rb +9 -31
  26. data/lib/mutant/integration.rb +64 -36
  27. data/lib/mutant/isolation.rb +16 -1
  28. data/lib/mutant/isolation/fork.rb +105 -40
  29. data/lib/mutant/license.rb +34 -0
  30. data/lib/mutant/license/subscription.rb +47 -0
  31. data/lib/mutant/license/subscription/commercial.rb +57 -0
  32. data/lib/mutant/license/subscription/opensource.rb +77 -0
  33. data/lib/mutant/loader.rb +27 -4
  34. data/lib/mutant/matcher.rb +48 -1
  35. data/lib/mutant/matcher/chain.rb +1 -1
  36. data/lib/mutant/matcher/config.rb +0 -2
  37. data/lib/mutant/matcher/filter.rb +1 -1
  38. data/lib/mutant/matcher/method.rb +11 -7
  39. data/lib/mutant/matcher/methods.rb +1 -1
  40. data/lib/mutant/matcher/namespace.rb +1 -1
  41. data/lib/mutant/matcher/null.rb +1 -1
  42. data/lib/mutant/matcher/scope.rb +1 -1
  43. data/lib/mutant/meta/example/dsl.rb +0 -8
  44. data/lib/mutant/mutation.rb +1 -2
  45. data/lib/mutant/mutator/node.rb +2 -9
  46. data/lib/mutant/mutator/node/arguments.rb +1 -1
  47. data/lib/mutant/mutator/node/class.rb +0 -8
  48. data/lib/mutant/mutator/node/define.rb +0 -12
  49. data/lib/mutant/mutator/node/generic.rb +30 -44
  50. data/lib/mutant/mutator/node/index.rb +4 -4
  51. data/lib/mutant/mutator/node/literal/regex.rb +0 -39
  52. data/lib/mutant/mutator/node/send.rb +13 -12
  53. data/lib/mutant/parallel.rb +61 -40
  54. data/lib/mutant/parallel/driver.rb +59 -0
  55. data/lib/mutant/parallel/source.rb +6 -2
  56. data/lib/mutant/parallel/worker.rb +63 -45
  57. data/lib/mutant/range.rb +15 -0
  58. data/lib/mutant/reporter/cli.rb +5 -11
  59. data/lib/mutant/reporter/cli/format.rb +3 -46
  60. data/lib/mutant/reporter/cli/printer/config.rb +5 -6
  61. data/lib/mutant/reporter/cli/printer/env.rb +40 -0
  62. data/lib/mutant/reporter/cli/printer/env_progress.rb +13 -17
  63. data/lib/mutant/reporter/cli/printer/isolation_result.rb +17 -3
  64. data/lib/mutant/reporter/cli/printer/mutation_result.rb +2 -3
  65. data/lib/mutant/reporter/cli/printer/status_progressive.rb +19 -10
  66. data/lib/mutant/repository.rb +0 -65
  67. data/lib/mutant/repository/diff.rb +104 -0
  68. data/lib/mutant/repository/diff/ranges.rb +52 -0
  69. data/lib/mutant/result.rb +16 -7
  70. data/lib/mutant/runner.rb +38 -47
  71. data/lib/mutant/runner/sink.rb +1 -1
  72. data/lib/mutant/selector/null.rb +19 -0
  73. data/lib/mutant/subject.rb +3 -1
  74. data/lib/mutant/subject/method/instance.rb +3 -1
  75. data/lib/mutant/transform.rb +511 -0
  76. data/lib/mutant/variable.rb +282 -0
  77. data/lib/mutant/version.rb +1 -1
  78. data/lib/mutant/warnings.rb +113 -0
  79. data/meta/case.rb +1 -0
  80. data/meta/class.rb +0 -9
  81. data/meta/def.rb +1 -26
  82. data/meta/regexp.rb +10 -20
  83. data/meta/send.rb +14 -46
  84. data/mutant-minitest.gemspec +1 -1
  85. data/mutant-rspec.gemspec +2 -2
  86. data/mutant.gemspec +15 -16
  87. data/mutant.yml +6 -0
  88. data/spec/integration/mutant/isolation/fork_spec.rb +22 -5
  89. data/spec/integration/mutant/minitest_spec.rb +3 -2
  90. data/spec/integration/mutant/rspec_spec.rb +4 -3
  91. data/spec/integrations.yml +16 -13
  92. data/spec/shared/base_behavior.rb +45 -0
  93. data/spec/shared/framework_integration_behavior.rb +43 -14
  94. data/spec/spec_helper.rb +21 -17
  95. data/spec/support/corpus.rb +56 -95
  96. data/spec/support/shared_context.rb +37 -14
  97. data/spec/support/xspec.rb +7 -3
  98. data/spec/unit/mutant/bootstrap_spec.rb +216 -0
  99. data/spec/unit/mutant/cli_spec.rb +173 -117
  100. data/spec/unit/mutant/config_spec.rb +126 -0
  101. data/spec/unit/mutant/either_spec.rb +247 -0
  102. data/spec/unit/mutant/env_spec.rb +162 -40
  103. data/spec/unit/mutant/expression/method_spec.rb +16 -0
  104. data/spec/unit/mutant/expression/parser_spec.rb +29 -33
  105. data/spec/unit/mutant/expression_spec.rb +5 -7
  106. data/spec/unit/mutant/integration_spec.rb +100 -9
  107. data/spec/unit/mutant/isolation/fork_spec.rb +125 -67
  108. data/spec/unit/mutant/isolation/result_spec.rb +33 -1
  109. data/spec/unit/mutant/license_spec.rb +257 -0
  110. data/spec/unit/mutant/loader_spec.rb +50 -11
  111. data/spec/unit/mutant/matcher/compiler_spec.rb +0 -78
  112. data/spec/unit/mutant/matcher/method/instance_spec.rb +55 -11
  113. data/spec/unit/mutant/matcher/method/singleton_spec.rb +12 -2
  114. data/spec/unit/mutant/matcher_spec.rb +102 -0
  115. data/spec/unit/mutant/maybe_spec.rb +60 -0
  116. data/spec/unit/mutant/meta/example/dsl_spec.rb +1 -17
  117. data/spec/unit/mutant/mutation_spec.rb +13 -6
  118. data/spec/unit/mutant/parallel/driver_spec.rb +112 -14
  119. data/spec/unit/mutant/parallel/source/array_spec.rb +25 -17
  120. data/spec/unit/mutant/parallel/worker_spec.rb +182 -44
  121. data/spec/unit/mutant/parallel_spec.rb +105 -8
  122. data/spec/unit/mutant/range_spec.rb +141 -0
  123. data/spec/unit/mutant/reporter/cli/printer/config_spec.rb +7 -21
  124. data/spec/unit/mutant/reporter/cli/printer/env_progress_spec.rb +15 -6
  125. data/spec/unit/mutant/reporter/cli/printer/env_result_spec.rb +10 -2
  126. data/spec/unit/mutant/reporter/cli/printer/isolation_result_spec.rb +12 -4
  127. data/spec/unit/mutant/reporter/cli/printer/mutation_result_spec.rb +31 -2
  128. data/spec/unit/mutant/reporter/cli/printer/status_progressive_spec.rb +4 -4
  129. data/spec/unit/mutant/reporter/cli/printer/subject_result_spec.rb +5 -0
  130. data/spec/unit/mutant/reporter/cli_spec.rb +46 -123
  131. data/spec/unit/mutant/repository/diff/ranges_spec.rb +180 -0
  132. data/spec/unit/mutant/repository/diff_spec.rb +84 -71
  133. data/spec/unit/mutant/require_highjack_spec.rb +1 -1
  134. data/spec/unit/mutant/result/env_spec.rb +39 -9
  135. data/spec/unit/mutant/result/test_spec.rb +14 -0
  136. data/spec/unit/mutant/runner_spec.rb +88 -41
  137. data/spec/unit/mutant/selector/expression_spec.rb +11 -10
  138. data/spec/unit/mutant/selector/null_spec.rb +17 -0
  139. data/spec/unit/mutant/subject/method/instance_spec.rb +44 -5
  140. data/spec/unit/mutant/subject/method/singleton_spec.rb +9 -2
  141. data/spec/unit/mutant/subject_spec.rb +9 -1
  142. data/spec/unit/mutant/transform/array_spec.rb +92 -0
  143. data/spec/unit/mutant/transform/bool_spec.rb +63 -0
  144. data/spec/unit/mutant/transform/error_spec.rb +132 -0
  145. data/spec/unit/mutant/transform/exception_spec.rb +44 -0
  146. data/spec/unit/mutant/transform/hash_spec.rb +236 -0
  147. data/spec/unit/mutant/transform/index_spec.rb +92 -0
  148. data/spec/unit/mutant/transform/named_spec.rb +49 -0
  149. data/spec/unit/mutant/transform/primitive_spec.rb +56 -0
  150. data/spec/unit/mutant/transform/sequence_spec.rb +98 -0
  151. data/spec/unit/mutant/variable_spec.rb +618 -0
  152. data/spec/unit/mutant/warnings_spec.rb +89 -0
  153. data/spec/unit/mutant/world_spec.rb +63 -0
  154. data/test_app/Gemfile.minitest +0 -2
  155. metadata +79 -113
  156. data/.gitattributes +0 -1
  157. data/.ruby-gemset +0 -1
  158. data/config/triage.yml +0 -2
  159. data/lib/mutant/actor.rb +0 -57
  160. data/lib/mutant/actor/env.rb +0 -31
  161. data/lib/mutant/actor/mailbox.rb +0 -34
  162. data/lib/mutant/actor/receiver.rb +0 -42
  163. data/lib/mutant/actor/sender.rb +0 -26
  164. data/lib/mutant/ast/meta/restarg.rb +0 -19
  165. data/lib/mutant/ast/regexp.rb +0 -42
  166. data/lib/mutant/ast/regexp/transformer.rb +0 -187
  167. data/lib/mutant/ast/regexp/transformer/direct.rb +0 -123
  168. data/lib/mutant/ast/regexp/transformer/named_group.rb +0 -59
  169. data/lib/mutant/ast/regexp/transformer/options_group.rb +0 -83
  170. data/lib/mutant/ast/regexp/transformer/quantifier.rb +0 -114
  171. data/lib/mutant/ast/regexp/transformer/recursive.rb +0 -58
  172. data/lib/mutant/ast/regexp/transformer/root.rb +0 -31
  173. data/lib/mutant/ast/regexp/transformer/text.rb +0 -60
  174. data/lib/mutant/env/bootstrap.rb +0 -160
  175. data/lib/mutant/matcher/compiler.rb +0 -60
  176. data/lib/mutant/mutator/node/regexp.rb +0 -35
  177. data/lib/mutant/mutator/node/regexp/alternation_meta.rb +0 -23
  178. data/lib/mutant/mutator/node/regexp/capture_group.rb +0 -28
  179. data/lib/mutant/mutator/node/regexp/character_type.rb +0 -32
  180. data/lib/mutant/mutator/node/regexp/end_of_line_anchor.rb +0 -23
  181. data/lib/mutant/mutator/node/regexp/end_of_string_or_before_end_of_line_anchor.rb +0 -23
  182. data/lib/mutant/mutator/node/regexp/greedy_zero_or_more.rb +0 -27
  183. data/lib/mutant/parallel/master.rb +0 -181
  184. data/lib/mutant/reporter/cli/printer/status.rb +0 -53
  185. data/lib/mutant/reporter/cli/tput.rb +0 -46
  186. data/lib/mutant/warning_filter.rb +0 -61
  187. data/meta/regexp/character_types.rb +0 -23
  188. data/meta/regexp/regexp_alternation_meta.rb +0 -13
  189. data/meta/regexp/regexp_bol_anchor.rb +0 -10
  190. data/meta/regexp/regexp_bos_anchor.rb +0 -18
  191. data/meta/regexp/regexp_capture_group.rb +0 -19
  192. data/meta/regexp/regexp_eol_anchor.rb +0 -10
  193. data/meta/regexp/regexp_eos_anchor.rb +0 -8
  194. data/meta/regexp/regexp_eos_ob_eol_anchor.rb +0 -10
  195. data/meta/regexp/regexp_greedy_zero_or_more.rb +0 -12
  196. data/meta/regexp/regexp_root_expression.rb +0 -10
  197. data/meta/restarg.rb +0 -10
  198. data/spec/support/fake_actor.rb +0 -111
  199. data/spec/support/warning.rb +0 -66
  200. data/spec/unit/mutant/actor/binding_spec.rb +0 -34
  201. data/spec/unit/mutant/actor/env_spec.rb +0 -31
  202. data/spec/unit/mutant/actor/mailbox_spec.rb +0 -28
  203. data/spec/unit/mutant/actor/message_spec.rb +0 -25
  204. data/spec/unit/mutant/actor/receiver_spec.rb +0 -58
  205. data/spec/unit/mutant/actor/sender_spec.rb +0 -24
  206. data/spec/unit/mutant/ast/regexp/parse_spec.rb +0 -19
  207. data/spec/unit/mutant/ast/regexp/transformer/lookup_table/table_spec.rb +0 -21
  208. data/spec/unit/mutant/ast/regexp/transformer/lookup_table_spec.rb +0 -35
  209. data/spec/unit/mutant/ast/regexp/transformer_spec.rb +0 -21
  210. data/spec/unit/mutant/ast/regexp_spec.rb +0 -704
  211. data/spec/unit/mutant/env/bootstrap_spec.rb +0 -188
  212. data/spec/unit/mutant/matcher/compiler/subject_prefix_spec.rb +0 -26
  213. data/spec/unit/mutant/parallel/master_spec.rb +0 -338
  214. data/spec/unit/mutant/reporter/cli/printer/status_spec.rb +0 -121
  215. data/spec/unit/mutant/reporter/cli/tput_spec.rb +0 -50
  216. data/spec/unit/mutant/warning_filter_spec.rb +0 -106
  217. data/spec/unit/mutant_spec.rb +0 -17
  218. data/test_app/Gemfile.rspec3.7 +0 -7
@@ -0,0 +1,89 @@
1
+ # frozen_string_literal: true
2
+
3
+ RSpec.describe Mutant::Warnings do
4
+ subject { described_class.new(warning_module) }
5
+
6
+ before do
7
+ subject # make sure we infect the module in any case
8
+ end
9
+
10
+ let(:original_messages) do
11
+ []
12
+ end
13
+
14
+ let(:warning_module) do
15
+ original_messages = original_messages()
16
+
17
+ # Simulation of corelib `Warning` module
18
+ Module.new do
19
+ module_function def warn(*arguments)
20
+ messages << arguments
21
+ end
22
+
23
+ module_function define_method(:messages) { original_messages }
24
+ end
25
+ end
26
+
27
+ def cause_warnings
28
+ original_messages.clear
29
+
30
+ warning_module = warning_module()
31
+
32
+ warning_module.warn('warning-a')
33
+
34
+ Class
35
+ .new { include warning_module }
36
+ .new
37
+ .instance_eval { warn('warning-b') }
38
+ end
39
+
40
+ describe '#call' do
41
+ def apply
42
+ subject.call { cause_warnings }
43
+ end
44
+
45
+ def expect_captured_messages(captured_messages)
46
+ expect(captured_messages).to eql([%w[warning-a], %w[warning-b]])
47
+ expect(captured_messages.frozen?).to eql(true)
48
+ expect(captured_messages.map(&:frozen?)).to eql([true, true])
49
+ expect(captured_messages.flat_map(&:frozen?)).to eql([true, true])
50
+ expect(original_messages).to eql([])
51
+ end
52
+
53
+ def expect_original_messages
54
+ expect(original_messages).to eql([%w[warning-a], %w[warning-b]])
55
+ end
56
+
57
+ it 'captures expected warnings during block execution' do
58
+ expect_captured_messages(apply)
59
+ expect(original_messages).to eql([])
60
+ end
61
+
62
+ it 'captures expected warnings during repeated block execution' do
63
+ expect_captured_messages(apply)
64
+ expect_captured_messages(apply)
65
+ end
66
+
67
+ it 'does use original implementation without block execution' do
68
+ cause_warnings
69
+ expect_original_messages
70
+ end
71
+
72
+ it 'does use original implementation before block execution' do
73
+ cause_warnings
74
+ expect_original_messages
75
+ expect_captured_messages(apply)
76
+ end
77
+
78
+ it 'does use original implementation after block execution' do
79
+ expect_captured_messages(apply)
80
+ cause_warnings
81
+ expect_original_messages
82
+ end
83
+
84
+ it 'rejects re-entrant use' do
85
+ expect { subject.call { subject.call } }
86
+ .to raise_error(described_class::RecursiveUseError)
87
+ end
88
+ end
89
+ end
@@ -0,0 +1,63 @@
1
+ # frozen_string_literal: true
2
+
3
+ RSpec.describe Mutant::World do
4
+ subject do
5
+ Mutant::WORLD
6
+ end
7
+
8
+ describe '#inspect' do
9
+ def apply
10
+ subject.inspect
11
+ end
12
+
13
+ it 'returns expected value' do
14
+ expect(apply).to eql('#<Mutant::World>')
15
+ end
16
+
17
+ it 'is frozen' do
18
+ expect(apply.frozen?).to be(true)
19
+ end
20
+
21
+ it 'is idempotent' do
22
+ expect(apply).to be(apply)
23
+ end
24
+ end
25
+
26
+ describe '#capture_stdout' do
27
+ def apply
28
+ subject.capture_stdout(command)
29
+ end
30
+
31
+ let(:open3) { class_double(Open3) }
32
+ let(:stdout) { instance_double(String, :stdout) }
33
+ let(:subject) { super().with(open3: open3) }
34
+ let(:command) { %w[foo bar baz] }
35
+
36
+ let(:process_status) do
37
+ instance_double(
38
+ Process::Status,
39
+ success?: success?
40
+ )
41
+ end
42
+
43
+ before do
44
+ allow(open3).to receive_messages(capture2: [stdout, process_status])
45
+ end
46
+
47
+ context 'when process exists successful' do
48
+ let(:success?) { true }
49
+
50
+ it 'returns stdout' do
51
+ expect(apply).to eql(Mutant::Either::Right.new(stdout))
52
+ end
53
+ end
54
+
55
+ context 'when process exists unsuccessful' do
56
+ let(:success?) { false }
57
+
58
+ it 'returns stdout' do
59
+ expect(apply).to eql(Mutant::Either::Left.new("Command #{command.inspect} failed!"))
60
+ end
61
+ end
62
+ end
63
+ end
@@ -1,6 +1,4 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
- gem 'minitest', '~> 5.11'
4
3
  gem 'mutant', path: '../'
5
4
  gem 'mutant-minitest', path: '../'
6
- gem 'adamantium'
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.8.24
4
+ version: 0.9.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: 2018-12-29 00:00:00.000000000 Z
11
+ date: 2020-01-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: abstract_type
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 0.3.0
47
+ version: 0.3.1
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 0.3.0
54
+ version: 0.3.1
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: ast
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -137,33 +137,33 @@ dependencies:
137
137
  - !ruby/object:Gem::Version
138
138
  version: 0.4.2
139
139
  - !ruby/object:Gem::Dependency
140
- name: morpher
140
+ name: mutant-license
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
143
  - - "~>"
144
144
  - !ruby/object:Gem::Version
145
- version: 0.2.6
145
+ version: 0.1.0
146
146
  type: :runtime
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
150
  - - "~>"
151
151
  - !ruby/object:Gem::Version
152
- version: 0.2.6
152
+ version: 0.1.0
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: parser
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
- - - "~>"
157
+ - - '='
158
158
  - !ruby/object:Gem::Version
159
- version: 2.5.1
159
+ version: 2.6.3
160
160
  type: :runtime
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
- - - "~>"
164
+ - - '='
165
165
  - !ruby/object:Gem::Version
166
- version: 2.5.1
166
+ version: 2.6.3
167
167
  - !ruby/object:Gem::Dependency
168
168
  name: procto
169
169
  requirement: !ruby/object:Gem::Requirement
@@ -178,48 +178,34 @@ dependencies:
178
178
  - - "~>"
179
179
  - !ruby/object:Gem::Version
180
180
  version: 0.0.2
181
- - !ruby/object:Gem::Dependency
182
- name: regexp_parser
183
- requirement: !ruby/object:Gem::Requirement
184
- requirements:
185
- - - "~>"
186
- - !ruby/object:Gem::Version
187
- version: '1.2'
188
- type: :runtime
189
- prerelease: false
190
- version_requirements: !ruby/object:Gem::Requirement
191
- requirements:
192
- - - "~>"
193
- - !ruby/object:Gem::Version
194
- version: '1.2'
195
181
  - !ruby/object:Gem::Dependency
196
182
  name: unparser
197
183
  requirement: !ruby/object:Gem::Requirement
198
184
  requirements:
199
185
  - - "~>"
200
186
  - !ruby/object:Gem::Version
201
- version: 0.4.2
187
+ version: 0.4.5
202
188
  type: :runtime
203
189
  prerelease: false
204
190
  version_requirements: !ruby/object:Gem::Requirement
205
191
  requirements:
206
192
  - - "~>"
207
193
  - !ruby/object:Gem::Version
208
- version: 0.4.2
194
+ version: 0.4.5
209
195
  - !ruby/object:Gem::Dependency
210
196
  name: devtools
211
197
  requirement: !ruby/object:Gem::Requirement
212
198
  requirements:
213
199
  - - "~>"
214
200
  - !ruby/object:Gem::Version
215
- version: 0.1.22
201
+ version: 0.1.23
216
202
  type: :development
217
203
  prerelease: false
218
204
  version_requirements: !ruby/object:Gem::Requirement
219
205
  requirements:
220
206
  - - "~>"
221
207
  - !ruby/object:Gem::Version
222
- version: 0.1.22
208
+ version: 0.1.23
223
209
  - !ruby/object:Gem::Dependency
224
210
  name: parallel
225
211
  requirement: !ruby/object:Gem::Requirement
@@ -244,11 +230,9 @@ extra_rdoc_files:
244
230
  - LICENSE
245
231
  files:
246
232
  - ".circleci/config.yml"
247
- - ".gitattributes"
248
233
  - ".gitignore"
249
234
  - ".rspec"
250
235
  - ".rubocop.yml"
251
- - ".ruby-gemset"
252
236
  - Changelog.md
253
237
  - Gemfile
254
238
  - Gemfile.lock
@@ -260,9 +244,9 @@ files:
260
244
  - config/devtools.yml
261
245
  - config/reek.yml
262
246
  - config/rubocop.yml
263
- - config/triage.yml
264
247
  - config/yardstick.yml
265
248
  - docs/concurrency.md
249
+ - docs/incremental.md
266
250
  - docs/known-problems.md
267
251
  - docs/limitations.md
268
252
  - docs/mutant-minitest.md
@@ -270,40 +254,26 @@ files:
270
254
  - docs/nomenclature.md
271
255
  - docs/reading-reports.md
272
256
  - lib/mutant.rb
273
- - lib/mutant/actor.rb
274
- - lib/mutant/actor/env.rb
275
- - lib/mutant/actor/mailbox.rb
276
- - lib/mutant/actor/receiver.rb
277
- - lib/mutant/actor/sender.rb
278
257
  - lib/mutant/ast.rb
279
258
  - lib/mutant/ast/meta.rb
280
259
  - lib/mutant/ast/meta/const.rb
281
260
  - lib/mutant/ast/meta/optarg.rb
282
261
  - lib/mutant/ast/meta/resbody.rb
283
- - lib/mutant/ast/meta/restarg.rb
284
262
  - lib/mutant/ast/meta/send.rb
285
263
  - lib/mutant/ast/meta/symbol.rb
286
264
  - lib/mutant/ast/named_children.rb
287
265
  - lib/mutant/ast/node_predicates.rb
288
266
  - lib/mutant/ast/nodes.rb
289
- - lib/mutant/ast/regexp.rb
290
- - lib/mutant/ast/regexp/transformer.rb
291
- - lib/mutant/ast/regexp/transformer/direct.rb
292
- - lib/mutant/ast/regexp/transformer/named_group.rb
293
- - lib/mutant/ast/regexp/transformer/options_group.rb
294
- - lib/mutant/ast/regexp/transformer/quantifier.rb
295
- - lib/mutant/ast/regexp/transformer/recursive.rb
296
- - lib/mutant/ast/regexp/transformer/root.rb
297
- - lib/mutant/ast/regexp/transformer/text.rb
298
267
  - lib/mutant/ast/sexp.rb
299
268
  - lib/mutant/ast/types.rb
269
+ - lib/mutant/base.rb
270
+ - lib/mutant/bootstrap.rb
300
271
  - lib/mutant/cli.rb
301
272
  - lib/mutant/color.rb
302
273
  - lib/mutant/config.rb
303
274
  - lib/mutant/context.rb
304
275
  - lib/mutant/diff.rb
305
276
  - lib/mutant/env.rb
306
- - lib/mutant/env/bootstrap.rb
307
277
  - lib/mutant/expression.rb
308
278
  - lib/mutant/expression/method.rb
309
279
  - lib/mutant/expression/methods.rb
@@ -313,10 +283,13 @@ files:
313
283
  - lib/mutant/isolation.rb
314
284
  - lib/mutant/isolation/fork.rb
315
285
  - lib/mutant/isolation/none.rb
286
+ - lib/mutant/license.rb
287
+ - lib/mutant/license/subscription.rb
288
+ - lib/mutant/license/subscription/commercial.rb
289
+ - lib/mutant/license/subscription/opensource.rb
316
290
  - lib/mutant/loader.rb
317
291
  - lib/mutant/matcher.rb
318
292
  - lib/mutant/matcher/chain.rb
319
- - lib/mutant/matcher/compiler.rb
320
293
  - lib/mutant/matcher/config.rb
321
294
  - lib/mutant/matcher/filter.rb
322
295
  - lib/mutant/matcher/method.rb
@@ -376,13 +349,6 @@ files:
376
349
  - lib/mutant/mutator/node/op_asgn.rb
377
350
  - lib/mutant/mutator/node/or_asgn.rb
378
351
  - lib/mutant/mutator/node/procarg_zero.rb
379
- - lib/mutant/mutator/node/regexp.rb
380
- - lib/mutant/mutator/node/regexp/alternation_meta.rb
381
- - lib/mutant/mutator/node/regexp/capture_group.rb
382
- - lib/mutant/mutator/node/regexp/character_type.rb
383
- - lib/mutant/mutator/node/regexp/end_of_line_anchor.rb
384
- - lib/mutant/mutator/node/regexp/end_of_string_or_before_end_of_line_anchor.rb
385
- - lib/mutant/mutator/node/regexp/greedy_zero_or_more.rb
386
352
  - lib/mutant/mutator/node/regopt.rb
387
353
  - lib/mutant/mutator/node/resbody.rb
388
354
  - lib/mutant/mutator/node/rescue.rb
@@ -400,30 +366,32 @@ files:
400
366
  - lib/mutant/mutator/util/array.rb
401
367
  - lib/mutant/mutator/util/symbol.rb
402
368
  - lib/mutant/parallel.rb
403
- - lib/mutant/parallel/master.rb
369
+ - lib/mutant/parallel/driver.rb
404
370
  - lib/mutant/parallel/source.rb
405
371
  - lib/mutant/parallel/worker.rb
406
372
  - lib/mutant/parser.rb
373
+ - lib/mutant/range.rb
407
374
  - lib/mutant/registry.rb
408
375
  - lib/mutant/reporter.rb
409
376
  - lib/mutant/reporter/cli.rb
410
377
  - lib/mutant/reporter/cli/format.rb
411
378
  - lib/mutant/reporter/cli/printer.rb
412
379
  - lib/mutant/reporter/cli/printer/config.rb
380
+ - lib/mutant/reporter/cli/printer/env.rb
413
381
  - lib/mutant/reporter/cli/printer/env_progress.rb
414
382
  - lib/mutant/reporter/cli/printer/env_result.rb
415
383
  - lib/mutant/reporter/cli/printer/isolation_result.rb
416
384
  - lib/mutant/reporter/cli/printer/mutation_progress_result.rb
417
385
  - lib/mutant/reporter/cli/printer/mutation_result.rb
418
- - lib/mutant/reporter/cli/printer/status.rb
419
386
  - lib/mutant/reporter/cli/printer/status_progressive.rb
420
387
  - lib/mutant/reporter/cli/printer/subject_progress.rb
421
388
  - lib/mutant/reporter/cli/printer/subject_result.rb
422
389
  - lib/mutant/reporter/cli/printer/test_result.rb
423
- - lib/mutant/reporter/cli/tput.rb
424
390
  - lib/mutant/reporter/null.rb
425
391
  - lib/mutant/reporter/sequence.rb
426
392
  - lib/mutant/repository.rb
393
+ - lib/mutant/repository/diff.rb
394
+ - lib/mutant/repository/diff/ranges.rb
427
395
  - lib/mutant/require_highjack.rb
428
396
  - lib/mutant/result.rb
429
397
  - lib/mutant/runner.rb
@@ -431,15 +399,18 @@ files:
431
399
  - lib/mutant/scope.rb
432
400
  - lib/mutant/selector.rb
433
401
  - lib/mutant/selector/expression.rb
402
+ - lib/mutant/selector/null.rb
434
403
  - lib/mutant/subject.rb
435
404
  - lib/mutant/subject/method.rb
436
405
  - lib/mutant/subject/method/instance.rb
437
406
  - lib/mutant/subject/method/singleton.rb
438
407
  - lib/mutant/test.rb
439
408
  - lib/mutant/timer.rb
409
+ - lib/mutant/transform.rb
440
410
  - lib/mutant/util.rb
411
+ - lib/mutant/variable.rb
441
412
  - lib/mutant/version.rb
442
- - lib/mutant/warning_filter.rb
413
+ - lib/mutant/warnings.rb
443
414
  - lib/mutant/zombifier.rb
444
415
  - meta/and.rb
445
416
  - meta/and_asgn.rb
@@ -493,19 +464,8 @@ files:
493
464
  - meta/range.rb
494
465
  - meta/redo.rb
495
466
  - meta/regexp.rb
496
- - meta/regexp/character_types.rb
497
- - meta/regexp/regexp_alternation_meta.rb
498
- - meta/regexp/regexp_bol_anchor.rb
499
- - meta/regexp/regexp_bos_anchor.rb
500
- - meta/regexp/regexp_capture_group.rb
501
- - meta/regexp/regexp_eol_anchor.rb
502
- - meta/regexp/regexp_eos_anchor.rb
503
- - meta/regexp/regexp_eos_ob_eol_anchor.rb
504
- - meta/regexp/regexp_greedy_zero_or_more.rb
505
- - meta/regexp/regexp_root_expression.rb
506
467
  - meta/regopt.rb
507
468
  - meta/rescue.rb
508
- - meta/restarg.rb
509
469
  - meta/return.rb
510
470
  - meta/self.rb
511
471
  - meta/send.rb
@@ -519,6 +479,7 @@ files:
519
479
  - mutant-minitest.gemspec
520
480
  - mutant-rspec.gemspec
521
481
  - mutant.gemspec
482
+ - mutant.yml
522
483
  - spec/integration/mutant/corpus_spec.rb
523
484
  - spec/integration/mutant/isolation/fork_spec.rb
524
485
  - spec/integration/mutant/minitest_spec.rb
@@ -526,42 +487,32 @@ files:
526
487
  - spec/integration/mutant/rspec_spec.rb
527
488
  - spec/integration/mutant/test_mutator_handles_types_spec.rb
528
489
  - spec/integrations.yml
490
+ - spec/shared/base_behavior.rb
529
491
  - spec/shared/framework_integration_behavior.rb
530
492
  - spec/shared/method_matcher_behavior.rb
531
493
  - spec/spec_helper.rb
532
494
  - spec/support/corpus.rb
533
- - spec/support/fake_actor.rb
534
495
  - spec/support/file_system.rb
535
496
  - spec/support/ice_nine_config.rb
536
497
  - spec/support/ruby_vm.rb
537
498
  - spec/support/shared_context.rb
538
499
  - spec/support/test_app.rb
539
- - spec/support/warning.rb
540
500
  - spec/support/warnings.yml
541
501
  - spec/support/xspec.rb
542
- - spec/unit/mutant/actor/binding_spec.rb
543
- - spec/unit/mutant/actor/env_spec.rb
544
- - spec/unit/mutant/actor/mailbox_spec.rb
545
- - spec/unit/mutant/actor/message_spec.rb
546
- - spec/unit/mutant/actor/receiver_spec.rb
547
- - spec/unit/mutant/actor/sender_spec.rb
548
502
  - spec/unit/mutant/ast/meta/optarg_spec.rb
549
503
  - spec/unit/mutant/ast/meta/send/proc_predicate_spec.rb
550
504
  - spec/unit/mutant/ast/meta/send/receiver_possible_top_level_const_predicate_spec.rb
551
505
  - spec/unit/mutant/ast/meta/send_spec.rb
552
506
  - spec/unit/mutant/ast/named_children_spec.rb
553
- - spec/unit/mutant/ast/regexp/parse_spec.rb
554
- - spec/unit/mutant/ast/regexp/transformer/lookup_table/table_spec.rb
555
- - spec/unit/mutant/ast/regexp/transformer/lookup_table_spec.rb
556
- - spec/unit/mutant/ast/regexp/transformer_spec.rb
557
- - spec/unit/mutant/ast/regexp_spec.rb
558
507
  - spec/unit/mutant/ast/sexp_spec.rb
559
508
  - spec/unit/mutant/ast_spec.rb
509
+ - spec/unit/mutant/bootstrap_spec.rb
560
510
  - spec/unit/mutant/cli_spec.rb
561
511
  - spec/unit/mutant/clock_monotonic_spec.rb
512
+ - spec/unit/mutant/config_spec.rb
562
513
  - spec/unit/mutant/context_spec.rb
563
514
  - spec/unit/mutant/diff_spec.rb
564
- - spec/unit/mutant/env/bootstrap_spec.rb
515
+ - spec/unit/mutant/either_spec.rb
565
516
  - spec/unit/mutant/env_spec.rb
566
517
  - spec/unit/mutant/expression/method_spec.rb
567
518
  - spec/unit/mutant/expression/methods_spec.rb
@@ -574,9 +525,9 @@ files:
574
525
  - spec/unit/mutant/isolation/fork_spec.rb
575
526
  - spec/unit/mutant/isolation/none_spec.rb
576
527
  - spec/unit/mutant/isolation/result_spec.rb
528
+ - spec/unit/mutant/license_spec.rb
577
529
  - spec/unit/mutant/loader_spec.rb
578
530
  - spec/unit/mutant/matcher/chain_spec.rb
579
- - spec/unit/mutant/matcher/compiler/subject_prefix_spec.rb
580
531
  - spec/unit/mutant/matcher/compiler_spec.rb
581
532
  - spec/unit/mutant/matcher/config_spec.rb
582
533
  - spec/unit/mutant/matcher/filter_spec.rb
@@ -588,6 +539,8 @@ files:
588
539
  - spec/unit/mutant/matcher/null_spec.rb
589
540
  - spec/unit/mutant/matcher/scope_spec.rb
590
541
  - spec/unit/mutant/matcher/static_spec.rb
542
+ - spec/unit/mutant/matcher_spec.rb
543
+ - spec/unit/mutant/maybe_spec.rb
591
544
  - spec/unit/mutant/meta/example/dsl_spec.rb
592
545
  - spec/unit/mutant/meta/example/verification_spec.rb
593
546
  - spec/unit/mutant/meta/example_spec.rb
@@ -595,11 +548,11 @@ files:
595
548
  - spec/unit/mutant/mutator/node_spec.rb
596
549
  - spec/unit/mutant/mutator_spec.rb
597
550
  - spec/unit/mutant/parallel/driver_spec.rb
598
- - spec/unit/mutant/parallel/master_spec.rb
599
551
  - spec/unit/mutant/parallel/source/array_spec.rb
600
552
  - spec/unit/mutant/parallel/worker_spec.rb
601
553
  - spec/unit/mutant/parallel_spec.rb
602
554
  - spec/unit/mutant/parser_spec.rb
555
+ - spec/unit/mutant/range_spec.rb
603
556
  - spec/unit/mutant/registry_spec.rb
604
557
  - spec/unit/mutant/reporter/cli/printer/config_spec.rb
605
558
  - spec/unit/mutant/reporter/cli/printer/env_progress_spec.rb
@@ -608,15 +561,14 @@ files:
608
561
  - spec/unit/mutant/reporter/cli/printer/mutation_progress_result_spec.rb
609
562
  - spec/unit/mutant/reporter/cli/printer/mutation_result_spec.rb
610
563
  - spec/unit/mutant/reporter/cli/printer/status_progressive_spec.rb
611
- - spec/unit/mutant/reporter/cli/printer/status_spec.rb
612
564
  - spec/unit/mutant/reporter/cli/printer/subject_progress_spec.rb
613
565
  - spec/unit/mutant/reporter/cli/printer/subject_result_spec.rb
614
566
  - spec/unit/mutant/reporter/cli/printer/test_result_spec.rb
615
567
  - spec/unit/mutant/reporter/cli/printer_spec.rb
616
- - spec/unit/mutant/reporter/cli/tput_spec.rb
617
568
  - spec/unit/mutant/reporter/cli_spec.rb
618
569
  - spec/unit/mutant/reporter/null_spec.rb
619
570
  - spec/unit/mutant/reporter/sequence_spec.rb
571
+ - spec/unit/mutant/repository/diff/ranges_spec.rb
620
572
  - spec/unit/mutant/repository/diff_spec.rb
621
573
  - spec/unit/mutant/repository/subject_filter_spec.rb
622
574
  - spec/unit/mutant/require_highjack_spec.rb
@@ -624,20 +576,31 @@ files:
624
576
  - spec/unit/mutant/result/env_spec.rb
625
577
  - spec/unit/mutant/result/mutation_spec.rb
626
578
  - spec/unit/mutant/result/subject_spec.rb
579
+ - spec/unit/mutant/result/test_spec.rb
627
580
  - spec/unit/mutant/result_spec.rb
628
581
  - spec/unit/mutant/runner/sink_spec.rb
629
582
  - spec/unit/mutant/runner_spec.rb
630
583
  - spec/unit/mutant/selector/expression_spec.rb
584
+ - spec/unit/mutant/selector/null_spec.rb
631
585
  - spec/unit/mutant/subject/method/instance_spec.rb
632
586
  - spec/unit/mutant/subject/method/singleton_spec.rb
633
587
  - spec/unit/mutant/subject_spec.rb
588
+ - spec/unit/mutant/transform/array_spec.rb
589
+ - spec/unit/mutant/transform/bool_spec.rb
590
+ - spec/unit/mutant/transform/error_spec.rb
591
+ - spec/unit/mutant/transform/exception_spec.rb
592
+ - spec/unit/mutant/transform/hash_spec.rb
593
+ - spec/unit/mutant/transform/index_spec.rb
594
+ - spec/unit/mutant/transform/named_spec.rb
595
+ - spec/unit/mutant/transform/primitive_spec.rb
596
+ - spec/unit/mutant/transform/sequence_spec.rb
634
597
  - spec/unit/mutant/util/one_spec.rb
635
- - spec/unit/mutant/warning_filter_spec.rb
598
+ - spec/unit/mutant/variable_spec.rb
599
+ - spec/unit/mutant/warnings_spec.rb
600
+ - spec/unit/mutant/world_spec.rb
636
601
  - spec/unit/mutant/zombifier_spec.rb
637
- - spec/unit/mutant_spec.rb
638
602
  - test_app/.rspec
639
603
  - test_app/Gemfile.minitest
640
- - test_app/Gemfile.rspec3.7
641
604
  - test_app/Gemfile.rspec3.8
642
605
  - test_app/lib/test_app.rb
643
606
  - test_app/lib/test_app/literal.rb
@@ -646,7 +609,7 @@ files:
646
609
  - test_app/test/unit/test_app/literal_test.rb
647
610
  homepage: https://github.com/mbj/mutant
648
611
  licenses:
649
- - MIT
612
+ - Nonstandard
650
613
  metadata: {}
651
614
  post_install_message:
652
615
  rdoc_options: []
@@ -663,8 +626,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
663
626
  - !ruby/object:Gem::Version
664
627
  version: '0'
665
628
  requirements: []
666
- rubyforge_project:
667
- rubygems_version: 3.0.0.beta2
629
+ rubygems_version: 3.0.6
668
630
  signing_key:
669
631
  specification_version: 4
670
632
  summary: Mutation testing tool for ruby under MRI and Rubinius
@@ -675,29 +637,20 @@ test_files:
675
637
  - spec/integration/mutant/null_spec.rb
676
638
  - spec/integration/mutant/rspec_spec.rb
677
639
  - spec/integration/mutant/test_mutator_handles_types_spec.rb
678
- - spec/unit/mutant/actor/binding_spec.rb
679
- - spec/unit/mutant/actor/env_spec.rb
680
- - spec/unit/mutant/actor/mailbox_spec.rb
681
- - spec/unit/mutant/actor/message_spec.rb
682
- - spec/unit/mutant/actor/receiver_spec.rb
683
- - spec/unit/mutant/actor/sender_spec.rb
684
640
  - spec/unit/mutant/ast/meta/optarg_spec.rb
685
641
  - spec/unit/mutant/ast/meta/send/proc_predicate_spec.rb
686
642
  - spec/unit/mutant/ast/meta/send/receiver_possible_top_level_const_predicate_spec.rb
687
643
  - spec/unit/mutant/ast/meta/send_spec.rb
688
644
  - spec/unit/mutant/ast/named_children_spec.rb
689
- - spec/unit/mutant/ast/regexp/parse_spec.rb
690
- - spec/unit/mutant/ast/regexp/transformer/lookup_table/table_spec.rb
691
- - spec/unit/mutant/ast/regexp/transformer/lookup_table_spec.rb
692
- - spec/unit/mutant/ast/regexp/transformer_spec.rb
693
- - spec/unit/mutant/ast/regexp_spec.rb
694
645
  - spec/unit/mutant/ast/sexp_spec.rb
695
646
  - spec/unit/mutant/ast_spec.rb
647
+ - spec/unit/mutant/bootstrap_spec.rb
696
648
  - spec/unit/mutant/cli_spec.rb
697
649
  - spec/unit/mutant/clock_monotonic_spec.rb
650
+ - spec/unit/mutant/config_spec.rb
698
651
  - spec/unit/mutant/context_spec.rb
699
652
  - spec/unit/mutant/diff_spec.rb
700
- - spec/unit/mutant/env/bootstrap_spec.rb
653
+ - spec/unit/mutant/either_spec.rb
701
654
  - spec/unit/mutant/env_spec.rb
702
655
  - spec/unit/mutant/expression/method_spec.rb
703
656
  - spec/unit/mutant/expression/methods_spec.rb
@@ -710,9 +663,9 @@ test_files:
710
663
  - spec/unit/mutant/isolation/fork_spec.rb
711
664
  - spec/unit/mutant/isolation/none_spec.rb
712
665
  - spec/unit/mutant/isolation/result_spec.rb
666
+ - spec/unit/mutant/license_spec.rb
713
667
  - spec/unit/mutant/loader_spec.rb
714
668
  - spec/unit/mutant/matcher/chain_spec.rb
715
- - spec/unit/mutant/matcher/compiler/subject_prefix_spec.rb
716
669
  - spec/unit/mutant/matcher/compiler_spec.rb
717
670
  - spec/unit/mutant/matcher/config_spec.rb
718
671
  - spec/unit/mutant/matcher/filter_spec.rb
@@ -724,6 +677,8 @@ test_files:
724
677
  - spec/unit/mutant/matcher/null_spec.rb
725
678
  - spec/unit/mutant/matcher/scope_spec.rb
726
679
  - spec/unit/mutant/matcher/static_spec.rb
680
+ - spec/unit/mutant/matcher_spec.rb
681
+ - spec/unit/mutant/maybe_spec.rb
727
682
  - spec/unit/mutant/meta/example/dsl_spec.rb
728
683
  - spec/unit/mutant/meta/example/verification_spec.rb
729
684
  - spec/unit/mutant/meta/example_spec.rb
@@ -731,11 +686,11 @@ test_files:
731
686
  - spec/unit/mutant/mutator/node_spec.rb
732
687
  - spec/unit/mutant/mutator_spec.rb
733
688
  - spec/unit/mutant/parallel/driver_spec.rb
734
- - spec/unit/mutant/parallel/master_spec.rb
735
689
  - spec/unit/mutant/parallel/source/array_spec.rb
736
690
  - spec/unit/mutant/parallel/worker_spec.rb
737
691
  - spec/unit/mutant/parallel_spec.rb
738
692
  - spec/unit/mutant/parser_spec.rb
693
+ - spec/unit/mutant/range_spec.rb
739
694
  - spec/unit/mutant/registry_spec.rb
740
695
  - spec/unit/mutant/reporter/cli/printer/config_spec.rb
741
696
  - spec/unit/mutant/reporter/cli/printer/env_progress_spec.rb
@@ -744,15 +699,14 @@ test_files:
744
699
  - spec/unit/mutant/reporter/cli/printer/mutation_progress_result_spec.rb
745
700
  - spec/unit/mutant/reporter/cli/printer/mutation_result_spec.rb
746
701
  - spec/unit/mutant/reporter/cli/printer/status_progressive_spec.rb
747
- - spec/unit/mutant/reporter/cli/printer/status_spec.rb
748
702
  - spec/unit/mutant/reporter/cli/printer/subject_progress_spec.rb
749
703
  - spec/unit/mutant/reporter/cli/printer/subject_result_spec.rb
750
704
  - spec/unit/mutant/reporter/cli/printer/test_result_spec.rb
751
705
  - spec/unit/mutant/reporter/cli/printer_spec.rb
752
- - spec/unit/mutant/reporter/cli/tput_spec.rb
753
706
  - spec/unit/mutant/reporter/cli_spec.rb
754
707
  - spec/unit/mutant/reporter/null_spec.rb
755
708
  - spec/unit/mutant/reporter/sequence_spec.rb
709
+ - spec/unit/mutant/repository/diff/ranges_spec.rb
756
710
  - spec/unit/mutant/repository/diff_spec.rb
757
711
  - spec/unit/mutant/repository/subject_filter_spec.rb
758
712
  - spec/unit/mutant/require_highjack_spec.rb
@@ -760,14 +714,26 @@ test_files:
760
714
  - spec/unit/mutant/result/env_spec.rb
761
715
  - spec/unit/mutant/result/mutation_spec.rb
762
716
  - spec/unit/mutant/result/subject_spec.rb
717
+ - spec/unit/mutant/result/test_spec.rb
763
718
  - spec/unit/mutant/result_spec.rb
764
719
  - spec/unit/mutant/runner/sink_spec.rb
765
720
  - spec/unit/mutant/runner_spec.rb
766
721
  - spec/unit/mutant/selector/expression_spec.rb
722
+ - spec/unit/mutant/selector/null_spec.rb
767
723
  - spec/unit/mutant/subject/method/instance_spec.rb
768
724
  - spec/unit/mutant/subject/method/singleton_spec.rb
769
725
  - spec/unit/mutant/subject_spec.rb
726
+ - spec/unit/mutant/transform/array_spec.rb
727
+ - spec/unit/mutant/transform/bool_spec.rb
728
+ - spec/unit/mutant/transform/error_spec.rb
729
+ - spec/unit/mutant/transform/exception_spec.rb
730
+ - spec/unit/mutant/transform/hash_spec.rb
731
+ - spec/unit/mutant/transform/index_spec.rb
732
+ - spec/unit/mutant/transform/named_spec.rb
733
+ - spec/unit/mutant/transform/primitive_spec.rb
734
+ - spec/unit/mutant/transform/sequence_spec.rb
770
735
  - spec/unit/mutant/util/one_spec.rb
771
- - spec/unit/mutant/warning_filter_spec.rb
736
+ - spec/unit/mutant/variable_spec.rb
737
+ - spec/unit/mutant/warnings_spec.rb
738
+ - spec/unit/mutant/world_spec.rb
772
739
  - spec/unit/mutant/zombifier_spec.rb
773
- - spec/unit/mutant_spec.rb