mutant-minitest 0.10.3 → 0.10.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/mutant/integration/minitest.rb +5 -11
- data/lib/mutant/minitest/coverage.rb +51 -0
- metadata +5 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9f7121d271ef2be52018b69289655834ecf482b0b1aaa8e39c131f370fde12ce
|
4
|
+
data.tar.gz: 928eca5775d2ee7243f22c6b323bf606aebfd94534c9bc7d6b555fae9e4bf11f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0f4da70bdeb4f1043a05ad6a4b39eb3b79b80d6cfab33395cf352accfe83f0fa9ebce5dfd7b00883a3375f8fcebf047f27def52522419ded024a379e99e0f9b4
|
7
|
+
data.tar.gz: 6e7941352bf80971fee7600b555ebeddd3f41ac760ba986ebc2877a7a92b78e693a92efbbc4b56742508357bfad27c3e5c136e1f3c28f0b4e23031259d35ba8b
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
#
|
3
|
+
# The minitest integration was sponsored by [Arkency](https://arkency.com/).
|
4
4
|
# Without their support this integration would not exist.
|
5
5
|
|
6
6
|
require 'minitest'
|
@@ -83,14 +83,11 @@ module Mutant
|
|
83
83
|
# @return [Result::Test]
|
84
84
|
#
|
85
85
|
# rubocop:disable Metrics/MethodLength
|
86
|
-
#
|
87
|
-
# ignore :reek:TooManyStatements
|
88
86
|
def call(tests)
|
89
87
|
test_cases = tests.map(&all_tests_index.method(:fetch))
|
90
|
-
|
91
|
-
start = Timer.now
|
88
|
+
start = timer.now
|
92
89
|
|
93
|
-
reporter = ::Minitest::SummaryReporter.new(
|
90
|
+
reporter = ::Minitest::SummaryReporter.new($stdout)
|
94
91
|
|
95
92
|
reporter.start
|
96
93
|
|
@@ -98,13 +95,10 @@ module Mutant
|
|
98
95
|
break unless test.call(reporter)
|
99
96
|
end
|
100
97
|
|
101
|
-
output.rewind
|
102
|
-
|
103
98
|
Result::Test.new(
|
104
99
|
passed: reporter.passed?,
|
105
100
|
tests: tests,
|
106
|
-
|
107
|
-
runtime: Timer.now - start
|
101
|
+
runtime: timer.now - start
|
108
102
|
)
|
109
103
|
end
|
110
104
|
|
@@ -128,7 +122,7 @@ module Mutant
|
|
128
122
|
def construct_test(test_case)
|
129
123
|
Test.new(
|
130
124
|
id: test_case.identification,
|
131
|
-
expressions: test_case.expressions(
|
125
|
+
expressions: test_case.expressions(expression_parser)
|
132
126
|
)
|
133
127
|
end
|
134
128
|
|
@@ -0,0 +1,51 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'minitest'
|
4
|
+
|
5
|
+
module Mutant
|
6
|
+
module Minitest
|
7
|
+
module Coverage
|
8
|
+
# Setup coverage declaration for current class
|
9
|
+
#
|
10
|
+
# @param [String]
|
11
|
+
#
|
12
|
+
# @example
|
13
|
+
#
|
14
|
+
# class MyTest < MiniTest::Test
|
15
|
+
# cover 'MyCode*'
|
16
|
+
#
|
17
|
+
# def test_some_stuff
|
18
|
+
# end
|
19
|
+
# end
|
20
|
+
#
|
21
|
+
# @api public
|
22
|
+
def cover(expression)
|
23
|
+
@cover_expressions = Set.new unless defined?(@cover_expressions)
|
24
|
+
|
25
|
+
@cover_expressions << expression
|
26
|
+
end
|
27
|
+
|
28
|
+
# Effective coverage expression
|
29
|
+
#
|
30
|
+
# @return [Set<String>]
|
31
|
+
#
|
32
|
+
# @api private
|
33
|
+
def resolve_cover_expressions
|
34
|
+
return @cover_expressions if defined?(@cover_expressions)
|
35
|
+
|
36
|
+
try_superclass_cover_expressions
|
37
|
+
end
|
38
|
+
|
39
|
+
private
|
40
|
+
|
41
|
+
def try_superclass_cover_expressions
|
42
|
+
return if superclass.equal?(::Minitest::Runnable)
|
43
|
+
|
44
|
+
superclass.resolve_cover_expressions
|
45
|
+
end
|
46
|
+
|
47
|
+
end # Coverage
|
48
|
+
end # Minitest
|
49
|
+
end # Mutant
|
50
|
+
|
51
|
+
Minitest::Test.extend(Mutant::Minitest::Coverage)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mutant-minitest
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.10.
|
4
|
+
version: 0.10.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Markus Schirp
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-11-
|
11
|
+
date: 2020-11-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: minitest
|
@@ -30,14 +30,14 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 0.10.
|
33
|
+
version: 0.10.8
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 0.10.
|
40
|
+
version: 0.10.8
|
41
41
|
description: Minitest integration for mutant
|
42
42
|
email:
|
43
43
|
- mbj@schirp-dso.com
|
@@ -48,6 +48,7 @@ extra_rdoc_files:
|
|
48
48
|
files:
|
49
49
|
- LICENSE
|
50
50
|
- lib/mutant/integration/minitest.rb
|
51
|
+
- lib/mutant/minitest/coverage.rb
|
51
52
|
homepage: https://github.com/mbj/mutant
|
52
53
|
licenses:
|
53
54
|
- Nonstandard
|