ci_reporter 1.8.1 → 1.8.2

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/Gemfile.lock CHANGED
@@ -26,14 +26,14 @@ GEM
26
26
  rake (0.9.2.2)
27
27
  rcov (1.0.0)
28
28
  rdoc (3.9.2)
29
- rspec (2.8.0)
30
- rspec-core (~> 2.8.0)
31
- rspec-expectations (~> 2.8.0)
32
- rspec-mocks (~> 2.8.0)
33
- rspec-core (2.8.0)
34
- rspec-expectations (2.8.0)
35
- diff-lcs (~> 1.1.2)
36
- rspec-mocks (2.8.0)
29
+ rspec (2.12.0)
30
+ rspec-core (~> 2.12.0)
31
+ rspec-expectations (~> 2.12.0)
32
+ rspec-mocks (~> 2.12.0)
33
+ rspec-core (2.12.1)
34
+ rspec-expectations (2.12.0)
35
+ diff-lcs (~> 1.1.3)
36
+ rspec-mocks (2.12.0)
37
37
  rubyforge (2.0.4)
38
38
  json_pure (>= 1.1.7)
39
39
  spinach (0.1.5.3)
data/History.txt CHANGED
@@ -1,3 +1,7 @@
1
+ == 1.8.2 (12/04/12)
2
+
3
+ - #80: Handle rspec-core 2.10.0 #format_backtrace regression and fix
4
+
1
5
  == 1.8.1 (12/03/12)
2
6
 
3
7
  - Manifest and gemspec for 1.8.0 was missing spinach files. Fixes #79.
data/README.rdoc CHANGED
@@ -14,15 +14,21 @@ CI::Reporter works best with projects that use a +Rakefile+ along with the stand
14
14
 
15
15
  require 'ci/reporter/rake/rspec' # use this if you're using RSpec
16
16
  require 'ci/reporter/rake/cucumber' # use this if you're using Cucumber
17
+ require 'ci/reporter/rake/spinach' # use this if you're using Spinach
17
18
  require 'ci/reporter/rake/test_unit' # use this if you're using Test::Unit
18
19
  require 'ci/reporter/rake/minitest' # use this if you're using Ruby 1.9 or minitest
19
20
 
21
+ Note: If you use both cucumber and spinach, you are likely to see strange errors, due to
22
+ `gherkin` and `gherkin-ruby` both being loaded. So, you should choose only one of
23
+ cucumber and spinach.
24
+
20
25
  2. Next, either modify your Rakefile to make the <code>ci:setup:rspec</code>, <code>ci:setup:cucumber</code>, <code>ci:setup:testunit</code> or <code>ci:setup:minitest</code> task a dependency of your test tasks, or run one of these rake tasks:
21
26
 
22
27
  rake ci:setup:testunit test
23
28
  rake ci:setup:minitest test
24
29
  rake ci:setup:rspec spec
25
30
  rake ci:setup:cucumber features
31
+ rake ci:setup:spinach features
26
32
 
27
33
  == Jenkins setup
28
34
 
@@ -41,6 +47,7 @@ If you don't have control over the Rakefile or don't want to modify it, CI::Repo
41
47
  rake -f GEM_PATH/stub.rake ci:setup:minitest test
42
48
  rake -f GEM_PATH/stub.rake ci:setup:rspec spec
43
49
  rake -f GEM_PATH/stub.rake ci:setup:cucumber features
50
+ rake -f GEM_PATH/stub.rake ci:setup:spinach features
44
51
 
45
52
  If for some reason you can't use the above technique to inject CI::Reporter (e.g., you're not using Rake), you'll have to do one of these:
46
53
 
@@ -55,6 +62,10 @@ If for some reason you can't use the above technique to inject CI::Reporter (e.g
55
62
 
56
63
  ruby -r GEM_PATH/lib/ci/reporter/rake/cucumber_loader -S cucumber --format CI::Reporter::Cucumber
57
64
 
65
+ 4. If you're using Spinach, you'll want to do this:
66
+
67
+ ruby -r GEM_PATH/lib/ci/reporter/rake/spinach_loader -S spinach
68
+
58
69
  There's a bit of a chicken and egg problem because rubygems needs to be loaded before you can require any CI::Reporter files. If you cringe hard-coding a full path to a specific version of the gem, you can also copy the +cucumber_loader+ file into your project and require it directly -- the contents are version-agnostic and are not likely to change in future releases.
59
70
 
60
71
  == Environment Variables
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ../..
3
3
  specs:
4
- ci_reporter (1.7.3)
4
+ ci_reporter (1.8.2)
5
5
  builder (>= 2.1.2)
6
6
 
7
7
  GEM
@@ -19,7 +19,7 @@ GEM
19
19
  rspec-expectations (2.8.0)
20
20
  diff-lcs (~> 1.1.2)
21
21
  rspec-mocks (2.8.0)
22
- spinach (0.5.2)
22
+ spinach (0.6.0)
23
23
  colorize
24
24
  gherkin-ruby (~> 0.2.0)
25
25
 
data/ci_reporter.gemspec CHANGED
@@ -2,11 +2,11 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = "ci_reporter"
5
- s.version = "1.8.1"
5
+ s.version = "1.8.2"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Nick Sieger"]
9
- s.date = "2012-12-03"
9
+ s.date = "2012-12-04"
10
10
  s.description = "CI::Reporter is an add-on to Test::Unit, RSpec and Cucumber that allows you to generate XML reports of your test, spec and/or feature runs. The resulting files can be read by a continuous integration system that understands Ant's JUnit report XML format, thus allowing your CI system to track test/spec successes and failures."
11
11
  s.email = "nick@nicksieger.com"
12
12
  s.extra_rdoc_files = ["History.txt", "LICENSE.txt", "Manifest.txt", "README.rdoc"]
@@ -14,6 +14,11 @@ module CI
14
14
  BaseFormatter = ::RSpec::Core::Formatters::BaseFormatter
15
15
  ProgressFormatter = ::RSpec::Core::Formatters::ProgressFormatter
16
16
  DocFormatter = ::RSpec::Core::Formatters::DocumentationFormatter
17
+ # See https://github.com/nicksieger/ci_reporter/issues/76 and
18
+ # https://github.com/nicksieger/ci_reporter/issues/80
19
+ require 'rspec/version'
20
+ RSpec_2_12_0_bug = (::RSpec::Version::STRING == '2.12.0' &&
21
+ !BaseFormatter.instance_methods(false).map(&:to_s).include?("format_backtrace"))
17
22
  rescue LoadError => first_error
18
23
  begin
19
24
  require 'spec/runner/formatter/progress_bar_formatter'
@@ -75,12 +80,8 @@ module CI
75
80
  output = []
76
81
  output.push "#{exception.class.name << ":"}" unless exception.class.name =~ /RSpec/
77
82
  output.push @exception.message
78
-
79
- format_metadata = if defined?(::RSpec::Core::BacktraceFormatter)
80
- @example.metadata
81
- else
82
- @example
83
- end
83
+
84
+ format_metadata = RSpecFormatters::RSpec_2_12_0_bug ? @example.metadata : @example
84
85
 
85
86
  [@formatter.format_backtrace(@exception.backtrace, format_metadata)].flatten.each do |backtrace_info|
86
87
  backtrace_info.lines.each do |line|
@@ -6,6 +6,6 @@
6
6
 
7
7
  module CI
8
8
  module Reporter
9
- VERSION = "1.8.1"
9
+ VERSION = "1.8.2"
10
10
  end
11
11
  end
@@ -132,8 +132,12 @@ describe "The RSpec reporter" do
132
132
  before(:each) do
133
133
  @formatter = mock "formatter"
134
134
  @formatter.should_receive(:format_backtrace).and_return("backtrace")
135
- @rspec20_example = mock('RSpec2.0 Example', :execution_result => {:exception_encountered => StandardError.new('rspec2.0 ftw')})
136
- @rspec22_example = mock('RSpec2.2 Example', :execution_result => {:exception => StandardError.new('rspec2.2 ftw')})
135
+ @rspec20_example = mock('RSpec2.0 Example',
136
+ :execution_result => {:exception_encountered => StandardError.new('rspec2.0 ftw')},
137
+ :metadata => {})
138
+ @rspec22_example = mock('RSpec2.2 Example',
139
+ :execution_result => {:exception => StandardError.new('rspec2.2 ftw')},
140
+ :metadata => {})
137
141
  end
138
142
 
139
143
  it 'should handle rspec (< 2.2) execution results' do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ci_reporter
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.8.1
4
+ version: 1.8.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-12-03 00:00:00.000000000 Z
12
+ date: 2012-12-04 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: builder
@@ -238,7 +238,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
238
238
  version: '0'
239
239
  segments:
240
240
  - 0
241
- hash: 1579576962037098408
241
+ hash: 2792942240812227939
242
242
  required_rubygems_version: !ruby/object:Gem::Requirement
243
243
  none: false
244
244
  requirements: