test-unit-runner-tap 1.0.0 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,84 +0,0 @@
1
- #--
2
- #
3
- # Author:: Kouhei Sutou.
4
- # Copyright:: Copyright (c) 2009-2010 Kouhei Sutou <kou@clear-code.com>.
5
- # License:: Ruby license.
6
-
7
- require 'test/unit/ui/testrunner'
8
- require 'test/unit/ui/testrunnermediator'
9
-
10
- module Test
11
- module Unit
12
- module UI
13
- module Tap
14
-
15
- # Runs a Test::Unit::TestSuite and outputs result
16
- # as TAP format.
17
- class TestRunner < UI::TestRunner
18
- def initialize(suite, options={})
19
- super
20
- @output = @options[:output] || STDOUT
21
- @n_tests = 0
22
- @already_outputted = false
23
- end
24
-
25
- # Begins the test run.
26
- def start
27
- result = super
28
- def result.passed?
29
- true # for prove commend :<
30
- end
31
- result
32
- end
33
-
34
- private
35
- def attach_to_mediator
36
- @mediator.add_listener(TestResult::FAULT, &method(:add_fault))
37
- @mediator.add_listener(TestRunnerMediator::STARTED, &method(:started))
38
- @mediator.add_listener(TestRunnerMediator::FINISHED, &method(:finished))
39
- @mediator.add_listener(TestCase::STARTED, &method(:test_started))
40
- @mediator.add_listener(TestCase::FINISHED, &method(:test_finished))
41
- end
42
-
43
- def add_fault(fault)
44
- puts("not ok #{@n_tests} - #{fault.short_display}")
45
- fault.long_display.each_line do |line|
46
- puts("# #{line}")
47
- end
48
- @already_outputted = true
49
- end
50
-
51
- def started(result)
52
- @result = result
53
- puts("1..#{@suite.size}")
54
- end
55
-
56
- def finished(elapsed_time)
57
- puts("# Finished in #{elapsed_time} seconds.")
58
- @result.to_s.each_line do |line|
59
- puts("# #{line}")
60
- end
61
- end
62
-
63
- def test_started(name)
64
- @n_tests += 1
65
- end
66
-
67
- def test_finished(name)
68
- unless @already_outputted
69
- puts("ok #{@n_tests} - #{name}")
70
- end
71
- @already_outputted = false
72
- end
73
-
74
- def puts(*args)
75
- @output.puts(*args)
76
- @output.flush
77
- end
78
- end
79
- end
80
- end
81
- end
82
- end
83
-
84
- # Copyright (c) 2012 Trans & Kouhei Sutou (LGPL v3.0)