Class | Test::Unit::UI::SpecDox::TestRunner |
In: |
lib/test/spec/dox.rb
|
Parent: | Test::Unit::UI::Console::TestRunner |
# File lib/test/spec/dox.rb, line 11 11: def add_fault(fault) 12: if fault.kind_of? Test::Spec::Disabled 13: @disabled += 1 14: output_no_nl " (disabled)" 15: else 16: @faults << fault 17: word = fault.class.name[/(.*::)?(.*)/, 2].upcase 18: output_no_nl " (#{word} - #{@faults.size})" 19: end 20: end
# File lib/test/spec/dox.rb, line 30 30: def finished(elapsed_time) 31: nl 32: output "Finished in #{elapsed_time} seconds." 33: @faults.each_with_index do |fault, index| 34: nl 35: output("%3d) %s" % [index + 1, fault.long_display]) 36: end 37: nl 38: output_result 39: end
# File lib/test/spec/dox.rb, line 116 116: def indent(depth) 117: @indent = depth 118: @prefix = " " * depth 119: end
# File lib/test/spec/dox.rb, line 95 95: def output_heading(heading) 96: output "#{@prefix}#{heading}" 97: end
# File lib/test/spec/dox.rb, line 91 91: def output_item(item) 92: output_no_nl "#{@prefix}- #{item}" 93: end
# File lib/test/spec/dox.rb, line 86 86: def output_no_nl(something, level=NORMAL) 87: @io.write(something) if (output?(level)) 88: @io.flush 89: end
# File lib/test/spec/dox.rb, line 41 41: def output_result 42: if @disabled > 0 43: disabled = ", #{@disabled} disabled" 44: else 45: disabled = "" 46: end 47: 48: r = "%d specifications#{disabled} (%d requirements), %d failures" % [ 49: @result.run_count, @result.assertion_count, @result.failure_count] 50: r << ", #{@result.error_count} errors" if @result.error_count > 0 51: output r 52: end
# File lib/test/spec/dox.rb, line 7 7: def setup_mediator 8: @mediator = create_mediator(@suite) 9: end
# File lib/test/spec/dox.rb, line 22 22: def started(result) 23: @result = result 24: @context = nil 25: @contexts = [] 26: @disabled = 0 27: indent 0 28: end
# File lib/test/spec/dox.rb, line 81 81: def test_finished(name) 82: # Don't let empty contexts clutter up the output. 83: nl unless name =~ /\Adefault_test\(/ 84: end
# File lib/test/spec/dox.rb, line 54 54: def test_started(name) 55: contextname, specname = unmangle name 56: return if contextname.nil? || specname.nil? 57: 58: if @context != contextname 59: @context = contextname 60: 61: @old_contexts = @contexts 62: @contexts = @context.split("\t") 63: 64: common = 0 65: @contexts.zip(@old_contexts) { |a, b| 66: break if a != b 67: common += 1 68: } 69: 70: nl if common == 0 71: 72: @contexts[common..-1].each_with_index { |head, i| 73: indent common + i 74: output_heading head 75: } 76: end 77: 78: output_item specname 79: end
# File lib/test/spec/dox.rb, line 99 99: def unmangle(name) 100: if name =~ /\Atest_spec \{(.*?)\} \d+ \[(.*)\]/ 101: contextname = $1 102: specname = $2 103: elsif name =~ /test_(.*?)\((.*)\)$/ 104: specname = $1 105: contextname = $2 106: 107: contextname.gsub!(/^Test\B|\BTest$/, '') 108: specname.gsub!(/_/, ' ') 109: else 110: contextname = specname = nil 111: end 112: 113: [contextname, specname] 114: end