turn 0.7.0 → 0.8.0
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.
- data/History.txt +8 -0
- data/README.txt +4 -8
- data/Rakefile +13 -4
- data/Release.txt +30 -47
- data/Version.txt +1 -0
- data/bin/turn +2 -2
- data/demo/test_autorun_minitest.rb +26 -0
- data/demo/test_autorun_testunit.rb +26 -0
- data/demo/test_sample.rb +35 -0
- data/lib/turn/autorun/minitest.rb +155 -0
- data/lib/turn/autorun/testunit.rb +102 -0
- data/lib/turn/bin.rb +4 -0
- data/lib/turn/colorize.rb +44 -8
- data/lib/turn/command.rb +192 -147
- data/lib/turn/components/case.rb +7 -1
- data/lib/turn/components/method.rb +18 -8
- data/lib/turn/components/suite.rb +16 -13
- data/lib/turn/controller.rb +69 -16
- data/lib/turn/core_ext.rb +31 -0
- data/lib/turn/reporter.rb +19 -6
- data/lib/turn/reporters/cue_reporter.rb +167 -0
- data/lib/turn/reporters/dot_reporter.rb +27 -12
- data/lib/turn/reporters/marshal_reporter.rb +1 -48
- data/lib/turn/reporters/outline_reporter.rb +70 -12
- data/lib/turn/reporters/pretty_reporter.rb +184 -0
- data/lib/turn/reporters/progress_reporter.rb +2 -3
- data/lib/turn/runners/crossrunner.rb +8 -6
- data/lib/turn/runners/isorunner.rb +38 -11
- data/lib/turn/runners/minirunner.rb +189 -0
- data/lib/turn/runners/testrunner.rb +23 -16
- data/lib/turn.rb +15 -98
- data/test/helper.rb +97 -0
- data/test/runner +2 -0
- data/test/test_framework.rb +131 -0
- data/test/test_reporters.rb +44 -0
- data/test/test_runners.rb +45 -0
- metadata +70 -37
- data/.meta/package +0 -1
- data/.meta/ruby +0 -1
- data/.meta/version +0 -1
- data/test/test_example.rb +0 -15
- data/test/test_sample.rb +0 -15
@@ -0,0 +1,131 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/helper.rb'
|
2
|
+
|
3
|
+
# Test on Ruby 1.9+
|
4
|
+
if RUBY_VERSION >= '1.9'
|
5
|
+
|
6
|
+
class TestRuby19Framework < MiniTest::Unit::TestCase
|
7
|
+
|
8
|
+
def test_ruby19_minitest
|
9
|
+
setup_test('MiniTest')
|
10
|
+
result = turn 'tmp/test.rb'
|
11
|
+
assert result.index('PASS')
|
12
|
+
end
|
13
|
+
|
14
|
+
def test_ruby19_minitest_force
|
15
|
+
setup_test('MiniTest')
|
16
|
+
result = turn '--minitest tmp/test.rb'
|
17
|
+
assert result.index('PASS')
|
18
|
+
end
|
19
|
+
|
20
|
+
def test_ruby19_minitest_required
|
21
|
+
setup_test('MiniTest', 'minitest/unit')
|
22
|
+
result = turn 'tmp/test.rb'
|
23
|
+
assert result.index('PASS')
|
24
|
+
end
|
25
|
+
|
26
|
+
def test_ruby19_minitest_required_force
|
27
|
+
setup_test('MiniTest', 'minitest/unit')
|
28
|
+
result = turn '--minitest tmp/test.rb'
|
29
|
+
assert result.index('PASS')
|
30
|
+
end
|
31
|
+
|
32
|
+
def test_ruby19_minitest_mocking
|
33
|
+
setup_test('Test')
|
34
|
+
result = turn 'tmp/test.rb'
|
35
|
+
assert result.index('PASS')
|
36
|
+
end
|
37
|
+
|
38
|
+
def test_ruby19_minitest_mocking_force
|
39
|
+
setup_test('Test')
|
40
|
+
result = turn '--minitest tmp/test.rb'
|
41
|
+
assert result.index('PASS')
|
42
|
+
end
|
43
|
+
|
44
|
+
def test_ruby19_minitest_mocking_required
|
45
|
+
setup_test('Test', 'minitest/unit')
|
46
|
+
result = turn 'tmp/test.rb'
|
47
|
+
assert result.index('PASS')
|
48
|
+
end
|
49
|
+
|
50
|
+
def test_ruby19_minitest_mocking_required_force
|
51
|
+
setup_test('Test', 'minitest/unit')
|
52
|
+
result = turn '--minitest tmp/test.rb'
|
53
|
+
assert result.index('PASS')
|
54
|
+
end
|
55
|
+
|
56
|
+
# Ruby 1.9 users must remove ++require 'test/unit'++ from their tests.
|
57
|
+
#def test_ruby19_testunit_required
|
58
|
+
# setup_test('Test', 'test/unit')
|
59
|
+
# result = turn 'turn tmp/test.rb'
|
60
|
+
# assert result.index('PASS')
|
61
|
+
#end
|
62
|
+
|
63
|
+
# Turn does not support Test::Unit 2.0+.
|
64
|
+
#def test_ruby19_testunit_force
|
65
|
+
# setup_test('Test')
|
66
|
+
# result = turn '--testunit tmp/test.rb'
|
67
|
+
# assert result.index('PASS')
|
68
|
+
#end
|
69
|
+
|
70
|
+
# Turn does not support Test::Unit 2.0+.
|
71
|
+
#def test_ruby19_testunit_required_force
|
72
|
+
# setup_test('Test', 'test/unit')
|
73
|
+
# result = turn '--testunit tmp/test.rb'
|
74
|
+
# assert result.index('PASS')
|
75
|
+
#end
|
76
|
+
|
77
|
+
end
|
78
|
+
|
79
|
+
else
|
80
|
+
|
81
|
+
class TestRuby18Framework < Test::Unit::TestCase
|
82
|
+
|
83
|
+
def test_ruby18_testunit
|
84
|
+
setup_test('Test')
|
85
|
+
result = turn 'tmp/test.rb'
|
86
|
+
assert result.index('PASS')
|
87
|
+
end
|
88
|
+
|
89
|
+
def test_ruby18_testunit_required
|
90
|
+
setup_test('Test', 'test/unit')
|
91
|
+
result = turn 'tmp/test.rb'
|
92
|
+
assert result.index('PASS')
|
93
|
+
end
|
94
|
+
|
95
|
+
def test_ruby18_minitest
|
96
|
+
setup_test('MiniTest')
|
97
|
+
result = turn '--minitest tmp/test.rb'
|
98
|
+
assert result.index('PASS')
|
99
|
+
end
|
100
|
+
|
101
|
+
def test_ruby18_minitest_mocking_testunit
|
102
|
+
setup_test('Test')
|
103
|
+
result = turn '--minitest tmp/test.rb'
|
104
|
+
assert result.index('PASS')
|
105
|
+
end
|
106
|
+
|
107
|
+
# You can't use minitest and have ++require 'test/unit'++ in your tests.
|
108
|
+
#def test_ruby18_minitest_mocking_testunit_required
|
109
|
+
# setup_test('Test', 'test/unit')
|
110
|
+
# result = turn '--minitest tmp/test.rb'
|
111
|
+
# assert result.index('PASS')
|
112
|
+
#end
|
113
|
+
|
114
|
+
# If you want to use minitest with Ruby 1.8 you have to use force option.
|
115
|
+
# TODO: add turn configuration to automatically do this.
|
116
|
+
#def test_ruby18_minitest_required
|
117
|
+
# setup_test('MiniTest', 'minitest/unit')
|
118
|
+
# result = turn 'tmp/test.rb'
|
119
|
+
# assert result.index('PASS')
|
120
|
+
#end
|
121
|
+
|
122
|
+
def test_ruby18_minitest_required_force
|
123
|
+
setup_test('MiniTest', 'minitest/unit')
|
124
|
+
result = turn '--minitest tmp/test.rb'
|
125
|
+
assert result.index('PASS')
|
126
|
+
end
|
127
|
+
|
128
|
+
end
|
129
|
+
|
130
|
+
end
|
131
|
+
|
@@ -0,0 +1,44 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/helper.rb'
|
2
|
+
|
3
|
+
class TestReporters < Test::Unit::TestCase
|
4
|
+
|
5
|
+
begin
|
6
|
+
require 'ansi'
|
7
|
+
def test_progress
|
8
|
+
file = setup_test('Test')
|
9
|
+
result = turn '--progress', file
|
10
|
+
assert(result.index('PASS'), result)
|
11
|
+
end
|
12
|
+
rescue LoadError
|
13
|
+
end
|
14
|
+
|
15
|
+
def test_dotted
|
16
|
+
file = setup_test('Test')
|
17
|
+
result = turn '--dotted', file
|
18
|
+
assert result.index('0 failures')
|
19
|
+
assert result.index('0 errors')
|
20
|
+
end
|
21
|
+
|
22
|
+
def test_marshal
|
23
|
+
file = setup_test('Test')
|
24
|
+
result = turn '--marshal', file
|
25
|
+
assert !result.index('error: true')
|
26
|
+
assert !result.index('fail: true')
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_outline
|
30
|
+
file = setup_outline_test
|
31
|
+
result = turn '--outline', file
|
32
|
+
assert result.index('You should see me')
|
33
|
+
assert !result.index('You should not see me')
|
34
|
+
end
|
35
|
+
|
36
|
+
def test_pretty
|
37
|
+
file = setup_test('Test')
|
38
|
+
result = turn '--pretty', file
|
39
|
+
assert result.index('0 errors')
|
40
|
+
assert result.index('0 failures')
|
41
|
+
end
|
42
|
+
|
43
|
+
end
|
44
|
+
|
@@ -0,0 +1,45 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/helper.rb'
|
2
|
+
|
3
|
+
class TestRunners < Test::Unit::TestCase
|
4
|
+
|
5
|
+
def test_solo
|
6
|
+
file = setup_test('Test', false, 'test_solo.rb')
|
7
|
+
result = turn2 '--solo', file
|
8
|
+
assert result.index('pass: 1')
|
9
|
+
assert result.index('fail: 0')
|
10
|
+
assert result.index('error: 0')
|
11
|
+
end
|
12
|
+
|
13
|
+
def test_cross
|
14
|
+
file1 = setup_test('Test', false, 'test1.rb')
|
15
|
+
file2 = setup_test('Test', false, 'test2.rb')
|
16
|
+
result = turn2 '--cross', file1, file2
|
17
|
+
assert result.index('pass: 2')
|
18
|
+
assert result.index('error: 0')
|
19
|
+
end
|
20
|
+
|
21
|
+
# autorun
|
22
|
+
|
23
|
+
if RUBY_VERSION < '1.9'
|
24
|
+
|
25
|
+
def test_autorun
|
26
|
+
file = setup_test('Test', 'turn', 'test_autorun.rb')
|
27
|
+
result = `ruby -Ilib #{file} 2>&1`
|
28
|
+
assert(result.index('pass: 1'))
|
29
|
+
assert(result.index('fail: 0'))
|
30
|
+
assert(result.index('error: 0'))
|
31
|
+
end
|
32
|
+
|
33
|
+
else
|
34
|
+
|
35
|
+
def test_autorun
|
36
|
+
file = setup_minitest_autorun
|
37
|
+
result = `ruby -Ilib #{file} 2>&1`
|
38
|
+
assert result.index('0 failures')
|
39
|
+
assert result.index('0 errors')
|
40
|
+
end
|
41
|
+
|
42
|
+
end
|
43
|
+
|
44
|
+
end
|
45
|
+
|
metadata
CHANGED
@@ -1,7 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: turn
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
4
|
+
hash: 63
|
5
|
+
prerelease: false
|
6
|
+
segments:
|
7
|
+
- 0
|
8
|
+
- 8
|
9
|
+
- 0
|
10
|
+
version: 0.8.0
|
5
11
|
platform: ruby
|
6
12
|
authors:
|
7
13
|
- Tim Pease
|
@@ -9,49 +15,57 @@ autorequire:
|
|
9
15
|
bindir: bin
|
10
16
|
cert_chain: []
|
11
17
|
|
12
|
-
date:
|
18
|
+
date: 2010-09-06 00:00:00 -06:00
|
13
19
|
default_executable:
|
14
20
|
dependencies:
|
15
21
|
- !ruby/object:Gem::Dependency
|
16
22
|
name: ansi
|
17
|
-
|
18
|
-
|
19
|
-
|
23
|
+
prerelease: false
|
24
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
20
26
|
requirements:
|
21
27
|
- - ">="
|
22
28
|
- !ruby/object:Gem::Version
|
23
|
-
|
24
|
-
|
25
|
-
-
|
26
|
-
|
29
|
+
hash: 27
|
30
|
+
segments:
|
31
|
+
- 1
|
32
|
+
- 2
|
33
|
+
- 2
|
34
|
+
version: 1.2.2
|
27
35
|
type: :runtime
|
28
|
-
|
29
|
-
version_requirements: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - ">="
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: 2.8.0
|
34
|
-
version:
|
36
|
+
version_requirements: *id001
|
35
37
|
- !ruby/object:Gem::Dependency
|
36
38
|
name: bones-git
|
37
|
-
|
38
|
-
|
39
|
-
|
39
|
+
prerelease: false
|
40
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
40
42
|
requirements:
|
41
43
|
- - ">="
|
42
44
|
- !ruby/object:Gem::Version
|
43
|
-
|
44
|
-
|
45
|
+
hash: 31
|
46
|
+
segments:
|
47
|
+
- 1
|
48
|
+
- 2
|
49
|
+
- 0
|
50
|
+
version: 1.2.0
|
51
|
+
type: :development
|
52
|
+
version_requirements: *id002
|
45
53
|
- !ruby/object:Gem::Dependency
|
46
54
|
name: bones
|
47
|
-
|
48
|
-
|
49
|
-
|
55
|
+
prerelease: false
|
56
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
50
58
|
requirements:
|
51
59
|
- - ">="
|
52
60
|
- !ruby/object:Gem::Version
|
53
|
-
|
54
|
-
|
61
|
+
hash: 25
|
62
|
+
segments:
|
63
|
+
- 3
|
64
|
+
- 4
|
65
|
+
- 7
|
66
|
+
version: 3.4.7
|
67
|
+
type: :development
|
68
|
+
version_requirements: *id003
|
55
69
|
description: |-
|
56
70
|
TURN is a new way to view Test::Unit results. With longer running tests, it
|
57
71
|
can be very frustrating to see a failure (....F...) and then have to wait till
|
@@ -59,7 +73,7 @@ description: |-
|
|
59
73
|
displays each test on a separate line with failures being displayed
|
60
74
|
immediately instead of at the end of the tests.
|
61
75
|
|
62
|
-
If you have the '
|
76
|
+
If you have the 'ansi' gem installed, then TURN output will be displayed in
|
63
77
|
wonderful technicolor (but only if your terminal supports ANSI color codes).
|
64
78
|
Well, the only colors are green and red, but that is still color.
|
65
79
|
email: tim.pease@gmail.com
|
@@ -71,35 +85,47 @@ extra_rdoc_files:
|
|
71
85
|
- History.txt
|
72
86
|
- README.txt
|
73
87
|
- Release.txt
|
88
|
+
- Version.txt
|
74
89
|
- bin/turn
|
75
90
|
files:
|
76
|
-
- .meta/package
|
77
|
-
- .meta/ruby
|
78
|
-
- .meta/version
|
79
91
|
- History.txt
|
80
92
|
- README.txt
|
81
93
|
- Rakefile
|
82
94
|
- Release.txt
|
95
|
+
- Version.txt
|
83
96
|
- bin/turn
|
97
|
+
- demo/test_autorun_minitest.rb
|
98
|
+
- demo/test_autorun_testunit.rb
|
99
|
+
- demo/test_sample.rb
|
84
100
|
- lib/turn.rb
|
101
|
+
- lib/turn/autorun/minitest.rb
|
102
|
+
- lib/turn/autorun/testunit.rb
|
103
|
+
- lib/turn/bin.rb
|
85
104
|
- lib/turn/colorize.rb
|
86
105
|
- lib/turn/command.rb
|
87
106
|
- lib/turn/components/case.rb
|
88
107
|
- lib/turn/components/method.rb
|
89
108
|
- lib/turn/components/suite.rb
|
90
109
|
- lib/turn/controller.rb
|
110
|
+
- lib/turn/core_ext.rb
|
91
111
|
- lib/turn/reporter.rb
|
112
|
+
- lib/turn/reporters/cue_reporter.rb
|
92
113
|
- lib/turn/reporters/dot_reporter.rb
|
93
114
|
- lib/turn/reporters/marshal_reporter.rb
|
94
115
|
- lib/turn/reporters/outline_reporter.rb
|
116
|
+
- lib/turn/reporters/pretty_reporter.rb
|
95
117
|
- lib/turn/reporters/progress_reporter.rb
|
96
118
|
- lib/turn/runners/crossrunner.rb
|
97
119
|
- lib/turn/runners/isorunner.rb
|
98
120
|
- lib/turn/runners/loadrunner.rb
|
121
|
+
- lib/turn/runners/minirunner.rb
|
99
122
|
- lib/turn/runners/solorunner.rb
|
100
123
|
- lib/turn/runners/testrunner.rb
|
101
|
-
- test/
|
102
|
-
- test/
|
124
|
+
- test/helper.rb
|
125
|
+
- test/runner
|
126
|
+
- test/test_framework.rb
|
127
|
+
- test/test_reporters.rb
|
128
|
+
- test/test_runners.rb
|
103
129
|
has_rdoc: true
|
104
130
|
homepage: http://gemcutter.org/gems/turn
|
105
131
|
licenses: []
|
@@ -111,24 +137,31 @@ rdoc_options:
|
|
111
137
|
require_paths:
|
112
138
|
- lib
|
113
139
|
required_ruby_version: !ruby/object:Gem::Requirement
|
140
|
+
none: false
|
114
141
|
requirements:
|
115
142
|
- - ">="
|
116
143
|
- !ruby/object:Gem::Version
|
144
|
+
hash: 3
|
145
|
+
segments:
|
146
|
+
- 0
|
117
147
|
version: "0"
|
118
|
-
version:
|
119
148
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
149
|
+
none: false
|
120
150
|
requirements:
|
121
151
|
- - ">="
|
122
152
|
- !ruby/object:Gem::Version
|
153
|
+
hash: 3
|
154
|
+
segments:
|
155
|
+
- 0
|
123
156
|
version: "0"
|
124
|
-
version:
|
125
157
|
requirements: []
|
126
158
|
|
127
159
|
rubyforge_project: codeforpeople
|
128
|
-
rubygems_version: 1.3.
|
160
|
+
rubygems_version: 1.3.7
|
129
161
|
signing_key:
|
130
162
|
specification_version: 3
|
131
163
|
summary: Test::Unit Reporter (New) -- new output format for Test::Unit
|
132
164
|
test_files:
|
133
|
-
- test/
|
134
|
-
- test/
|
165
|
+
- test/test_framework.rb
|
166
|
+
- test/test_reporters.rb
|
167
|
+
- test/test_runners.rb
|
data/.meta/package
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
turn
|
data/.meta/ruby
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
1.8+
|
data/.meta/version
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
0.7.0
|
data/test/test_example.rb
DELETED