Collects Test::Unit::Failure and Test::Unit::Error so that they can be displayed to the user. To this end, observers can be added to it, allowing the dynamic updating of, say, a UI.
Constructs a new, empty TestResult.
# File test/unit/testresult.rb, line 24
def initialize
@run_count, @assertion_count = 0, 0
@failures, @errors = Array.new, Array.new
end
Records an individual assertion.
# File test/unit/testresult.rb, line 50
def add_assertion
@assertion_count += 1
notify_listeners(CHANGED, self)
end
Records a Test::Unit::Error.
# File test/unit/testresult.rb, line 43
def add_error(error)
@errors << error
notify_listeners(FAULT, error)
notify_listeners(CHANGED, self)
end
Records a Test::Unit::Failure.
# File test/unit/testresult.rb, line 36
def add_failure(failure)
@failures << failure
notify_listeners(FAULT, failure)
notify_listeners(CHANGED, self)
end
Records a test run.
# File test/unit/testresult.rb, line 30
def add_run
@run_count += 1
notify_listeners(CHANGED, self)
end
Returns the number of errors this TestResult has recorded.
# File test/unit/testresult.rb, line 75
def error_count
return @errors.size
end
Returns the number of failures this TestResult has recorded.
# File test/unit/testresult.rb, line 69
def failure_count
return @failures.size
end
Returns whether or not this TestResult represents successful completion.
# File test/unit/testresult.rb, line 63
def passed?
return @failures.empty? && @errors.empty?
end
Returns a string contain the recorded runs, assertions, failures and errors in this TestResult.
# File test/unit/testresult.rb, line 57
def to_s
"#{run_count} tests, #{assertion_count} assertions, #{failure_count} failures, #{error_count} errors"
end
Commenting is here to help enhance the documentation. For example, code samples, or clarification of the documentation.
If you have questions about Ruby or the documentation, please post to one of the Ruby mailing lists. You will get better, faster, help that way.
If you wish to post a correction of the docs, please do so, but also file bug report so that it can be corrected for the next release. Thank you.
If you want to help improve the Ruby documentation, please see Improve the docs, or visit Documenting-ruby.org.