Skip to content

Commit 8815543

Browse files
committed
skipped tests should not be reported as failure
1 parent fccc1ac commit 8815543

File tree

3 files changed

+16
-2
lines changed

3 files changed

+16
-2
lines changed

acceptance/test_unit_example_test.rb

+3
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,7 @@ class TestUnitExampleTestTwo < Test::Unit::TestCase
1414
def test_two
1515
assert true
1616
end
17+
def test_three
18+
omit 'omitted'
19+
end
1720
end

acceptance/verification_spec.rb

+6-1
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,16 @@
3636

3737
it { is_expected.to have(0).errors }
3838
it { is_expected.to have(0).failures }
39-
it { is_expected.to have(1).testcases }
39+
it { is_expected.to have(2).testcases }
4040

4141
describe "the assertion count" do
4242
subject { result.assertions_count }
4343
it { is_expected.to eql 1 }
44+
end
45+
46+
describe "the skipped count" do
47+
subject { result.skipped_count}
48+
it { is_expected.to eql 1 }
4449
end
4550

4651
it_behaves_like "a report with consistent attribute counts"

lib/ci/reporter/test_unit.rb

+7-1
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ class TestUnitError
3131
def initialize(fault) @fault = fault end
3232
def failure?() false end
3333
def error?() true end
34+
def skipped?() false end
3435
def name() @fault.exception.class.name end
3536
def message() @fault.exception.message end
3637
def location() @fault.exception.backtrace.join("\n") end
@@ -41,6 +42,7 @@ class TestUnitFailure
4142
def initialize(fault) @fault = fault end
4243
def failure?() true end
4344
def error?() false end
45+
def skipped?() false end
4446
def name() Test::Unit::AssertionFailedError.name end
4547
def message() @fault.message end
4648
def location() @fault.location.join("\n") end
@@ -51,6 +53,7 @@ class TestUnitSkipped
5153
def initialize(fault) @fault = fault end
5254
def failure?() false end
5355
def error?() false end
56+
def skipped?() true end
5457
def name() @fault.class.name end
5558
def message() @fault.message end
5659
def location() @fault.location.join("\n") end
@@ -61,6 +64,7 @@ class TestUnitNotification
6164
def initialize(fault) @fault = fault end
6265
def failure?() false end
6366
def error?() false end
67+
def skipped?() false end
6468
def name() @fault.class.name end
6569
def message() @fault.message end
6670
def location() @fault.location.join("\n") end
@@ -103,7 +107,9 @@ def test_finished(name)
103107

104108
def fault(fault)
105109
tc = @current_suite.testcases.last
106-
tc.failures << Failure.new(fault)
110+
f = Failure.new(fault)
111+
tc.failures << f
112+
tc.skipped=true if f.skipped?
107113
end
108114

109115
def finished(elapsed_time)

0 commit comments

Comments
 (0)