mutant-rspec 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.
- checksums.yaml +4 -4
- data/lib/mutant/integration/rspec.rb +100 -11
- metadata +8 -10
- data/lib/mutant/integration/rspec2.rb +0 -48
- data/lib/mutant/integration/rspec3.rb +0 -41
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ed85a3cccedbae0b629ccbd1d1d9cb02f5d4f599
|
4
|
+
data.tar.gz: c8d584e654120aa2eda22bb7b399c8f9625a9674
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e862760c664e8dfc7ba2452f033ddd86aa7ccd5f17faec9999528366609a90492bfb3602ca2bd08f4dc35e0f46915a7c10186e5ea130a2eea5d8678155dbbdb0
|
7
|
+
data.tar.gz: f79cfdcdab2db1f60e91d6c36cb608f8373a4942f834f746f6c02b750ff7aaaf0aee45a2bfeca8f9b4f9897f89e7a74aea441ee78f90d17c783d3d8051d2fbf4
|
@@ -1,4 +1,3 @@
|
|
1
|
-
# encoding: UTF-8
|
2
1
|
require 'rspec/core'
|
3
2
|
require 'rspec/core/formatters/base_text_formatter'
|
4
3
|
|
@@ -8,6 +7,24 @@ module Mutant
|
|
8
7
|
class Rspec < self
|
9
8
|
include AbstractType
|
10
9
|
|
10
|
+
register 'rspec'
|
11
|
+
|
12
|
+
RSPEC_2_VERSION_PREFIX = '2.'.freeze
|
13
|
+
|
14
|
+
# Return integration compatible to currently loaded rspec
|
15
|
+
#
|
16
|
+
# @return [Integration]
|
17
|
+
#
|
18
|
+
# @api private
|
19
|
+
#
|
20
|
+
def self.build
|
21
|
+
if RSpec::Core::Version::STRING.start_with?(RSPEC_2_VERSION_PREFIX)
|
22
|
+
Rspec2.new
|
23
|
+
else
|
24
|
+
Rspec3.new
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
11
28
|
# Setup rspec integration
|
12
29
|
#
|
13
30
|
# @return [self]
|
@@ -45,10 +62,10 @@ module Mutant
|
|
45
62
|
end
|
46
63
|
output.rewind
|
47
64
|
Result::Test.new(
|
48
|
-
test:
|
65
|
+
test: nil,
|
66
|
+
mutation: nil,
|
49
67
|
output: output.read,
|
50
68
|
runtime: Time.now - start,
|
51
|
-
mutation: nil,
|
52
69
|
passed: !failed
|
53
70
|
)
|
54
71
|
end
|
@@ -110,14 +127,86 @@ module Mutant
|
|
110
127
|
end
|
111
128
|
memoize :options, freezer: :noop
|
112
129
|
|
130
|
+
# Rspec2 integration
|
131
|
+
class Rspec2 < self
|
132
|
+
|
133
|
+
register 'rspec'
|
134
|
+
|
135
|
+
private
|
136
|
+
|
137
|
+
# Return options
|
138
|
+
#
|
139
|
+
# @return [RSpec::Core::ConfigurationOptions]
|
140
|
+
#
|
141
|
+
# @api private
|
142
|
+
#
|
143
|
+
def options
|
144
|
+
super.tap(&:parse_options)
|
145
|
+
end
|
146
|
+
|
147
|
+
# Return full description of example group
|
148
|
+
#
|
149
|
+
# @param [RSpec::Core::ExampleGroup] example_group
|
150
|
+
#
|
151
|
+
# @return [String]
|
152
|
+
#
|
153
|
+
# @api private
|
154
|
+
#
|
155
|
+
def full_description(example_group)
|
156
|
+
example_group.metadata.fetch(:example_group).fetch(:full_description)
|
157
|
+
end
|
158
|
+
|
159
|
+
# Return new reporter
|
160
|
+
#
|
161
|
+
# @param [StringIO] output
|
162
|
+
#
|
163
|
+
# @return [RSpec::Core::Reporter]
|
164
|
+
#
|
165
|
+
# @api private
|
166
|
+
#
|
167
|
+
def new_reporter(output)
|
168
|
+
formatter = RSpec::Core::Formatters::BaseTextFormatter.new(output)
|
169
|
+
|
170
|
+
RSpec::Core::Reporter.new(formatter)
|
171
|
+
end
|
172
|
+
|
173
|
+
end # Rspec2
|
174
|
+
|
175
|
+
# Rspec 3 integration
|
176
|
+
class Rspec3 < self
|
177
|
+
|
178
|
+
private
|
179
|
+
|
180
|
+
# Return full description for example group
|
181
|
+
#
|
182
|
+
# @param [RSpec::Core::ExampleGroup] example_group
|
183
|
+
#
|
184
|
+
# @return [String]
|
185
|
+
#
|
186
|
+
# @api private
|
187
|
+
#
|
188
|
+
def full_description(example_group)
|
189
|
+
example_group.metadata.fetch(:full_description)
|
190
|
+
end
|
191
|
+
|
192
|
+
# Return new reporter
|
193
|
+
#
|
194
|
+
# @param [StringIO] output
|
195
|
+
#
|
196
|
+
# @return [RSpec::Core::Reporter]
|
197
|
+
#
|
198
|
+
# @api private
|
199
|
+
#
|
200
|
+
def new_reporter(output)
|
201
|
+
formatter = RSpec::Core::Formatters::BaseTextFormatter.new(output)
|
202
|
+
notifications = RSpec::Core::Formatters::Loader.allocate.send(:notifications_for, formatter.class)
|
203
|
+
|
204
|
+
RSpec::Core::Reporter.new(configuration).tap do |reporter|
|
205
|
+
reporter.register_listener(formatter, *notifications)
|
206
|
+
end
|
207
|
+
end
|
208
|
+
|
209
|
+
end # Rspec3
|
113
210
|
end # Rspec
|
114
211
|
end # Integration
|
115
212
|
end # Mutant
|
116
|
-
|
117
|
-
RSPEC_2_VERSION_PREFIX = '2.'.freeze
|
118
|
-
|
119
|
-
if RSpec::Core::Version::STRING.start_with?(RSPEC_2_VERSION_PREFIX)
|
120
|
-
require 'mutant/integration/rspec2'
|
121
|
-
else
|
122
|
-
require 'mutant/integration/rspec3'
|
123
|
-
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mutant-rspec
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
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-
|
11
|
+
date: 2014-08-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: mutant
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.
|
19
|
+
version: 0.6.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 0.
|
26
|
+
version: 0.6.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rspec-core
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -31,9 +31,9 @@ dependencies:
|
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: 2.14.1
|
34
|
-
- - "
|
34
|
+
- - "<"
|
35
35
|
- !ruby/object:Gem::Version
|
36
|
-
version: 3.
|
36
|
+
version: 3.1.0
|
37
37
|
type: :runtime
|
38
38
|
prerelease: false
|
39
39
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -41,9 +41,9 @@ dependencies:
|
|
41
41
|
- - ">="
|
42
42
|
- !ruby/object:Gem::Version
|
43
43
|
version: 2.14.1
|
44
|
-
- - "
|
44
|
+
- - "<"
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
version: 3.
|
46
|
+
version: 3.1.0
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: bundler
|
49
49
|
requirement: !ruby/object:Gem::Requirement
|
@@ -76,8 +76,6 @@ files:
|
|
76
76
|
- LICENSE
|
77
77
|
- TODO
|
78
78
|
- lib/mutant/integration/rspec.rb
|
79
|
-
- lib/mutant/integration/rspec2.rb
|
80
|
-
- lib/mutant/integration/rspec3.rb
|
81
79
|
homepage: https://github.com/mbj/mutant
|
82
80
|
licenses:
|
83
81
|
- MIT
|
@@ -1,48 +0,0 @@
|
|
1
|
-
module Mutant
|
2
|
-
class Integration
|
3
|
-
# Rspec2 integration
|
4
|
-
class Rspec2 < Rspec
|
5
|
-
|
6
|
-
register 'rspec'
|
7
|
-
|
8
|
-
private
|
9
|
-
|
10
|
-
# Return options
|
11
|
-
#
|
12
|
-
# @return [RSpec::Core::ConfigurationOptions]
|
13
|
-
#
|
14
|
-
# @api private
|
15
|
-
#
|
16
|
-
def options
|
17
|
-
super.tap(&:parse_options)
|
18
|
-
end
|
19
|
-
|
20
|
-
# Return full description of example group
|
21
|
-
#
|
22
|
-
# @param [RSpec::Core::ExampleGroup] example_group
|
23
|
-
#
|
24
|
-
# @return [String]
|
25
|
-
#
|
26
|
-
# @api private
|
27
|
-
#
|
28
|
-
def full_description(example_group)
|
29
|
-
example_group.metadata.fetch(:example_group).fetch(:full_description)
|
30
|
-
end
|
31
|
-
|
32
|
-
# Return new reporter
|
33
|
-
#
|
34
|
-
# @param [StringIO] output
|
35
|
-
#
|
36
|
-
# @return [RSpec::Core::Reporter]
|
37
|
-
#
|
38
|
-
# @api private
|
39
|
-
#
|
40
|
-
def new_reporter(output)
|
41
|
-
formatter = RSpec::Core::Formatters::BaseTextFormatter.new(output)
|
42
|
-
|
43
|
-
RSpec::Core::Reporter.new(formatter)
|
44
|
-
end
|
45
|
-
|
46
|
-
end # Rspec2
|
47
|
-
end # Integration
|
48
|
-
end # Mutant
|
@@ -1,41 +0,0 @@
|
|
1
|
-
module Mutant
|
2
|
-
class Integration
|
3
|
-
# Rspec3 integration
|
4
|
-
class Rspec3 < Rspec
|
5
|
-
|
6
|
-
register 'rspec'
|
7
|
-
|
8
|
-
private
|
9
|
-
|
10
|
-
# Return full description for example group
|
11
|
-
#
|
12
|
-
# @param [RSpec::Core::ExampleGroup] example_group
|
13
|
-
#
|
14
|
-
# @return [String]
|
15
|
-
#
|
16
|
-
# @api private
|
17
|
-
#
|
18
|
-
def full_description(example_group)
|
19
|
-
example_group.metadata.fetch(:full_description)
|
20
|
-
end
|
21
|
-
|
22
|
-
# Return new reporter
|
23
|
-
#
|
24
|
-
# @param [StringIO] output
|
25
|
-
#
|
26
|
-
# @return [RSpec::Core::Reporter]
|
27
|
-
#
|
28
|
-
# @api private
|
29
|
-
#
|
30
|
-
def new_reporter(output)
|
31
|
-
formatter = RSpec::Core::Formatters::BaseTextFormatter.new(output)
|
32
|
-
notifications = RSpec::Core::Formatters::Loader.allocate.send(:notifications_for, formatter.class)
|
33
|
-
|
34
|
-
RSpec::Core::Reporter.new(configuration).tap do |reporter|
|
35
|
-
reporter.register_listener(formatter, *notifications)
|
36
|
-
end
|
37
|
-
end
|
38
|
-
|
39
|
-
end # Rspec3
|
40
|
-
end # Integration
|
41
|
-
end # Mutant
|