rspec-extra-formatters 0.4 → 1.0.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/README.rst +37 -32
- data/lib/rspec-extra-formatters/tap_formatter.rb +15 -5
- data/spec/rspec-extra-formatters/tap_formatter_spec.rb +15 -5
- metadata +42 -54
data/README.rst
CHANGED
@@ -4,41 +4,46 @@ RSpec Formatters
|
|
4
4
|
|
5
5
|
::
|
6
6
|
|
7
|
-
$ rake format=tap
|
8
|
-
|
9
|
-
|
10
|
-
ok
|
11
|
-
ok
|
12
|
-
ok
|
13
|
-
ok
|
14
|
-
ok
|
15
|
-
ok
|
16
|
-
ok
|
17
|
-
ok
|
18
|
-
ok
|
19
|
-
ok
|
20
|
-
ok
|
21
|
-
|
7
|
+
$ rake format=tap | sed 1d
|
8
|
+
TAP version 13
|
9
|
+
1..15
|
10
|
+
ok 1 - JUnitFormatter should initialize the tests with failures and success
|
11
|
+
ok 2 - JUnitFormatter example_passed should push the example obj into success list
|
12
|
+
ok 3 - JUnitFormatter example_failed should push the example obj into failures list
|
13
|
+
ok 4 - JUnitFormatter example_pending should push the example obj into the skipped list
|
14
|
+
ok 5 - JUnitFormatter read_failure should ignore if there is no exception
|
15
|
+
ok 6 - JUnitFormatter read_failure should attempt to read exception if exception encountered is nil
|
16
|
+
ok 7 - JUnitFormatter read_failure should read message and backtrace from the example
|
17
|
+
ok 8 - JUnitFormatter dump_summary should print the junit xml
|
18
|
+
ok 9 - JUnitFormatter dump_summary should escape characteres <,>,&," before building xml
|
19
|
+
ok 10 - TapFormatter should initialize the counter to 0
|
20
|
+
ok 11 - TapFormatter example_passed should increment the counter and use the full_description attribute
|
21
|
+
ok 12 - TapFormatter example_failed should increment the counter and use the full_description attribute
|
22
|
+
ok 13 - TapFormatter example_pending should do the same as example_failed with SKIP comment
|
23
|
+
ok 14 - TapFormatter dump_summary should print the number of tests if there were tests
|
24
|
+
ok 15 - TapFormatter dump_summary should print nothing if there were not tests
|
22
25
|
|
23
26
|
::
|
24
27
|
|
25
|
-
$ rake format=junit
|
26
|
-
<?xml version="1.0" encoding="utf-8"
|
27
|
-
<testsuite errors="0" failures="0" tests="
|
28
|
-
<properties
|
29
|
-
<testcase classname="/
|
30
|
-
<testcase classname="/
|
31
|
-
<testcase classname="/
|
32
|
-
<testcase classname="/
|
33
|
-
<testcase classname="/
|
34
|
-
<testcase classname="/
|
35
|
-
<testcase classname="/
|
36
|
-
<testcase classname="/
|
37
|
-
<testcase classname="/
|
38
|
-
<testcase classname="/
|
39
|
-
<testcase classname="/
|
40
|
-
<testcase classname="/
|
41
|
-
<testcase classname="/
|
28
|
+
$ rake format=junit | sed 1d
|
29
|
+
<?xml version="1.0" encoding="utf-8"?>
|
30
|
+
<testsuite errors="0" failures="0" skipped="0" tests="15" time="0.008132403" timestamp="2012-12-03T17:52:59-02:00">
|
31
|
+
<properties/>
|
32
|
+
<testcase classname="./spec/rspec-extra-formatters/junit_formatter_spec.rb" name="JUnitFormatter should initialize the tests with failures and success" time="0.00258258"/>
|
33
|
+
<testcase classname="./spec/rspec-extra-formatters/junit_formatter_spec.rb" name="JUnitFormatter example_passed should push the example obj into success list" time="0.000210973"/>
|
34
|
+
<testcase classname="./spec/rspec-extra-formatters/junit_formatter_spec.rb" name="JUnitFormatter example_failed should push the example obj into failures list" time="0.00019527"/>
|
35
|
+
<testcase classname="./spec/rspec-extra-formatters/junit_formatter_spec.rb" name="JUnitFormatter example_pending should push the example obj into the skipped list" time="0.000194194"/>
|
36
|
+
<testcase classname="./spec/rspec-extra-formatters/junit_formatter_spec.rb" name="JUnitFormatter read_failure should ignore if there is no exception" time="0.000330483"/>
|
37
|
+
<testcase classname="./spec/rspec-extra-formatters/junit_formatter_spec.rb" name="JUnitFormatter read_failure should attempt to read exception if exception encountered is nil" time="0.000629093"/>
|
38
|
+
<testcase classname="./spec/rspec-extra-formatters/junit_formatter_spec.rb" name="JUnitFormatter read_failure should read message and backtrace from the example" time="0.00054028"/>
|
39
|
+
<testcase classname="./spec/rspec-extra-formatters/junit_formatter_spec.rb" name="JUnitFormatter dump_summary should print the junit xml" time="0.000990184"/>
|
40
|
+
<testcase classname="./spec/rspec-extra-formatters/junit_formatter_spec.rb" name="JUnitFormatter dump_summary should escape characteres <,>,&," before building xml" time="0.00040997"/>
|
41
|
+
<testcase classname="./spec/rspec-extra-formatters/tap_formatter_spec.rb" name="TapFormatter should initialize the counter to 0" time="7.3649e-05"/>
|
42
|
+
<testcase classname="./spec/rspec-extra-formatters/tap_formatter_spec.rb" name="TapFormatter example_passed should increment the counter and use the full_description attribute" time="0.000205454"/>
|
43
|
+
<testcase classname="./spec/rspec-extra-formatters/tap_formatter_spec.rb" name="TapFormatter example_failed should increment the counter and use the full_description attribute" time="0.00029728"/>
|
44
|
+
<testcase classname="./spec/rspec-extra-formatters/tap_formatter_spec.rb" name="TapFormatter example_pending should do the same as example_failed with SKIP comment" time="0.000325112"/>
|
45
|
+
<testcase classname="./spec/rspec-extra-formatters/tap_formatter_spec.rb" name="TapFormatter dump_summary should print the number of tests if there were tests" time="0.000372799"/>
|
46
|
+
<testcase classname="./spec/rspec-extra-formatters/tap_formatter_spec.rb" name="TapFormatter dump_summary should print nothing if there were not tests" time="6.3588e-05"/>
|
42
47
|
</testsuite>
|
43
48
|
|
44
49
|
Using it
|
@@ -31,16 +31,24 @@ require "rspec/core/formatters/base_formatter"
|
|
31
31
|
class TapFormatter < RSpec::Core::Formatters::BaseFormatter
|
32
32
|
|
33
33
|
attr_reader :total
|
34
|
-
|
34
|
+
$VERBOSE = nil
|
35
35
|
OK = 'ok'
|
36
36
|
NOT_OK = 'not ok'
|
37
37
|
TODO = '# TODO '
|
38
|
+
SKIP = '# SKIP '
|
38
39
|
|
39
40
|
def initialize(output)
|
40
41
|
super(output)
|
41
42
|
@total = 0
|
42
43
|
end
|
43
44
|
|
45
|
+
def start(example_count)
|
46
|
+
super(example_count)
|
47
|
+
output.puts("TAP version 13")
|
48
|
+
output.puts("1.." + example_count.to_s)
|
49
|
+
|
50
|
+
end
|
51
|
+
|
44
52
|
def example_passed(example)
|
45
53
|
super(example)
|
46
54
|
tap_example_output(OK, example)
|
@@ -48,19 +56,21 @@ class TapFormatter < RSpec::Core::Formatters::BaseFormatter
|
|
48
56
|
|
49
57
|
def example_pending(example)
|
50
58
|
super(example)
|
51
|
-
tap_example_output(NOT_OK, example,
|
59
|
+
tap_example_output(NOT_OK, example, SKIP)
|
52
60
|
end
|
53
61
|
|
54
62
|
def example_failed(example)
|
55
63
|
super(example)
|
56
64
|
tap_example_output(NOT_OK, example)
|
65
|
+
output.puts(" ---")
|
66
|
+
my_exception = example.exception.to_s
|
67
|
+
my_exception.gsub! /"/, ''
|
68
|
+
output.puts(" #{my_exception} ")
|
69
|
+
output.puts(" ...")
|
57
70
|
end
|
58
71
|
|
59
72
|
def dump_summary(duration, example_count, failure_count, pending_count)
|
60
73
|
super(duration, example_count, failure_count, pending_count)
|
61
|
-
if (@total > 0)
|
62
|
-
output.puts("1..#{example_count}")
|
63
|
-
end
|
64
74
|
end
|
65
75
|
|
66
76
|
private
|
@@ -55,6 +55,7 @@ describe TapFormatter do
|
|
55
55
|
|
56
56
|
it "should increment the counter and use the full_description attribute" do
|
57
57
|
example = mock("example")
|
58
|
+
example.stub(:exception) { "exception message" }
|
58
59
|
example.should_receive(:metadata).and_return({:full_description => "foobar"})
|
59
60
|
|
60
61
|
output = StringIO.new
|
@@ -62,14 +63,20 @@ describe TapFormatter do
|
|
62
63
|
f.example_failed(example)
|
63
64
|
|
64
65
|
f.total.should eql(1)
|
65
|
-
output.string.should ==
|
66
|
+
output.string.should == <<-EOF
|
67
|
+
not ok 1 - foobar
|
68
|
+
---
|
69
|
+
exception message
|
70
|
+
...
|
71
|
+
EOF
|
66
72
|
end
|
67
73
|
end
|
68
74
|
|
69
75
|
describe "example_pending" do
|
70
76
|
|
71
|
-
it "should do the same as example_failed with
|
77
|
+
it "should do the same as example_failed with SKIP comment" do
|
72
78
|
example = mock("example")
|
79
|
+
example.stub(:exception) { "exception message" }
|
73
80
|
example.should_receive(:metadata).and_return({:full_description => "foobar"})
|
74
81
|
|
75
82
|
output = StringIO.new
|
@@ -77,7 +84,7 @@ describe TapFormatter do
|
|
77
84
|
f.example_pending(example)
|
78
85
|
|
79
86
|
f.total.should eql(1)
|
80
|
-
output.string.should == "not ok 1 - #
|
87
|
+
output.string.should == "not ok 1 - # SKIP foobar\n"
|
81
88
|
end
|
82
89
|
|
83
90
|
end
|
@@ -86,6 +93,7 @@ describe TapFormatter do
|
|
86
93
|
|
87
94
|
it "should print the number of tests if there were tests" do
|
88
95
|
example = mock("example")
|
96
|
+
example.stub(:exception) { "exception message" }
|
89
97
|
example.should_receive(:metadata).and_return({:full_description => "foobar"})
|
90
98
|
example.should_receive(:metadata).and_return({:full_description => "foobar"})
|
91
99
|
example.should_receive(:metadata).and_return({:full_description => "foobar"})
|
@@ -100,8 +108,10 @@ describe TapFormatter do
|
|
100
108
|
output.string.should == <<-EOF
|
101
109
|
ok 1 - foobar
|
102
110
|
not ok 2 - foobar
|
103
|
-
|
104
|
-
|
111
|
+
---
|
112
|
+
exception message
|
113
|
+
...
|
114
|
+
not ok 3 - # SKIP foobar
|
105
115
|
EOF
|
106
116
|
end
|
107
117
|
|
metadata
CHANGED
@@ -1,90 +1,78 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: rspec-extra-formatters
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.0.0
|
5
5
|
prerelease:
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 4
|
9
|
-
version: "0.4"
|
10
6
|
platform: ruby
|
11
|
-
authors:
|
7
|
+
authors:
|
12
8
|
- Diego Souza
|
13
|
-
-
|
9
|
+
- Floréal TOUMIKIAN
|
14
10
|
autorequire:
|
15
11
|
bindir: bin
|
16
12
|
cert_chain: []
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
- !ruby/object:Gem::Dependency
|
13
|
+
date: 2012-04-24 00:00:00.000000000 Z
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
21
16
|
name: rspec
|
22
|
-
|
23
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
17
|
+
requirement: !ruby/object:Gem::Requirement
|
24
18
|
none: false
|
25
|
-
requirements:
|
26
|
-
- -
|
27
|
-
- !ruby/object:Gem::Version
|
28
|
-
|
29
|
-
segments:
|
30
|
-
- 0
|
31
|
-
version: "0"
|
19
|
+
requirements:
|
20
|
+
- - ! '>='
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: '0'
|
32
23
|
type: :development
|
33
|
-
|
34
|
-
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
none: false
|
27
|
+
requirements:
|
28
|
+
- - ! '>='
|
29
|
+
- !ruby/object:Gem::Version
|
30
|
+
version: '0'
|
31
|
+
description: ! ' rspec-extra-formatters Provides TAP and JUnit formatters for rspec
|
32
|
+
|
33
|
+
'
|
35
34
|
email: dsouza+rspec-extra-formatters@bitforest.org
|
36
35
|
executables: []
|
37
|
-
|
38
36
|
extensions: []
|
39
|
-
|
40
|
-
extra_rdoc_files:
|
37
|
+
extra_rdoc_files:
|
41
38
|
- LICENSE
|
42
39
|
- README.rst
|
43
|
-
files:
|
40
|
+
files:
|
44
41
|
- lib/tap_formatter.rb
|
45
|
-
- lib/rspec-extra-formatters.rb
|
46
42
|
- lib/rspec-extra-formatters/tap_formatter.rb
|
47
43
|
- lib/rspec-extra-formatters/junit_formatter.rb
|
48
44
|
- lib/j_unit_formatter.rb
|
45
|
+
- lib/rspec-extra-formatters.rb
|
49
46
|
- LICENSE
|
50
47
|
- README.rst
|
51
|
-
- spec/rspec-extra-formatters/tap_formatter_spec.rb
|
52
48
|
- spec/rspec-extra-formatters/junit_formatter_spec.rb
|
49
|
+
- spec/rspec-extra-formatters/tap_formatter_spec.rb
|
53
50
|
- spec/spec_helper.rb
|
54
|
-
homepage:
|
51
|
+
homepage: https://github.com/dgvncsz0f/rspec_formatters
|
55
52
|
licenses: []
|
56
|
-
|
57
53
|
post_install_message:
|
58
54
|
rdoc_options: []
|
59
|
-
|
60
|
-
require_paths:
|
55
|
+
require_paths:
|
61
56
|
- lib
|
62
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
57
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
63
58
|
none: false
|
64
|
-
requirements:
|
65
|
-
- -
|
66
|
-
- !ruby/object:Gem::Version
|
67
|
-
|
68
|
-
|
69
|
-
- 0
|
70
|
-
version: "0"
|
71
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
59
|
+
requirements:
|
60
|
+
- - ! '>='
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: '0'
|
63
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
72
64
|
none: false
|
73
|
-
requirements:
|
74
|
-
- -
|
75
|
-
- !ruby/object:Gem::Version
|
76
|
-
|
77
|
-
segments:
|
78
|
-
- 0
|
79
|
-
version: "0"
|
65
|
+
requirements:
|
66
|
+
- - ! '>='
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
80
69
|
requirements: []
|
81
|
-
|
82
70
|
rubyforge_project:
|
83
|
-
rubygems_version: 1.8.
|
71
|
+
rubygems_version: 1.8.24
|
84
72
|
signing_key:
|
85
73
|
specification_version: 3
|
86
74
|
summary: TAP and JUnit formatters for rspec
|
87
|
-
test_files:
|
88
|
-
- spec/rspec-extra-formatters/tap_formatter_spec.rb
|
75
|
+
test_files:
|
89
76
|
- spec/rspec-extra-formatters/junit_formatter_spec.rb
|
77
|
+
- spec/rspec-extra-formatters/tap_formatter_spec.rb
|
90
78
|
- spec/spec_helper.rb
|