mutant 0.9.9 → 0.9.14

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 (252) hide show
  1. checksums.yaml +4 -4
  2. data/lib/mutant.rb +2 -4
  3. data/lib/mutant/bootstrap.rb +14 -1
  4. data/lib/mutant/cli.rb +6 -0
  5. data/lib/mutant/isolation.rb +1 -1
  6. data/lib/mutant/isolation/fork.rb +2 -2
  7. data/lib/mutant/isolation/none.rb +1 -1
  8. data/lib/mutant/matcher/config.rb +2 -0
  9. data/lib/mutant/meta/example.rb +16 -4
  10. data/lib/mutant/meta/example/dsl.rb +33 -16
  11. data/lib/mutant/meta/example/verification.rb +70 -28
  12. data/lib/mutant/minitest/coverage.rb +53 -0
  13. data/lib/mutant/mutator/node.rb +2 -2
  14. data/lib/mutant/mutator/node/block_pass.rb +29 -0
  15. data/lib/mutant/mutator/node/{dstr.rb → dynamic_literal.rb} +7 -5
  16. data/lib/mutant/mutator/node/index.rb +4 -4
  17. data/lib/mutant/mutator/node/literal/range.rb +4 -1
  18. data/lib/mutant/mutator/node/noop.rb +1 -1
  19. data/lib/mutant/mutator/node/op_asgn.rb +15 -1
  20. data/lib/mutant/mutator/node/send.rb +25 -1
  21. data/lib/mutant/mutator/node/send/attribute_assignment.rb +1 -0
  22. data/lib/mutant/reporter/cli/printer.rb +2 -2
  23. data/lib/mutant/reporter/cli/printer/isolation_result.rb +9 -3
  24. data/lib/mutant/reporter/cli/printer/mutation_result.rb +1 -1
  25. data/lib/mutant/subject/method/instance.rb +41 -2
  26. data/lib/mutant/version.rb +1 -1
  27. metadata +59 -347
  28. data/.github/workflows/ci.yml +0 -121
  29. data/.gitignore +0 -38
  30. data/.rspec +0 -5
  31. data/.rubocop.yml +0 -7
  32. data/Changelog.md +0 -81
  33. data/Gemfile +0 -7
  34. data/Gemfile.lock +0 -167
  35. data/Gemfile.shared +0 -10
  36. data/README.md +0 -178
  37. data/Rakefile +0 -5
  38. data/config/devtools.yml +0 -2
  39. data/config/reek.yml +0 -139
  40. data/config/rubocop.yml +0 -205
  41. data/config/yardstick.yml +0 -2
  42. data/docs/commercial-support.md +0 -14
  43. data/docs/concurrency.md +0 -39
  44. data/docs/incremental.md +0 -76
  45. data/docs/known-problems.md +0 -30
  46. data/docs/limitations.md +0 -50
  47. data/docs/mutant-minitest.md +0 -149
  48. data/docs/mutant-rspec.md +0 -130
  49. data/docs/nomenclature.md +0 -82
  50. data/docs/reading-reports.md +0 -74
  51. data/lib/mutant/color.rb +0 -40
  52. data/lib/mutant/diff.rb +0 -97
  53. data/lib/mutant/mutator/node/dsym.rb +0 -22
  54. data/meta/and.rb +0 -13
  55. data/meta/and_asgn.rb +0 -14
  56. data/meta/array.rb +0 -27
  57. data/meta/begin.rb +0 -20
  58. data/meta/block.rb +0 -199
  59. data/meta/block_pass.rb +0 -8
  60. data/meta/blockarg.rb +0 -10
  61. data/meta/break.rb +0 -9
  62. data/meta/case.rb +0 -217
  63. data/meta/casgn.rb +0 -25
  64. data/meta/cbase.rb +0 -8
  65. data/meta/class.rb +0 -12
  66. data/meta/const.rb +0 -17
  67. data/meta/csend.rb +0 -10
  68. data/meta/cvar.rb +0 -7
  69. data/meta/cvasgn.rb +0 -9
  70. data/meta/date.rb +0 -59
  71. data/meta/def.rb +0 -196
  72. data/meta/defined.rb +0 -9
  73. data/meta/dstr.rb +0 -13
  74. data/meta/dsym.rb +0 -14
  75. data/meta/ensure.rb +0 -8
  76. data/meta/false.rb +0 -7
  77. data/meta/file.rb +0 -5
  78. data/meta/float.rb +0 -37
  79. data/meta/gvar.rb +0 -7
  80. data/meta/gvasgn.rb +0 -9
  81. data/meta/hash.rb +0 -20
  82. data/meta/if.rb +0 -72
  83. data/meta/index.rb +0 -133
  84. data/meta/indexasgn.rb +0 -31
  85. data/meta/int.rb +0 -18
  86. data/meta/ivar.rb +0 -8
  87. data/meta/ivasgn.rb +0 -22
  88. data/meta/kwarg.rb +0 -10
  89. data/meta/kwbegin.rb +0 -8
  90. data/meta/kwoptarg.rb +0 -13
  91. data/meta/lambda.rb +0 -23
  92. data/meta/line.rb +0 -5
  93. data/meta/lvar.rb +0 -16
  94. data/meta/lvasgn.rb +0 -24
  95. data/meta/masgn.rb +0 -7
  96. data/meta/match_current_line.rb +0 -14
  97. data/meta/next.rb +0 -10
  98. data/meta/nil.rb +0 -5
  99. data/meta/nthref.rb +0 -14
  100. data/meta/op_assgn.rb +0 -17
  101. data/meta/or.rb +0 -13
  102. data/meta/or_asgn.rb +0 -50
  103. data/meta/range.rb +0 -39
  104. data/meta/redo.rb +0 -5
  105. data/meta/regexp.rb +0 -80
  106. data/meta/regopt.rb +0 -10
  107. data/meta/rescue.rb +0 -84
  108. data/meta/return.rb +0 -16
  109. data/meta/sclass.rb +0 -12
  110. data/meta/self.rb +0 -7
  111. data/meta/send.rb +0 -600
  112. data/meta/str.rb +0 -7
  113. data/meta/super.rb +0 -27
  114. data/meta/sym.rb +0 -8
  115. data/meta/true.rb +0 -7
  116. data/meta/until.rb +0 -16
  117. data/meta/while.rb +0 -24
  118. data/meta/yield.rb +0 -9
  119. data/mutant-minitest.gemspec +0 -22
  120. data/mutant-rspec.gemspec +0 -22
  121. data/mutant.gemspec +0 -41
  122. data/mutant.sh +0 -12
  123. data/mutant.yml +0 -6
  124. data/spec/integration/mutant/corpus_spec.rb +0 -15
  125. data/spec/integration/mutant/isolation/fork_spec.rb +0 -28
  126. data/spec/integration/mutant/minitest_spec.rb +0 -11
  127. data/spec/integration/mutant/null_spec.rb +0 -16
  128. data/spec/integration/mutant/rspec_spec.rb +0 -15
  129. data/spec/integration/mutant/test_mutator_handles_types_spec.rb +0 -9
  130. data/spec/integrations.yml +0 -63
  131. data/spec/shared/base_behavior.rb +0 -45
  132. data/spec/shared/framework_integration_behavior.rb +0 -70
  133. data/spec/shared/method_matcher_behavior.rb +0 -47
  134. data/spec/spec_helper.rb +0 -75
  135. data/spec/support/corpus.rb +0 -318
  136. data/spec/support/file_system.rb +0 -62
  137. data/spec/support/ice_nine_config.rb +0 -10
  138. data/spec/support/ruby_vm.rb +0 -84
  139. data/spec/support/shared_context.rb +0 -169
  140. data/spec/support/test_app.rb +0 -7
  141. data/spec/support/warnings.yml +0 -6
  142. data/spec/support/xspec.rb +0 -183
  143. data/spec/unit/mutant/ast/find_metaclass_containing_spec.rb +0 -64
  144. data/spec/unit/mutant/ast/meta/optarg_spec.rb +0 -24
  145. data/spec/unit/mutant/ast/meta/send/proc_predicate_spec.rb +0 -30
  146. data/spec/unit/mutant/ast/meta/send/receiver_possible_top_level_const_predicate_spec.rb +0 -39
  147. data/spec/unit/mutant/ast/meta/send_spec.rb +0 -42
  148. data/spec/unit/mutant/ast/named_children_spec.rb +0 -89
  149. data/spec/unit/mutant/ast/sexp_spec.rb +0 -38
  150. data/spec/unit/mutant/ast_spec.rb +0 -57
  151. data/spec/unit/mutant/bootstrap_spec.rb +0 -216
  152. data/spec/unit/mutant/cli_spec.rb +0 -305
  153. data/spec/unit/mutant/clock_monotonic_spec.rb +0 -52
  154. data/spec/unit/mutant/config_spec.rb +0 -126
  155. data/spec/unit/mutant/context_spec.rb +0 -111
  156. data/spec/unit/mutant/diff_spec.rb +0 -189
  157. data/spec/unit/mutant/env_spec.rb +0 -229
  158. data/spec/unit/mutant/expression/method_spec.rb +0 -62
  159. data/spec/unit/mutant/expression/methods_spec.rb +0 -66
  160. data/spec/unit/mutant/expression/namespace/exact_spec.rb +0 -28
  161. data/spec/unit/mutant/expression/namespace/recursive_spec.rb +0 -66
  162. data/spec/unit/mutant/expression/parser_spec.rb +0 -65
  163. data/spec/unit/mutant/expression_spec.rb +0 -45
  164. data/spec/unit/mutant/integration/rspec_spec.rb +0 -201
  165. data/spec/unit/mutant/integration_spec.rb +0 -150
  166. data/spec/unit/mutant/isolation/fork_spec.rb +0 -309
  167. data/spec/unit/mutant/isolation/none_spec.rb +0 -23
  168. data/spec/unit/mutant/isolation/result_spec.rb +0 -73
  169. data/spec/unit/mutant/license_spec.rb +0 -305
  170. data/spec/unit/mutant/loader_spec.rb +0 -79
  171. data/spec/unit/mutant/matcher/chain_spec.rb +0 -26
  172. data/spec/unit/mutant/matcher/compiler_spec.rb +0 -0
  173. data/spec/unit/mutant/matcher/config_spec.rb +0 -47
  174. data/spec/unit/mutant/matcher/filter_spec.rb +0 -22
  175. data/spec/unit/mutant/matcher/method/instance_spec.rb +0 -164
  176. data/spec/unit/mutant/matcher/method/metaclass_spec.rb +0 -108
  177. data/spec/unit/mutant/matcher/method/singleton_spec.rb +0 -90
  178. data/spec/unit/mutant/matcher/methods/instance_spec.rb +0 -54
  179. data/spec/unit/mutant/matcher/methods/metaclass_spec.rb +0 -62
  180. data/spec/unit/mutant/matcher/methods/singleton_spec.rb +0 -51
  181. data/spec/unit/mutant/matcher/namespace_spec.rb +0 -39
  182. data/spec/unit/mutant/matcher/null_spec.rb +0 -12
  183. data/spec/unit/mutant/matcher/scope_spec.rb +0 -45
  184. data/spec/unit/mutant/matcher/static_spec.rb +0 -13
  185. data/spec/unit/mutant/matcher_spec.rb +0 -102
  186. data/spec/unit/mutant/meta/example/dsl_spec.rb +0 -108
  187. data/spec/unit/mutant/meta/example/verification_spec.rb +0 -154
  188. data/spec/unit/mutant/meta/example_spec.rb +0 -34
  189. data/spec/unit/mutant/mutation_spec.rb +0 -140
  190. data/spec/unit/mutant/mutator/node_spec.rb +0 -47
  191. data/spec/unit/mutant/mutator_spec.rb +0 -21
  192. data/spec/unit/mutant/parallel/driver_spec.rb +0 -126
  193. data/spec/unit/mutant/parallel/source/array_spec.rb +0 -57
  194. data/spec/unit/mutant/parallel/worker_spec.rb +0 -206
  195. data/spec/unit/mutant/parallel_spec.rb +0 -115
  196. data/spec/unit/mutant/parser_spec.rb +0 -26
  197. data/spec/unit/mutant/range_spec.rb +0 -141
  198. data/spec/unit/mutant/registry_spec.rb +0 -74
  199. data/spec/unit/mutant/reporter/cli/printer/config_spec.rb +0 -17
  200. data/spec/unit/mutant/reporter/cli/printer/env_progress_spec.rb +0 -85
  201. data/spec/unit/mutant/reporter/cli/printer/env_result_spec.rb +0 -45
  202. data/spec/unit/mutant/reporter/cli/printer/isolation_result_spec.rb +0 -132
  203. data/spec/unit/mutant/reporter/cli/printer/mutation_progress_result_spec.rb +0 -25
  204. data/spec/unit/mutant/reporter/cli/printer/mutation_result_spec.rb +0 -153
  205. data/spec/unit/mutant/reporter/cli/printer/status_progressive_spec.rb +0 -45
  206. data/spec/unit/mutant/reporter/cli/printer/subject_progress_spec.rb +0 -36
  207. data/spec/unit/mutant/reporter/cli/printer/subject_result_spec.rb +0 -44
  208. data/spec/unit/mutant/reporter/cli/printer/test_result_spec.rb +0 -16
  209. data/spec/unit/mutant/reporter/cli/printer_spec.rb +0 -163
  210. data/spec/unit/mutant/reporter/cli_spec.rb +0 -137
  211. data/spec/unit/mutant/reporter/null_spec.rb +0 -14
  212. data/spec/unit/mutant/reporter/sequence_spec.rb +0 -31
  213. data/spec/unit/mutant/repository/diff/ranges_spec.rb +0 -180
  214. data/spec/unit/mutant/repository/diff_spec.rb +0 -122
  215. data/spec/unit/mutant/repository/subject_filter_spec.rb +0 -30
  216. data/spec/unit/mutant/require_highjack_spec.rb +0 -73
  217. data/spec/unit/mutant/result/class_methods_spec.rb +0 -51
  218. data/spec/unit/mutant/result/env_spec.rb +0 -161
  219. data/spec/unit/mutant/result/mutation_spec.rb +0 -70
  220. data/spec/unit/mutant/result/subject_spec.rb +0 -111
  221. data/spec/unit/mutant/result/test_spec.rb +0 -14
  222. data/spec/unit/mutant/result_spec.rb +0 -33
  223. data/spec/unit/mutant/runner/sink_spec.rb +0 -174
  224. data/spec/unit/mutant/runner_spec.rb +0 -121
  225. data/spec/unit/mutant/selector/expression_spec.rb +0 -62
  226. data/spec/unit/mutant/selector/null_spec.rb +0 -17
  227. data/spec/unit/mutant/subject/method/instance_spec.rb +0 -181
  228. data/spec/unit/mutant/subject/method/metaclass_spec.rb +0 -63
  229. data/spec/unit/mutant/subject/method/singleton_spec.rb +0 -61
  230. data/spec/unit/mutant/subject_spec.rb +0 -93
  231. data/spec/unit/mutant/transform/array_spec.rb +0 -92
  232. data/spec/unit/mutant/transform/bool_spec.rb +0 -63
  233. data/spec/unit/mutant/transform/error_spec.rb +0 -132
  234. data/spec/unit/mutant/transform/exception_spec.rb +0 -44
  235. data/spec/unit/mutant/transform/hash_spec.rb +0 -236
  236. data/spec/unit/mutant/transform/index_spec.rb +0 -92
  237. data/spec/unit/mutant/transform/named_spec.rb +0 -49
  238. data/spec/unit/mutant/transform/primitive_spec.rb +0 -56
  239. data/spec/unit/mutant/transform/sequence_spec.rb +0 -98
  240. data/spec/unit/mutant/util/one_spec.rb +0 -22
  241. data/spec/unit/mutant/warnings_spec.rb +0 -89
  242. data/spec/unit/mutant/world_spec.rb +0 -63
  243. data/spec/unit/mutant/zombifier_spec.rb +0 -122
  244. data/test_app/.rspec +0 -1
  245. data/test_app/Gemfile.minitest +0 -4
  246. data/test_app/Gemfile.rspec3.8 +0 -7
  247. data/test_app/lib/test_app.rb +0 -110
  248. data/test_app/lib/test_app/literal.rb +0 -35
  249. data/test_app/lib/test_app/metaclasses.rb +0 -108
  250. data/test_app/spec/spec_helper.rb +0 -9
  251. data/test_app/spec/unit/test_app/literal_spec.rb +0 -20
  252. data/test_app/test/unit/test_app/literal_test.rb +0 -16
@@ -1,10 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- Mutant::Meta::Example.add :blockarg do
4
- source 'foo { |&bar| }'
5
-
6
- singleton_mutations
7
- mutation 'foo { |&bar| raise }'
8
- mutation 'foo {}'
9
- mutation 'foo'
10
- end
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- Mutant::Meta::Example.add :break do
4
- source 'break true'
5
-
6
- singleton_mutations
7
- mutation 'break false'
8
- mutation 'break'
9
- end
@@ -1,217 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- Mutant::Meta::Example.add :case do
4
- source <<-RUBY
5
- case
6
- when true
7
- else
8
- end
9
- RUBY
10
-
11
- singleton_mutations
12
-
13
- mutation <<-RUBY
14
- case
15
- when true
16
- raise
17
- else
18
- end
19
- RUBY
20
- mutation <<-RUBY
21
- case
22
- when false
23
- else
24
- end
25
- RUBY
26
- end
27
-
28
- # rubocop:disable Metrics/BlockLength
29
- Mutant::Meta::Example.add :case do
30
- source <<-RUBY
31
- case condition
32
- when A
33
- when B, C
34
- C
35
- else
36
- D
37
- end
38
- RUBY
39
-
40
- singleton_mutations
41
-
42
- mutation <<-RUBY
43
- case nil
44
- when A
45
- when B, C
46
- C
47
- else
48
- D
49
- end
50
- RUBY
51
-
52
- mutation <<-RUBY
53
- case self
54
- when A
55
- when B, C
56
- C
57
- else
58
- D
59
- end
60
- RUBY
61
-
62
- mutation <<-RUBY
63
- case condition
64
- when A
65
- raise
66
- when B, C
67
- C
68
- else
69
- D
70
- end
71
- RUBY
72
-
73
- mutation <<-RUBY
74
- case condition
75
- when nil
76
- when B, C
77
- C
78
- else
79
- D
80
- end
81
- RUBY
82
-
83
- mutation <<-RUBY
84
- case condition
85
- when self
86
- when B, C
87
- C
88
- else
89
- D
90
- end
91
- RUBY
92
-
93
- mutation <<-RUBY
94
- case condition
95
- when B, C
96
- C
97
- else
98
- D
99
- end
100
- RUBY
101
-
102
- mutation <<-RUBY
103
- case condition
104
- when A
105
- when B, C
106
- nil
107
- else
108
- D
109
- end
110
- RUBY
111
-
112
- mutation <<-RUBY
113
- case condition
114
- when A
115
- when B, C
116
- self
117
- else
118
- D
119
- end
120
- RUBY
121
-
122
- mutation <<-RUBY
123
- case condition
124
- when A
125
- when C
126
- C
127
- else
128
- D
129
- end
130
- RUBY
131
-
132
- mutation <<-RUBY
133
- case condition
134
- when A
135
- when nil, C
136
- C
137
- else
138
- D
139
- end
140
- RUBY
141
-
142
- mutation <<-RUBY
143
- case condition
144
- when A
145
- when self, C
146
- C
147
- else
148
- D
149
- end
150
- RUBY
151
-
152
- mutation <<-RUBY
153
- case condition
154
- when A
155
- when B
156
- C
157
- else
158
- D
159
- end
160
- RUBY
161
-
162
- mutation <<-RUBY
163
- case condition
164
- when A
165
- when B, nil
166
- C
167
- else
168
- D
169
- end
170
- RUBY
171
-
172
- mutation <<-RUBY
173
- case condition
174
- when A
175
- when B, self
176
- C
177
- else
178
- D
179
- end
180
- RUBY
181
-
182
- mutation <<-RUBY
183
- case condition
184
- when A
185
- else
186
- D
187
- end
188
- RUBY
189
-
190
- mutation <<-RUBY
191
- case condition
192
- when A
193
- when B, C
194
- C
195
- else
196
- nil
197
- end
198
- RUBY
199
-
200
- mutation <<-RUBY
201
- case condition
202
- when A
203
- when B, C
204
- C
205
- else
206
- self
207
- end
208
- RUBY
209
-
210
- mutation <<-RUBY
211
- case condition
212
- when A
213
- when B, C
214
- C
215
- end
216
- RUBY
217
- end
@@ -1,25 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- Mutant::Meta::Example.add :casgn do
4
- source 'A = true'
5
-
6
- mutation 'A__MUTANT__ = true'
7
- mutation 'A = false'
8
- mutation 'remove_const :A'
9
- end
10
-
11
- Mutant::Meta::Example.add :casgn do
12
- source 'self::A = true'
13
-
14
- mutation 'self::A__MUTANT__ = true'
15
- mutation 'self::A = false'
16
- mutation 'self.remove_const :A'
17
- end
18
-
19
- Mutant::Meta::Example.add :casgn do
20
- source 'A &&= true'
21
-
22
- singleton_mutations
23
- mutation 'A__MUTANT__ &&= true'
24
- mutation 'A &&= false'
25
- end
@@ -1,8 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- Mutant::Meta::Example.add :cbase do
4
- source '::A'
5
-
6
- singleton_mutations
7
- mutation 'A'
8
- end
@@ -1,12 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- Mutant::Meta::Example.add :class do
4
- source 'class Foo; bar; end'
5
-
6
- mutation 'class Foo; nil; end'
7
- mutation 'class Foo; self; end'
8
- end
9
-
10
- Mutant::Meta::Example.add :class do
11
- source 'class Foo; end'
12
- end
@@ -1,17 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- Mutant::Meta::Example.add :const do
4
- source 'A::B::C'
5
-
6
- singleton_mutations
7
- mutation 'B::C'
8
- mutation 'C'
9
- end
10
-
11
- Mutant::Meta::Example.add :const do
12
- source 'A.foo'
13
-
14
- singleton_mutations
15
- mutation 'A'
16
- mutation 'self.foo'
17
- end
@@ -1,10 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- Mutant::Meta::Example.add :csend do
4
- source 'a&.b'
5
-
6
- singleton_mutations
7
- mutation 'a.b'
8
- mutation 'self&.b'
9
- mutation 'a'
10
- end
@@ -1,7 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- Mutant::Meta::Example.add :cvar do
4
- source '@@a'
5
-
6
- singleton_mutations
7
- end
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- Mutant::Meta::Example.add :cvasgn do
4
- source '@@a = true'
5
-
6
- singleton_mutations
7
- mutation '@@a__mutant__ = true'
8
- mutation '@@a = false'
9
- end
@@ -1,59 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- Mutant::Meta::Example.add :send do
4
- source 'Date.parse(nil)'
5
-
6
- singleton_mutations
7
- mutation 'Date.parse'
8
- mutation 'self.parse(nil)'
9
- mutation 'Date'
10
- mutation 'Date.jd(nil)'
11
- mutation 'Date.civil(nil)'
12
- mutation 'Date.strptime(nil)'
13
- mutation 'Date.iso8601(nil)'
14
- mutation 'Date.rfc3339(nil)'
15
- mutation 'Date.xmlschema(nil)'
16
- mutation 'Date.rfc2822(nil)'
17
- mutation 'Date.rfc822(nil)'
18
- mutation 'Date.httpdate(nil)'
19
- mutation 'Date.jisx0301(nil)'
20
- end
21
-
22
- Mutant::Meta::Example.add :send do
23
- source '::Date.parse(nil)'
24
-
25
- singleton_mutations
26
- mutation '::Date.parse'
27
- mutation 'Date.parse(nil)'
28
- mutation 'self.parse(nil)'
29
- mutation '::Date'
30
- mutation '::Date.jd(nil)'
31
- mutation '::Date.civil(nil)'
32
- mutation '::Date.strptime(nil)'
33
- mutation '::Date.iso8601(nil)'
34
- mutation '::Date.rfc3339(nil)'
35
- mutation '::Date.xmlschema(nil)'
36
- mutation '::Date.rfc2822(nil)'
37
- mutation '::Date.rfc822(nil)'
38
- mutation '::Date.httpdate(nil)'
39
- mutation '::Date.jisx0301(nil)'
40
- end
41
-
42
- Mutant::Meta::Example.add :send do
43
- source 'Date.iso8601(nil)'
44
-
45
- singleton_mutations
46
- mutation 'Date.iso8601'
47
- mutation 'self.iso8601(nil)'
48
- mutation 'Date'
49
- end
50
-
51
- Mutant::Meta::Example.add :send do
52
- source 'Foo::Date.parse(nil)'
53
-
54
- singleton_mutations
55
- mutation 'Foo::Date.parse'
56
- mutation 'Foo::Date'
57
- mutation 'Date.parse(nil)'
58
- mutation 'self.parse(nil)'
59
- end
@@ -1,196 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- Mutant::Meta::Example.add :def do
4
- source 'def foo; end'
5
-
6
- mutation 'def foo; raise; end'
7
- mutation 'def foo; super; end'
8
- end
9
-
10
- Mutant::Meta::Example.add :def do
11
- source 'def foo; foo; rescue; end'
12
-
13
- mutation 'def foo; raise; end'
14
- mutation 'def foo; nil; rescue; end'
15
- mutation 'def foo; self; rescue; end'
16
- mutation 'def foo; end'
17
- mutation 'def foo; super; end'
18
-
19
- # Promote rescue resbody bodies
20
- mutation 'def foo; foo; end'
21
- end
22
-
23
- Mutant::Meta::Example.add :def do
24
- source 'def a; foo; rescue; bar; else; baz; end'
25
-
26
- # Mutate all bodies
27
- mutation 'def a; nil; rescue; bar; else; baz; end'
28
- mutation 'def a; self; rescue; bar; else; baz; end'
29
- mutation 'def a; foo; rescue; nil; else; baz; end'
30
- mutation 'def a; foo; rescue; self; else; baz; end'
31
- mutation 'def a; foo; rescue; bar; else; nil; end'
32
- mutation 'def a; foo; rescue; bar; else; self; end'
33
-
34
- # Promote and concat rescue resbody bodies
35
- mutation 'def a; foo; bar; end'
36
-
37
- # Promote and concat else body
38
- mutation 'def a; foo; baz; end'
39
-
40
- # Promote rescue body
41
- mutation 'def a; foo; end'
42
-
43
- # Empty body
44
- mutation 'def a; end'
45
-
46
- # Failing body
47
- mutation 'def a; raise; end'
48
-
49
- # Superclass implementation
50
- mutation 'def a; super; end'
51
- end
52
-
53
- Mutant::Meta::Example.add :def do
54
- source 'def foo; true; false; end'
55
-
56
- # Mutation of each statement in block
57
- mutation 'def foo; true; true; end'
58
- mutation 'def foo; false; false; end'
59
-
60
- # Remove statement in block
61
- mutation 'def foo; true; end'
62
- mutation 'def foo; false; end'
63
-
64
- # Remove all statements
65
- mutation 'def foo; end'
66
-
67
- mutation 'def foo; raise; end'
68
-
69
- mutation 'def foo; super; end'
70
- end
71
-
72
- Mutant::Meta::Example.add :def do
73
- source 'def foo(a, b); end'
74
-
75
- # Deletion of each argument
76
- mutation 'def foo(a); end'
77
- mutation 'def foo(b); end'
78
-
79
- # Deletion of all arguments
80
- mutation 'def foo; end'
81
-
82
- # Rename each argument
83
- mutation 'def foo(_a, b); end'
84
- mutation 'def foo(a, _b); end'
85
-
86
- # Mutation of body
87
- mutation 'def foo(a, b); raise; end'
88
- mutation 'def foo(a, b); super; end'
89
- end
90
-
91
- Mutant::Meta::Example.add :def do
92
- source 'def foo(a, b = nil); true; end'
93
-
94
- mutation 'def foo(_a, b = nil); true; end'
95
- mutation 'def foo(a, b = nil); end'
96
- mutation 'def foo; true; end'
97
- mutation 'def foo(a, b = nil); raise; end'
98
- mutation 'def foo(a, b = nil); false; end'
99
- mutation 'def foo(a); true; end'
100
- mutation 'def foo(a, b = nil); b = nil; true; end'
101
- mutation 'def foo(b = nil); true; end'
102
- mutation 'def foo(a, _b = nil); true; end'
103
- mutation 'def foo(a, b); true; end'
104
- mutation 'def foo(a, b = nil); super; end'
105
- end
106
-
107
- Mutant::Meta::Example.add :def, :arg do
108
- source 'def foo(_unused); end'
109
-
110
- mutation 'def foo(_unused); raise; end'
111
- mutation 'def foo; end'
112
- mutation 'def foo(_unused); super; end'
113
- end
114
-
115
- Mutant::Meta::Example.add :def do
116
- source 'def foo(_unused = true); end'
117
-
118
- mutation 'def foo(_unused = false); end'
119
- mutation 'def foo(_unused = true); raise; end'
120
- mutation 'def foo(_unused); end'
121
- mutation 'def foo; end'
122
- mutation 'def foo(_unused = true); super; end'
123
- end
124
-
125
- Mutant::Meta::Example.add :def do
126
- source 'def foo(a = 0, b = 0); end'
127
- mutation 'def foo(a = 0, _b = 0); end'
128
- mutation 'def foo(_a = 0, b = 0); end'
129
- mutation 'def foo(a = 0, b = 1); end'
130
- mutation 'def foo(a = 0, b = -1); end'
131
- mutation 'def foo(a = 0, b = self); end'
132
- mutation 'def foo(a = 0, b = nil); end'
133
- mutation 'def foo(a = -1, b = 0); end'
134
- mutation 'def foo(a = self, b = 0); end'
135
- mutation 'def foo(a = nil, b = 0); end'
136
- mutation 'def foo(a = 1, b = 0); end'
137
- mutation 'def foo(a = 0); end'
138
- mutation 'def foo(b = 0); end'
139
- mutation 'def foo(a, b = 0); end'
140
- mutation 'def foo; end'
141
- mutation 'def foo(a = 0, b = 0); a = 0; end'
142
- mutation 'def foo(a = 0, b = 0); b = 0; end'
143
- mutation 'def foo(a = 0, b = 0); raise; end'
144
- mutation 'def foo(a = 0, b = 0); super; end'
145
- end
146
-
147
- Mutant::Meta::Example.add :def do
148
- source 'def foo(a = true); end'
149
-
150
- mutation 'def foo(a); end'
151
- mutation 'def foo(); end'
152
- mutation 'def foo(a = false); end'
153
- mutation 'def foo(_a = true); end'
154
- mutation 'def foo(a = true); raise; end'
155
- mutation 'def foo(a = true); a = true; end'
156
- mutation 'def foo(a = true); super; end'
157
- end
158
-
159
- Mutant::Meta::Example.add :def do
160
- source 'def self.foo; true; false; end'
161
-
162
- # Body presence mutation
163
- mutation 'def self.foo; false; false; end'
164
- mutation 'def self.foo; true; true; end'
165
-
166
- # Body presence mutation
167
- mutation 'def self.foo; true; end'
168
- mutation 'def self.foo; false; end'
169
-
170
- # Remove all statements
171
- mutation 'def self.foo; end'
172
-
173
- mutation 'def self.foo; raise; end'
174
-
175
- mutation 'def self.foo; super; end'
176
- end
177
-
178
- Mutant::Meta::Example.add :def do
179
-
180
- source 'def self.foo(a, b); end'
181
-
182
- # Deletion of each argument
183
- mutation 'def self.foo(a); end'
184
- mutation 'def self.foo(b); end'
185
-
186
- # Deletion of all arguments
187
- mutation 'def self.foo; end'
188
-
189
- # Rename each argument
190
- mutation 'def self.foo(_a, b); end'
191
- mutation 'def self.foo(a, _b); end'
192
-
193
- # Mutation of body
194
- mutation 'def self.foo(a, b); raise; end'
195
- mutation 'def self.foo(a, b); super; end'
196
- end