Class: CI::Reporter::TestUnit
- Inherits:
-
Test::Unit::UI::TestRunnerMediator
- Object
- Test::Unit::UI::TestRunnerMediator
- CI::Reporter::TestUnit
- Defined in:
- lib/ci/reporter/test_unit.rb
Overview
Replacement Mediator that adds listeners to capture the results of the Test::Unit
runs.
Instance Method Summary collapse
- #fault(fault) ⇒ Object
- #finished(elapsed_time) ⇒ Object
-
#initialize(suite, report_mgr = nil) ⇒ TestUnit
constructor
A new instance of TestUnit.
- #started(result) ⇒ Object
- #test_finished(name) ⇒ Object
- #test_started(name) ⇒ Object
Constructor Details
#initialize(suite, report_mgr = nil) ⇒ TestUnit
Returns a new instance of TestUnit.
84 85 86 87 88 89 90 91 92 |
# File 'lib/ci/reporter/test_unit.rb', line 84 def initialize(suite, report_mgr = nil) super(suite) @report_manager = report_mgr || ReportManager.new("test") add_listener(Test::Unit::UI::TestRunnerMediator::STARTED, &method(:started)) add_listener(Test::Unit::TestCase::STARTED, &method(:test_started)) add_listener(Test::Unit::TestCase::FINISHED, &method(:test_finished)) add_listener(Test::Unit::TestResult::FAULT, &method(:fault)) add_listener(Test::Unit::UI::TestRunnerMediator::FINISHED, &method(:finished)) end |
Instance Method Details
#fault(fault) ⇒ Object
115 116 117 118 |
# File 'lib/ci/reporter/test_unit.rb', line 115 def fault(fault) tc = @current_suite.testcases.last tc.failures << Failure.new(fault) end |
#finished(elapsed_time) ⇒ Object
120 121 122 |
# File 'lib/ci/reporter/test_unit.rb', line 120 def finished(elapsed_time) finish_suite end |
#started(result) ⇒ Object
94 95 96 97 98 99 100 |
# File 'lib/ci/reporter/test_unit.rb', line 94 def started(result) @suite_result = result @last_assertion_count = 0 @current_suite = nil @unknown_count = 0 @result_assertion_count = 0 end |
#test_finished(name) ⇒ Object
111 112 113 |
# File 'lib/ci/reporter/test_unit.rb', line 111 def test_finished(name) finish_test end |
#test_started(name) ⇒ Object
102 103 104 105 106 107 108 109 |
# File 'lib/ci/reporter/test_unit.rb', line 102 def test_started(name) test_name, suite_name = extract_names(name) unless @current_suite && @current_suite.name == suite_name finish_suite start_suite(suite_name) end start_test(test_name) end |