File tree Expand file tree Collapse file tree 3 files changed +10
-0
lines changed Expand file tree Collapse file tree 3 files changed +10
-0
lines changed Original file line number Diff line number Diff line change @@ -27,6 +27,8 @@ def self.default
27
27
# @method on_event
28
28
def_instance_delegator :event_bus , :on , :on_event
29
29
30
+ attr_writer :total_cases
31
+
30
32
# @private
31
33
def notify ( message , *args )
32
34
event_bus . send ( message , *args )
@@ -68,6 +70,10 @@ def retry_attempts
68
70
@options [ :retry ]
69
71
end
70
72
73
+ def total_cases
74
+ @total_cases ||= 0
75
+ end
76
+
71
77
def guess?
72
78
@options [ :guess ]
73
79
end
Original file line number Diff line number Diff line change @@ -8,6 +8,7 @@ module Filters
8
8
class Retry < Core ::Filter . new ( :configuration )
9
9
10
10
def test_case ( test_case )
11
+ configuration . total_cases += 1
11
12
configuration . on_event ( :test_case_finished ) do |event |
12
13
next unless retry_required? ( test_case , event )
13
14
Original file line number Diff line number Diff line change @@ -222,6 +222,8 @@ def legacy_formatter?(factory)
222
222
def failure?
223
223
if @configuration . wip?
224
224
summary_report . test_cases . total_passed > 0
225
+ elsif @configuration . retry_attempts > 0
226
+ summary_report . test_cases . total_passed != @configuration . total_cases
225
227
else
226
228
summary_report . test_cases . total_failed > 0 || summary_report . test_steps . total_failed > 0 ||
227
229
( @configuration . strict? && ( summary_report . test_steps . total_undefined > 0 || summary_report . test_steps . total_pending > 0 ) )
@@ -241,6 +243,7 @@ def filters
241
243
filters << Cucumber ::Core ::Test ::LocationsFilter . new ( filespecs . locations )
242
244
filters << Filters ::Randomizer . new ( @configuration . seed ) if @configuration . randomize?
243
245
filters << Filters ::Quit . new
246
+
244
247
filters << Filters ::Retry . new ( @configuration )
245
248
# TODO: can we just use RbLanguages's step definitions directly?
246
249
step_match_search = StepMatchSearch . new ( @support_code . ruby . method ( :step_matches ) , @configuration )
You can’t perform that action at this time.
0 commit comments