module RubyUnit::Report
The RubyUnit::Report
module is the test results report
Public Class Methods
counted_stats()
click to toggle source
# File lib/RubyUnit/Report.rb, line 136 def self.counted_stats counted = rated_stats.clone counted['Skipped Tests'] = @@skip.count unless @@skip.count.zero? counted['Incomplete Tests'] = @@incomplete.count unless @@incomplete.count.zero? counted['Failed Tests'] = @@fail.count counted end
finish()
click to toggle source
# File lib/RubyUnit/Report.rb, line 46 def self.finish @@finish = Time.new if @@finish.nil? @@finish end
per_second(count)
click to toggle source
# File lib/RubyUnit/Report.rb, line 92 def self.per_second count return 0 if @@start.nil? finish = @@finish.nil? ? Time.new : @@finish elapsed = (finish - @@start).to_r (count * (Rational(elapsed.denominator, elapsed.numerator))).to_f end
rated_stats()
click to toggle source
# File lib/RubyUnit/Report.rb, line 120 def self.rated_stats rated = {} rated['Tests'] = tests rated['Assertions'] = TestCase.assertions rated end
record(result)
click to toggle source
# File lib/RubyUnit/Report.rb, line 19 def self.record result @@results << result case result.error when RubyUnit::AssertionFailure @@fail << result when RubyUnit::SkippedTest @@skip << result when RubyUnit::IncompleteTest @@incomplete << result else if result.error.class <= Exception puts "error #{result.error.class}" @@errors << result end end end
report(type, results = [], trace = true)
click to toggle source
# File lib/RubyUnit/Report.rb, line 63 def self.report type, results = [], trace = true @@i = 0 puts "\n#{results.count} #{type}:\n" if results.count > 0 results.each_with_index do |result, i| report_head result report_info result, trace end end
report_counted()
click to toggle source
# File lib/RubyUnit/Report.rb, line 127 def self.report_counted s = '' counted_stats.each do |counted, count| s << "#{count} #{counted}" s << ', ' unless counted_stats.keys.last == counted end puts s end
report_errors()
click to toggle source
# File lib/RubyUnit/Report.rb, line 72 def self.report_errors report 'Errors in Tests', @@errors end
report_failures()
click to toggle source
# File lib/RubyUnit/Report.rb, line 76 def self.report_failures report 'Failed Tests', @@fail end
report_head(result)
click to toggle source
# File lib/RubyUnit/Report.rb, line 51 def self.report_head result puts puts "#{@@i += 1}) #{result.test_case}::#{result.test}(#{result.params})" puts result.error.class.to_s + ": " + result.error.message end
report_incompletes()
click to toggle source
# File lib/RubyUnit/Report.rb, line 84 def self.report_incompletes report 'Incomplete Tests', @@incomplete, false end
report_info(result, trace = true)
click to toggle source
# File lib/RubyUnit/Report.rb, line 57 def self.report_info result, trace = true puts puts result.error.info if result.error.respond_to? :info puts result.error.backtrace * "\n" if trace end
report_rated()
click to toggle source
# File lib/RubyUnit/Report.rb, line 111 def self.report_rated s = '' rated_stats.each do |rated, count| s << "%.3f #{rated}/s" % [per_second(count)] s << ', ' unless rated_stats.keys.last == rated end puts s end
report_skips()
click to toggle source
# File lib/RubyUnit/Report.rb, line 80 def self.report_skips report 'Skipped Tests', @@skip, false end
report_stats()
click to toggle source
# File lib/RubyUnit/Report.rb, line 144 def self.report_stats puts report_timed report_rated report_counted end
report_timed()
click to toggle source
# File lib/RubyUnit/Report.rb, line 99 def self.report_timed timed_stats.each do |key, duration| puts "#{key} in #{duration} seconds" end end
start()
click to toggle source
# File lib/RubyUnit/Report.rb, line 41 def self.start @@start = Time.new if @@start.nil? @@start end
stats()
click to toggle source
# File lib/RubyUnit/Report.rb, line 151 def self.stats {:timed=>timed_stats,:rate=>rated_stats,:count=>counted_stats} end
status()
click to toggle source
# File lib/RubyUnit/Report.rb, line 88 def self.status @@fail.count + @@errors.count end
tests()
click to toggle source
# File lib/RubyUnit/Report.rb, line 37 def self.tests @@results.count end
timed_stats()
click to toggle source
# File lib/RubyUnit/Report.rb, line 105 def self.timed_stats timed = {} timed['Tests Completed'] = @@finish - @@start timed end