mcmire-protest 0.3.1 → 0.3.2
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/protest.rb +1 -1
- data/lib/protest/test_case.rb +9 -1
- data/lib/protest/utils/summaries.rb +5 -3
- data/mcmire-protest.gemspec +2 -2
- metadata +2 -2
data/lib/protest.rb
CHANGED
data/lib/protest/test_case.rb
CHANGED
@@ -183,7 +183,7 @@ module Protest
|
|
183
183
|
# by passing it as an argument.
|
184
184
|
def assert(condition, message="Expected condition to be satisfied")
|
185
185
|
@report.add_assertion
|
186
|
-
raise AssertionFailed, message unless condition
|
186
|
+
raise AssertionFailed, (Proc === message ? message.call : message) unless condition
|
187
187
|
end
|
188
188
|
|
189
189
|
# Provided for Test::Unit compatibility, this lets you include
|
@@ -202,6 +202,10 @@ module Protest
|
|
202
202
|
def name
|
203
203
|
@name
|
204
204
|
end
|
205
|
+
|
206
|
+
def context_description
|
207
|
+
self.class.description
|
208
|
+
end
|
205
209
|
|
206
210
|
private
|
207
211
|
|
@@ -252,6 +256,10 @@ module Protest
|
|
252
256
|
def run(report)
|
253
257
|
@test.send("do_global_#{@type}")
|
254
258
|
end
|
259
|
+
|
260
|
+
def context_description
|
261
|
+
@test.description
|
262
|
+
end
|
255
263
|
end
|
256
264
|
end
|
257
265
|
end
|
@@ -71,10 +71,11 @@ module Protest
|
|
71
71
|
pad_indexes = failures_and_errors.size.to_s.size
|
72
72
|
failures_and_errors.each_with_index do |error, index|
|
73
73
|
colorize_as = ErroredTest === error ? :errored : :failed
|
74
|
-
puts " #{pad(index+1, pad_indexes)}) #{test_type(error)} in `#{error.test.
|
74
|
+
puts " #{pad(index+1, pad_indexes)}) #{test_type(error)} in `#{error.test.context_description} #{error.test_name}' (on line #{error.line} of `#{error.file}')", colorize_as
|
75
75
|
# If error message has line breaks, indent the message
|
76
76
|
prefix = "with"
|
77
|
-
unless error.error.is_a?(Protest::AssertionFailed) ||
|
77
|
+
unless error.error.is_a?(Protest::AssertionFailed) ||
|
78
|
+
((RUBY_VERSION =~ /^1\.9/) ? error.error.is_a?(MiniTest::Assertion) : error.error.is_a?(::Test::Unit::AssertionFailedError))
|
78
79
|
prefix << " #{error.error.class}"
|
79
80
|
end
|
80
81
|
if error.error_message =~ /\n/
|
@@ -113,9 +114,10 @@ module Protest
|
|
113
114
|
# and in Ruby 1.8, String#each is equivalent to String#each_line
|
114
115
|
# so effectively it's equivalent to .split("\n") but keeping the \n's
|
115
116
|
strings = [strings] unless Array === strings
|
116
|
-
strings.map do |str|
|
117
|
+
out = strings.map do |str|
|
117
118
|
str.to_s.split("\n").map {|s| indent_with * size + s }.join("\n")
|
118
119
|
end
|
120
|
+
out.size == 1 ? out[0] : out
|
119
121
|
end
|
120
122
|
|
121
123
|
def pad(str, amount)
|
data/mcmire-protest.gemspec
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mcmire-protest
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- "Nicol\xC3\xA1s Sanguinetti"
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2010-01-
|
12
|
+
date: 2010-01-14 00:00:00 -06:00
|
13
13
|
default_executable:
|
14
14
|
dependencies: []
|
15
15
|
|