minitest-reporters 0.13.1 → 0.14.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.
@@ -0,0 +1,26 @@
|
|
1
|
+
module MiniTest
|
2
|
+
module RelativePosition
|
3
|
+
TEST_PADDING = 2
|
4
|
+
TEST_SIZE = 63
|
5
|
+
MARK_SIZE = 5
|
6
|
+
INFO_PADDING = 8
|
7
|
+
|
8
|
+
private
|
9
|
+
|
10
|
+
def print_with_info_padding(line)
|
11
|
+
puts pad(line, INFO_PADDING)
|
12
|
+
end
|
13
|
+
|
14
|
+
def pad(str, size)
|
15
|
+
' ' * size + str
|
16
|
+
end
|
17
|
+
|
18
|
+
def pad_mark(str)
|
19
|
+
"%#{MARK_SIZE}s" % str
|
20
|
+
end
|
21
|
+
|
22
|
+
def pad_test(str)
|
23
|
+
pad("%-#{TEST_SIZE}s" % str, TEST_PADDING)
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
data/lib/minitest/reporters.rb
CHANGED
@@ -10,11 +10,13 @@ module MiniTest
|
|
10
10
|
# @see https://github.com/seattlerb/minitest MiniTest
|
11
11
|
class DefaultReporter
|
12
12
|
include Reporter
|
13
|
+
include RelativePosition
|
13
14
|
|
14
15
|
def initialize(options = {})
|
15
16
|
@detailed_skip = options.fetch(:detailed_skip, true)
|
16
17
|
@slow_count = options.fetch(:slow_count, 0)
|
17
18
|
@slow_suite_count = options.fetch(:slow_suite_count, 0)
|
19
|
+
@fast_fail = options.fetch(:fast_fail, false)
|
18
20
|
@test_times = []
|
19
21
|
@suite_times = []
|
20
22
|
@color = options.fetch(:color) do
|
@@ -46,11 +48,29 @@ module MiniTest
|
|
46
48
|
end
|
47
49
|
|
48
50
|
def failure(suite, test, test_runner)
|
49
|
-
|
51
|
+
if @fast_fail
|
52
|
+
puts
|
53
|
+
puts suite.name
|
54
|
+
print pad_test(test)
|
55
|
+
print(red(pad_mark('FAIL')))
|
56
|
+
puts
|
57
|
+
print_info(test_runner.exception)
|
58
|
+
else
|
59
|
+
after_test(red('F'))
|
60
|
+
end
|
50
61
|
end
|
51
62
|
|
52
63
|
def error(suite, test, test_runner)
|
53
|
-
|
64
|
+
if @fast_fail
|
65
|
+
puts
|
66
|
+
puts suite.name
|
67
|
+
print pad_test(test)
|
68
|
+
print(red(pad_mark('ERROR')))
|
69
|
+
puts
|
70
|
+
print_info(test_runner.exception)
|
71
|
+
else
|
72
|
+
after_test(red('E'))
|
73
|
+
end
|
54
74
|
end
|
55
75
|
|
56
76
|
def after_suite(suite)
|
@@ -67,11 +87,13 @@ module MiniTest
|
|
67
87
|
puts
|
68
88
|
puts colored_for(suite_result, status_line)
|
69
89
|
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
90
|
+
unless @fast_fail
|
91
|
+
runner.test_results.each do |suite, tests|
|
92
|
+
tests.each do |test, test_runner|
|
93
|
+
if message = message_for(test_runner)
|
94
|
+
puts
|
95
|
+
print colored_for(test_runner.result, message)
|
96
|
+
end
|
75
97
|
end
|
76
98
|
end
|
77
99
|
end
|
@@ -177,6 +199,11 @@ module MiniTest
|
|
177
199
|
'%d tests, %d assertions, %d failures, %d errors, %d skips' %
|
178
200
|
[runner.test_count, runner.assertion_count, runner.failures, runner.errors, runner.skips]
|
179
201
|
end
|
202
|
+
|
203
|
+
def print_info(e)
|
204
|
+
e.message.each_line { |line| print_with_info_padding(line) }
|
205
|
+
filter_backtrace(e.backtrace).each { |line| print_with_info_padding(line) }
|
206
|
+
end
|
180
207
|
end
|
181
208
|
end
|
182
209
|
end
|
@@ -11,11 +11,7 @@ module MiniTest
|
|
11
11
|
class SpecReporter
|
12
12
|
include Reporter
|
13
13
|
include ANSI::Code
|
14
|
-
|
15
|
-
TEST_PADDING = 2
|
16
|
-
TEST_SIZE = 63
|
17
|
-
MARK_SIZE = 5
|
18
|
-
INFO_PADDING = 8
|
14
|
+
include RelativePosition
|
19
15
|
|
20
16
|
def before_suites(suites, type)
|
21
17
|
puts 'Started'
|
@@ -80,22 +76,10 @@ module MiniTest
|
|
80
76
|
end
|
81
77
|
|
82
78
|
def print_info(e)
|
83
|
-
e.message.each_line { |line|
|
79
|
+
e.message.each_line { |line| print_with_info_padding(line) }
|
84
80
|
|
85
81
|
trace = filter_backtrace(e.backtrace)
|
86
|
-
trace.each { |line|
|
87
|
-
end
|
88
|
-
|
89
|
-
def pad(str, size)
|
90
|
-
' ' * size + str
|
91
|
-
end
|
92
|
-
|
93
|
-
def pad_mark(str)
|
94
|
-
"%#{MARK_SIZE}s" % str
|
95
|
-
end
|
96
|
-
|
97
|
-
def pad_test(str)
|
98
|
-
pad("%-#{TEST_SIZE}s" % str, TEST_PADDING)
|
82
|
+
trace.each { |line| print_with_info_padding(line) }
|
99
83
|
end
|
100
84
|
end
|
101
85
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: minitest-reporters
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.14.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-12-
|
12
|
+
date: 2012-12-27 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: minitest
|
@@ -129,6 +129,7 @@ files:
|
|
129
129
|
- Rakefile
|
130
130
|
- lib/minitest/before_test_hook.rb
|
131
131
|
- lib/minitest/extensible_backtrace_filter.rb
|
132
|
+
- lib/minitest/relative_position.rb
|
132
133
|
- lib/minitest/reporter.rb
|
133
134
|
- lib/minitest/reporter_runner.rb
|
134
135
|
- lib/minitest/reporters.rb
|
@@ -162,7 +163,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
162
163
|
version: '0'
|
163
164
|
segments:
|
164
165
|
- 0
|
165
|
-
hash:
|
166
|
+
hash: -807798255971397869
|
166
167
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
167
168
|
none: false
|
168
169
|
requirements:
|
@@ -171,7 +172,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
171
172
|
version: '0'
|
172
173
|
segments:
|
173
174
|
- 0
|
174
|
-
hash:
|
175
|
+
hash: -807798255971397869
|
175
176
|
requirements: []
|
176
177
|
rubyforge_project: minitest-reporters
|
177
178
|
rubygems_version: 1.8.24
|