cucumber 1.3.13 → 1.3.14

Sign up to get free protection for your applications and to get access to all the features.
data/History.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## [v1.3.14](https://github.com/cucumber/cucumber/compare/v1.3.13...v1.3.14)
2
+
3
+ * Rerun formatter includes all scenarios when the background fails
4
+ ([660](https://github.com/cucumber/cucumber/issues/660),
5
+ [661](https://github.com/cucumber/cucumber/pull/661) @brasmusson)
6
+
1
7
  ## [v1.3.13](https://github.com/cucumber/cucumber/compare/v1.3.12...v1.3.13)
2
8
 
3
9
  * Rerun formatter includes all scenarios when the background fails
@@ -149,6 +149,15 @@
149
149
  }
150
150
  ]
151
151
  },
152
+ {
153
+ "name": "I run `cucumber features/failing_background_outline.feature -r features -f rerun`",
154
+ "args": [
155
+ {
156
+ "offset": 7,
157
+ "val": "cucumber features/failing_background_outline.feature -r features -f rerun"
158
+ }
159
+ ]
160
+ },
152
161
  {
153
162
  "name": "I run `cucumber features/one_passing_one_failing.feature -r features -f rerun`",
154
163
  "args": [
@@ -157,6 +166,15 @@
157
166
  "val": "cucumber features/one_passing_one_failing.feature -r features -f rerun"
158
167
  }
159
168
  ]
169
+ },
170
+ {
171
+ "name": "I run `cucumber features/passing_outline.feature -r features -f rerun`",
172
+ "args": [
173
+ {
174
+ "offset": 7,
175
+ "val": "cucumber features/passing_outline.feature -r features -f rerun"
176
+ }
177
+ ]
160
178
  }
161
179
  ]
162
180
  },
@@ -621,7 +639,12 @@
621
639
  "flags": "",
622
640
  "file_colon_line": "features/step_definitions/cucumber_steps.rb:1",
623
641
  "steps": [
642
+ {
643
+ "name": "it should pass",
644
+ "args": [
624
645
 
646
+ ]
647
+ }
625
648
  ]
626
649
  },
627
650
  {
@@ -14,6 +14,18 @@ Feature: Rerun formatter
14
14
  |passing|
15
15
  |failing|
16
16
 
17
+ """
18
+ Given a file named "features/passing_outline.feature" with:
19
+ """
20
+ Feature: One passing example
21
+
22
+ Scenario Outline:
23
+ Given a <certain> step
24
+
25
+ Examples:
26
+ |certain|
27
+ |passing|
28
+
17
29
  """
18
30
  And a file named "features/failing_background.feature" with:
19
31
  """
@@ -28,6 +40,21 @@ Feature: Rerun formatter
28
40
  Scenario: another failing background
29
41
  Then a passing step
30
42
  """
43
+ And a file named "features/failing_background_outline.feature" with:
44
+ """
45
+ Feature: Failing background sample with scenario outline
46
+
47
+ Background:
48
+ Given a failing step
49
+
50
+ Scenario Outline:
51
+ Then a <certain> step
52
+
53
+ Examples:
54
+ |certain|
55
+ |passing|
56
+ |passing|
57
+ """
31
58
  And a file named "features/step_definitions/steps.rb" with:
32
59
  """
33
60
  Given /a passing step/ do
@@ -46,9 +73,20 @@ Feature: Rerun formatter
46
73
  features/one_passing_one_failing.feature:9
47
74
  """
48
75
 
76
+ Scenario: Handle scenario outline with passing example
77
+ When I run `cucumber features/passing_outline.feature -r features -f rerun`
78
+ Then it should pass
79
+
49
80
  Scenario: Failing background
50
81
  When I run `cucumber features/failing_background.feature -r features -f rerun`
51
82
  Then it should fail with:
52
83
  """
53
84
  features/failing_background.feature:6:9
54
85
  """
86
+
87
+ Scenario: Failing background with scenario outline
88
+ When I run `cucumber features/failing_background_outline.feature -r features -f rerun`
89
+ Then it should fail with:
90
+ """
91
+ features/failing_background_outline.feature:11:12
92
+ """
@@ -46,7 +46,8 @@ module Cucumber
46
46
  end
47
47
 
48
48
  def after_feature_element(feature_element)
49
- if (@rerun || feature_element.failed? || feature_element.status == :skipped) && !(Ast::ScenarioOutline === feature_element)
49
+ return if Cucumber::Ast::ScenarioOutline === feature_element
50
+ if @rerun || feature_element.failed? || feature_element.status == :skipped
50
51
  @lines << feature_element.line
51
52
  end
52
53
  end
@@ -54,7 +55,7 @@ module Cucumber
54
55
  def after_table_row(table_row)
55
56
  return unless @in_examples and Cucumber::Ast::OutlineTable::ExampleRow === table_row
56
57
  unless @header_row
57
- if table_row.failed?
58
+ if table_row.failed? || table_row.status == :skipped
58
59
  @rerun = true
59
60
  @lines << table_row.line
60
61
  end
@@ -4,7 +4,7 @@ require 'rbconfig'
4
4
 
5
5
  module Cucumber
6
6
  unless defined?(Cucumber::VERSION)
7
- VERSION = '1.3.13'
7
+ VERSION = '1.3.14'
8
8
  BINARY = File.expand_path(File.dirname(__FILE__) + '/../../bin/cucumber')
9
9
  LIBDIR = File.expand_path(File.dirname(__FILE__) + '/../../lib')
10
10
  JRUBY = defined?(JRUBY_VERSION)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cucumber
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.13
4
+ version: 1.3.14
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: 2014-03-25 00:00:00.000000000 Z
12
+ date: 2014-03-28 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: builder
@@ -1006,24 +1006,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
1006
1006
  - - ! '>='
1007
1007
  - !ruby/object:Gem::Version
1008
1008
  version: '0'
1009
- segments:
1010
- - 0
1011
- hash: -2172003806326300934
1012
1009
  required_rubygems_version: !ruby/object:Gem::Requirement
1013
1010
  none: false
1014
1011
  requirements:
1015
1012
  - - ! '>='
1016
1013
  - !ruby/object:Gem::Version
1017
1014
  version: '0'
1018
- segments:
1019
- - 0
1020
- hash: -2172003806326300934
1021
1015
  requirements: []
1022
1016
  rubyforge_project:
1023
1017
  rubygems_version: 1.8.23.2
1024
1018
  signing_key:
1025
1019
  specification_version: 3
1026
- summary: cucumber-1.3.13
1020
+ summary: cucumber-1.3.14
1027
1021
  test_files:
1028
1022
  - features/assertions.feature
1029
1023
  - features/autoformat_profile_output.feature