cucumber 1.0.0 → 1.0.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.
data/Gemfile.lock CHANGED
@@ -4,14 +4,14 @@ PATH
4
4
  cucumber (1.0.0)
5
5
  builder (>= 2.1.2)
6
6
  diff-lcs (>= 1.1.2)
7
- gherkin (~> 2.4.1)
7
+ gherkin (~> 2.4.5)
8
8
  json (>= 1.4.6)
9
9
  term-ansicolor (>= 1.0.5)
10
10
 
11
11
  GEM
12
12
  remote: http://rubygems.org/
13
13
  specs:
14
- aruba (0.4.2)
14
+ aruba (0.4.3)
15
15
  bcat (>= 0.6.1)
16
16
  childprocess (>= 0.1.9)
17
17
  cucumber (>= 0.10.7)
@@ -31,14 +31,14 @@ GEM
31
31
  ffi (~> 1.0.6)
32
32
  diff-lcs (1.1.2)
33
33
  ffi (1.0.9)
34
- gherkin (2.4.1)
34
+ gherkin (2.4.5)
35
35
  json (>= 1.4.6)
36
36
  innate (2011.04)
37
37
  rack (>= 1.1.0)
38
38
  json (1.5.3)
39
39
  json_pure (1.5.3)
40
40
  mime-types (1.16)
41
- nokogiri (1.4.6)
41
+ nokogiri (1.5.0)
42
42
  prawn (0.8.4)
43
43
  prawn-core (< 0.9, >= 0.8.4)
44
44
  prawn-layout (< 0.9, >= 0.8.4)
@@ -62,8 +62,8 @@ GEM
62
62
  diff-lcs (~> 1.1.2)
63
63
  rspec-mocks (2.6.0)
64
64
  rubyzip (0.9.4)
65
- selenium-webdriver (0.2.1)
66
- childprocess (>= 0.1.7)
65
+ selenium-webdriver (0.2.2)
66
+ childprocess (>= 0.1.9)
67
67
  ffi (>= 1.0.7)
68
68
  json_pure
69
69
  rubyzip
@@ -73,7 +73,7 @@ GEM
73
73
  sinatra (1.2.6)
74
74
  rack (~> 1.1)
75
75
  tilt (< 2.0, >= 1.2.2)
76
- spork (0.9.0.rc8)
76
+ spork (0.9.0.rc9)
77
77
  syntax (1.0.0)
78
78
  term-ansicolor (1.0.5)
79
79
  tilt (1.3.2)
data/History.md CHANGED
@@ -1,3 +1,15 @@
1
+ ## [v1.0.1](https://github.com/cucumber/cucumber/compare/v1.0.0...v1.0.1)
2
+
3
+ ### Bugfixes
4
+ * Removed extra colons emitted by rerun formatter ([#99](https://github.com/cucumber/cucumber/pull/99) Juan Manuel Barreneche)
5
+ * cucumber 1.0.0 wrong number of arguments error when generating json format on jruby for windows ([#97](https://github.com/cucumber/cucumber/issues/97) (Aslak Hellesøy)
6
+ * Recent change to junit.rb breaks on Windows ([#81](https://github.com/cucumber/cucumber/issues/81), [#86](https://github.com/cucumber/cucumber/pull/86) Johnlon, Aslak Hellesøy)
7
+ * Cucumber fails on nil and does not print out failed tests ([#95](https://github.com/cucumber/cucumber/pull/95) Nikita)
8
+ * Javascript code is not being displayed in HTML output ([#58](https://github.com/cucumber/cucumber/issues/58) Aslak Hellesøy)
9
+
10
+ ### New Features
11
+ * If the CUCUMBER_TRUNCATE_OUTPUT environment variable is set, lines will be truncated. Used by the Cucumber book. (Aslak Hellesøy)
12
+
1
13
  ## [v1.0.0](https://github.com/cucumber/cucumber/compare/v0.10.6...v1.0.0)
2
14
 
3
15
  Yipeeeeeeeee!
data/cucumber.gemspec CHANGED
@@ -23,7 +23,7 @@ for important information about this release. Happy cuking!
23
23
 
24
24
  }
25
25
 
26
- s.add_dependency 'gherkin', '~> 2.4.1'
26
+ s.add_dependency 'gherkin', '~> 2.4.5'
27
27
  s.add_dependency 'term-ansicolor', '>= 1.0.5'
28
28
  s.add_dependency 'builder', '>= 2.1.2'
29
29
  s.add_dependency 'diff-lcs', '>= 1.1.2'
@@ -0,0 +1,168 @@
1
+ module CucumberRubyMappings
2
+ def features_dir
3
+ 'features'
4
+ end
5
+
6
+ def run_scenario(scenario_name)
7
+ run_simple "#{cucumber_bin} features/a_feature.feature --name '#{scenario_name}'", false
8
+ end
9
+
10
+ def run_feature
11
+ run_simple "#{cucumber_bin} features/a_feature.feature", false
12
+ end
13
+
14
+ def cucumber_bin
15
+ File.expand_path(File.dirname(__FILE__) + '/../../../bin/cucumber')
16
+ end
17
+
18
+ def write_passing_mapping(step_name)
19
+ erb = ERB.new(<<-EOF, nil, '-')
20
+ Given /<%= step_name -%>/ do
21
+ # ARUBA_IGNORE_START
22
+ File.open("<%= step_file(step_name) %>", "w")
23
+ # ARUBA_IGNORE_END
24
+ end
25
+
26
+ EOF
27
+ append_to_file("features/step_definitions/some_stepdefs.rb", erb.result(binding))
28
+ end
29
+
30
+ def write_pending_mapping(step_name)
31
+ erb = ERB.new(<<-EOF, nil, '-')
32
+ Given /<%= step_name -%>/ do
33
+ # ARUBA_IGNORE_START
34
+ File.open("<%= step_file(step_name) %>", "w")
35
+ # ARUBA_IGNORE_END
36
+ pending
37
+ end
38
+
39
+ EOF
40
+ append_to_file("features/step_definitions/some_stepdefs.rb", erb.result(binding))
41
+ end
42
+
43
+ def write_failing_mapping(step_name)
44
+ erb = ERB.new(<<-EOF, nil, '-')
45
+ Given /<%= step_name -%>/ do
46
+ # ARUBA_IGNORE_START
47
+ File.open("<%= step_file(step_name) %>", "w")
48
+ # ARUBA_IGNORE_END
49
+ raise "bang!"
50
+ end
51
+
52
+ EOF
53
+ append_to_file("features/step_definitions/some_stepdefs.rb", erb.result(binding))
54
+ end
55
+
56
+ def write_calculator_code
57
+ code = <<-EOF
58
+ # http://en.wikipedia.org/wiki/Reverse_Polish_notation
59
+ class RpnCalculator
60
+ def initialize
61
+ @stack = []
62
+ end
63
+
64
+ def push(arg)
65
+ if(%w{- + * /}.index(arg))
66
+ y, x = @stack.pop(2)
67
+ push(x.__send__(arg, y))
68
+ else
69
+ @stack.push(arg)
70
+ end
71
+ end
72
+
73
+ def PI
74
+ push(Math::PI)
75
+ end
76
+
77
+ def value
78
+ @stack[-1]
79
+ end
80
+ end
81
+ EOF
82
+ write_file("lib/rpn_calculator.rb", code)
83
+ end
84
+
85
+ def write_mappings_for_calculator
86
+ write_file("features/support/env.rb", "$LOAD_PATH.unshift(File.dirname(__FILE__) + '/../../lib')\n")
87
+ mapping_code = <<-EOF
88
+ require 'rpn_calculator'
89
+
90
+ Given /^a calculator$/ do
91
+ @calc = RpnCalculator.new
92
+ end
93
+
94
+ When /^the calculator computes PI$/ do
95
+ @calc.PI
96
+ end
97
+
98
+ When /^the calculator adds up ([\\d\\.]+) and ([\\d\\.]+)$/ do |n1, n2|
99
+ @calc.push(n1.to_f)
100
+ @calc.push(n2.to_f)
101
+ @calc.push('+')
102
+ end
103
+
104
+ When /^the calculator adds up "([^"]*)" and "([^"]*)"$/ do |n1, n2|
105
+ @calc.push(n1.to_i)
106
+ @calc.push(n2.to_i)
107
+ @calc.push('+')
108
+ end
109
+
110
+ When /^the calculator adds up "([^"]*)", "([^"]*)" and "([^"]*)"$/ do |n1, n2, n3|
111
+ @calc.push(n1.to_i)
112
+ @calc.push(n2.to_i)
113
+ @calc.push(n3.to_i)
114
+ @calc.push('+')
115
+ @calc.push('+')
116
+ end
117
+
118
+ When /^the calculator adds up the following numbers:$/ do |numbers|
119
+ pushed = 0
120
+ numbers.split("\\n").each do |n|
121
+ @calc.push(n.to_i)
122
+ pushed +=1
123
+ @calc.push('+') if pushed > 1
124
+ end
125
+ end
126
+
127
+ Then /^the calculator returns PI$/ do
128
+ @calc.value.to_f.should be_within(0.00001).of(Math::PI)
129
+ end
130
+
131
+ Then /^the calculator returns "([^"]*)"$/ do |expected|
132
+ @calc.value.to_f.should be_within(0.00001).of(expected.to_f)
133
+ end
134
+
135
+ Then /^the calculator does not return ([\\d\\.]+)$/ do |unexpected|
136
+ @calc.value.to_f.should_not be_within(0.00001).of(unexpected.to_f)
137
+ end
138
+
139
+ EOF
140
+ write_file("features/step_definitions/calculator_mappings.rb", mapping_code)
141
+ end
142
+
143
+ def assert_passing_scenario
144
+ assert_partial_output("1 scenario (1 passed)", all_output)
145
+ assert_success true
146
+ end
147
+
148
+ def assert_failing_scenario
149
+ assert_partial_output("1 scenario (1 failed)", all_output)
150
+ assert_success false
151
+ end
152
+
153
+ def assert_pending_scenario
154
+ assert_partial_output("1 scenario (1 pending)", all_output)
155
+ assert_success true
156
+ end
157
+
158
+ def assert_undefined_scenario
159
+ assert_partial_output("1 scenario (1 undefined)", all_output)
160
+ assert_success true
161
+ end
162
+
163
+ def failed_output
164
+ "failed"
165
+ end
166
+ end
167
+
168
+ World(CucumberRubyMappings)
@@ -3,7 +3,16 @@ When /^I run cucumber "(.+)"$/ do |cmd|
3
3
  end
4
4
 
5
5
  Then /^it should (pass|fail) with JSON:$/ do |pass_fail, json|
6
- JSON.parse(all_stdout).should == JSON.parse(json)
6
+ # Need to store it in a variable. With JRuby we can only do this once it seems :-/
7
+ stdout = all_stdout
8
+
9
+ # JRuby has weird traces sometimes (?)
10
+ stdout = stdout.gsub(/ `\(root\)':in/, '')
11
+
12
+ actual = JSON.parse(stdout)
13
+ expected = JSON.parse(json)
14
+
15
+ actual.should == expected
7
16
  assert_success(pass_fail == 'pass')
8
17
  end
9
18
 
@@ -22,5 +22,5 @@ Before do
22
22
  # set_env('SIMPLECOV', 'true')
23
23
 
24
24
  # Set a longer timeout for aruba
25
- @aruba_timeout_seconds = 5
25
+ @aruba_timeout_seconds = 15
26
26
  end
@@ -3,7 +3,7 @@ Feature: undefined multiline args
3
3
  Scenario: pystring
4
4
  Given a pystring
5
5
  """
6
- example
6
+ example with <html> entities
7
7
  """
8
8
 
9
9
  Scenario: table
data/gem_tasks/yard.rake CHANGED
@@ -8,7 +8,7 @@ YARD::Rake::YardocTask.new(:yard) do |t|
8
8
  t.files = %w{lib - README.md History.md LICENSE}
9
9
  end
10
10
 
11
- desc 'Push yardoc to http://cukes.info/gherkin/api/#{GHERKIN_VERSION}'
11
+ desc "Push yardoc to http://cukes.info/cucumber/api/#{Cucumber::VERSION}"
12
12
  task :push_yard => :yard do
13
13
  sh("tar czf api-#{Cucumber::VERSION}.tgz -C doc .")
14
14
  sh("scp api-#{Cucumber::VERSION}.tgz cukes.info:/var/www/cucumber/api/ruby")
@@ -323,7 +323,7 @@ Feature: Cucumber command line
323
323
  Scenario: pystring
324
324
  Given a pystring
325
325
  \"\"\"
326
- example
326
+ example with <html> entities
327
327
  \"\"\"
328
328
 
329
329
  Scenario: table
@@ -551,7 +551,7 @@ features/tons_of_cukes.feature:5:in `Given '2' cukes'</pre></div><pre class="rub
551
551
  <span class="offending"><span class="linenum">28</span> <span class="keyword">raise</span> <span class="punct">&quot;</span><span class="string">We already have <span class="expr">#{@cukes}</span> cukes!</span><span class="punct">&quot;</span> <span class="keyword">if</span> <span class="attribute">@cukes</span></span>
552
552
  <span class="linenum">29</span> <span class="attribute">@cukes</span> <span class="punct">=</span> <span class="ident">cukes</span>
553
553
  <span class="linenum">30</span><span class="keyword">end</span></code></pre></li> <script type="text/javascript">moveProgressBar('50.9');</script><li id='features_tons_of_cukes_feature_6' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('51.9');</script><li id='features_tons_of_cukes_feature_7' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('52.8');</script><li id='features_tons_of_cukes_feature_8' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('53.8');</script><li id='features_tons_of_cukes_feature_9' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('54.8');</script><li id='features_tons_of_cukes_feature_10' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('55.7');</script><li id='features_tons_of_cukes_feature_11' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('56.7');</script><li id='features_tons_of_cukes_feature_12' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('57.6');</script><li id='features_tons_of_cukes_feature_13' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('58.6');</script><li id='features_tons_of_cukes_feature_14' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('59.6');</script><li id='features_tons_of_cukes_feature_15' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('60.5');</script><li id='features_tons_of_cukes_feature_16' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('61.5');</script><li id='features_tons_of_cukes_feature_17' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('62.5');</script><li id='features_tons_of_cukes_feature_18' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('63.4');</script><li id='features_tons_of_cukes_feature_19' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('64.4');</script><li id='features_tons_of_cukes_feature_20' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('65.3');</script><li id='features_tons_of_cukes_feature_21' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('66.3');</script><li id='features_tons_of_cukes_feature_22' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('67.3');</script><li id='features_tons_of_cukes_feature_23' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('68.2');</script><li id='features_tons_of_cukes_feature_24' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('69.2');</script><li id='features_tons_of_cukes_feature_25' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('70.1');</script><li id='features_tons_of_cukes_feature_26' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('71.1');</script><li id='features_tons_of_cukes_feature_27' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('72.1');</script><li id='features_tons_of_cukes_feature_28' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('73.0');</script><li id='features_tons_of_cukes_feature_29' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('74.0');</script><li id='features_tons_of_cukes_feature_30' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('75.0');</script><li id='features_tons_of_cukes_feature_31' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('75.9');</script><li id='features_tons_of_cukes_feature_32' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('76.9');</script><li id='features_tons_of_cukes_feature_33' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('77.8');</script><li id='features_tons_of_cukes_feature_34' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('78.8');</script><li id='features_tons_of_cukes_feature_35' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('79.8');</script><li id='features_tons_of_cukes_feature_36' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('80.7');</script><li id='features_tons_of_cukes_feature_37' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('81.7');</script><li id='features_tons_of_cukes_feature_38' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('82.6');</script><li id='features_tons_of_cukes_feature_39' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('83.6');</script><li id='features_tons_of_cukes_feature_40' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('84.6');</script><li id='features_tons_of_cukes_feature_41' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('85.5');</script><li id='features_tons_of_cukes_feature_42' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('86.5');</script><li id='features_tons_of_cukes_feature_43' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('87.5');</script><li id='features_tons_of_cukes_feature_44' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('88.4');</script><li id='features_tons_of_cukes_feature_45' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('89.4');</script><li id='features_tons_of_cukes_feature_46' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('90.3');</script><li id='features_tons_of_cukes_feature_47' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('91.3');</script><li id='features_tons_of_cukes_feature_48' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('92.3');</script><li id='features_tons_of_cukes_feature_49' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('93.2');</script><li id='features_tons_of_cukes_feature_50' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('94.2');</script><li id='features_tons_of_cukes_feature_51' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('95.1');</script><li id='features_tons_of_cukes_feature_52' class='step skipped'><div class="step_name"><span class="keyword">Given </span><span class="step val">'<span class="param">2</span>' cukes</span></div><div class="step_file"><span>features/step_definitions/sample_steps.rb:27</span></div></li> <script type="text/javascript">moveProgressBar('96.1');</script></ol><span class="embed"><a href="" onclick="img=document.getElementById('img_24'); img.style.display = (img.style.display == 'none' ? 'block' : 'none');return false">Screenshot</a><br>&nbsp;
554
- <img id="img_24" style="display: none" src="data:image/png;base64,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"/></span></div></div><div class="feature"><h2><span class="val">Feature: undefined multiline args</span></h2><p class="narrative"></p><div class='scenario'><span class="scenario_file">features/undefined_multiline_args.feature:3</span><h3 id="scenario_22"><span class="keyword">Scenario:</span> <span class="val">pystring</span></h3><ol><script>makeYellow('scenario_22');</script><li id='features_undefined_multiline_args_feature_4' class='step undefined'><div class="step_name"><span class="keyword">Given </span><span class="step val">a pystring</span></div><div class="step_file"><span>features/undefined_multiline_args.feature:4</span></div><pre class="val"> example</pre><pre>Given /^a pystring$/ do |string|
554
+ <img id="img_24" style="display: none" src="data:image/png;base64,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"/></span></div></div><div class="feature"><h2><span class="val">Feature: undefined multiline args</span></h2><p class="narrative"></p><div class='scenario'><span class="scenario_file">features/undefined_multiline_args.feature:3</span><h3 id="scenario_22"><span class="keyword">Scenario:</span> <span class="val">pystring</span></h3><ol><script>makeYellow('scenario_22');</script><li id='features_undefined_multiline_args_feature_4' class='step undefined'><div class="step_name"><span class="keyword">Given </span><span class="step val">a pystring</span></div><div class="step_file"><span>features/undefined_multiline_args.feature:4</span></div><pre class="val"> example with &lt;html&gt; entities</pre><pre>Given /^a pystring$/ do |string|
555
555
  pending # express the regexp above with the code you wish you had
556
556
  end</pre></li> <script type="text/javascript">moveProgressBar('97.1');</script></ol><span class="embed"><a href="" onclick="img=document.getElementById('img_25'); img.style.display = (img.style.display == 'none' ? 'block' : 'none');return false">Screenshot</a><br>&nbsp;
557
557
  <img id="img_25" style="display: none" src="data:image/png;base64,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"/></span></div><div class='scenario'><span class="scenario_file">features/undefined_multiline_args.feature:9</span><h3 id="scenario_23"><span class="keyword">Scenario:</span> <span class="val">table</span></h3><ol><script>makeYellow('scenario_23');</script><li id='features_undefined_multiline_args_feature_10' class='step undefined'><div class="step_name"><span class="keyword">Given </span><span class="step val">a table</span></div><div class="step_file"><span>features/undefined_multiline_args.feature:10</span></div><table><tr class='step' id='row_11'><td class="step" id="row_11_0"><div><span class="step param">table</span></div></td></tr> <script type="text/javascript">moveProgressBar('99.0');</script><tr class='step' id='row_12'><td class="step" id="row_12_0"><div><span class="step param">example</span></div></td></tr> <script type="text/javascript">moveProgressBar('100.0');</script></table><pre>Given /^a table$/ do |table|
@@ -12,7 +12,7 @@ Feature: JUnit output formatter
12
12
  """
13
13
 
14
14
  """
15
- And "fixtures/junit/tmp/TEST-one_passing_one_failing.xml" with junit duration "0.005" should contain
15
+ And "fixtures/junit/tmp/TEST-features-one_passing_one_failing.xml" with junit duration "0.005" should contain
16
16
  """
17
17
  <?xml version="1.0" encoding="UTF-8"?>
18
18
  <testsuite errors="0" failures="1" name="One passing scenario, one failing scenario" skipped="0" tests="2" time="0.005">
@@ -40,7 +40,7 @@ Feature: JUnit output formatter
40
40
  """
41
41
 
42
42
  """
43
- And "fixtures/junit/tmp/TEST-some_subdirectory_one_passing_one_failing.xml" with junit duration "0.005" should contain
43
+ And "fixtures/junit/tmp/TEST-features-some_subdirectory-one_passing_one_failing.xml" with junit duration "0.005" should contain
44
44
  """
45
45
  <?xml version="1.0" encoding="UTF-8"?>
46
46
  <testsuite errors="0" failures="1" name="Subdirectory - One passing scenario, one failing scenario" skipped="0" tests="2" time="0.005">
@@ -68,7 +68,7 @@ Feature: JUnit output formatter
68
68
  """
69
69
 
70
70
  """
71
- And "fixtures/junit/tmp/TEST-pending.xml" with junit duration "0.009" should contain
71
+ And "fixtures/junit/tmp/TEST-features-pending.xml" with junit duration "0.009" should contain
72
72
  """
73
73
  <?xml version="1.0" encoding="UTF-8"?>
74
74
  <testsuite errors="0" failures="0" name="Pending step" skipped="2" tests="2" time="0.009">
@@ -88,7 +88,7 @@ Feature: JUnit output formatter
88
88
  """
89
89
 
90
90
  """
91
- And "fixtures/junit/tmp/TEST-pending.xml" with junit duration "0.000160" should contain
91
+ And "fixtures/junit/tmp/TEST-features-pending.xml" with junit duration "0.000160" should contain
92
92
  """
93
93
  <?xml version="1.0" encoding="UTF-8"?>
94
94
  <testsuite errors="0" failures="2" name="Pending step" skipped="0" tests="2" time="0.000160">
@@ -120,8 +120,8 @@ Feature: JUnit output formatter
120
120
  """
121
121
 
122
122
  """
123
- And "fixtures/junit/tmp/TEST-one_passing_one_failing.xml" should exist
124
- And "fixtures/junit/tmp/TEST-pending.xml" should exist
123
+ And "fixtures/junit/tmp/TEST-features-one_passing_one_failing.xml" should exist
124
+ And "fixtures/junit/tmp/TEST-features-pending.xml" should exist
125
125
 
126
126
  Scenario: show correct error message if no --out is passed
127
127
  When I run cucumber --format junit features
@@ -140,7 +140,7 @@ You \*must\* specify \-\-out DIR for the junit formatter
140
140
  """
141
141
 
142
142
  """
143
- And "fixtures/junit/tmp/TEST-scenario_outline.xml" with junit duration "0.005" should contain
143
+ And "fixtures/junit/tmp/TEST-features-scenario_outline.xml" with junit duration "0.005" should contain
144
144
  """
145
145
  <?xml version="1.0" encoding="UTF-8"?>
146
146
  <testsuite errors="0" failures="1" name="Scenario outlines" skipped="0" tests="2" time="0.005">
@@ -20,6 +20,13 @@ Feature: Rerun Debugger
20
20
  Scenario: Pending
21
21
  Given pending
22
22
 
23
+ Scenario: Passing
24
+ Given passing
25
+ """
26
+ And a file named "features/all_good.feature" with:
27
+ """
28
+ Feature: Rerun
29
+
23
30
  Scenario: Passing
24
31
  Given passing
25
32
  """
@@ -37,7 +44,7 @@ Feature: Rerun Debugger
37
44
  end
38
45
  """
39
46
 
40
- When I run cucumber -f rerun features/sample.feature
47
+ When I run cucumber -f rerun features/sample.feature features/all_good.feature
41
48
  Then it should fail with
42
49
  """
43
50
  features/sample.feature:3:6:9
@@ -8,10 +8,6 @@ module Cucumber
8
8
  class StepInvocation #:nodoc:
9
9
  include Gherkin::Rubify
10
10
 
11
- BACKTRACE_FILTER_PATTERNS = [
12
- /vendor\/rails|lib\/cucumber|bin\/cucumber:|lib\/rspec|gems\//
13
- ]
14
-
15
11
  attr_writer :step_collection, :background
16
12
  attr_reader :name, :matched_cells, :status, :reported_exception
17
13
  attr_accessor :exception
@@ -97,9 +93,23 @@ module Cucumber
97
93
  end
98
94
 
99
95
  def failed(configuration, e, clear_backtrace)
100
- e = filter_backtrace(e)
101
- e.set_backtrace([]) if clear_backtrace
96
+ if Cucumber::JRUBY && e.class.name == 'NativeException'
97
+ # JRuby's NativeException ignores #set_backtrace.
98
+ # We're fixing it.
99
+ e.instance_eval do
100
+ def set_backtrace(backtrace)
101
+ @backtrace = backtrace
102
+ end
103
+
104
+ def backtrace
105
+ @backtrace
106
+ end
107
+ end
108
+ end
109
+
110
+ e.set_backtrace([]) if e.backtrace.nil? || clear_backtrace
102
111
  e.backtrace << @step.backtrace_line unless @step.backtrace_line.nil?
112
+ e = filter_backtrace(e)
103
113
  @exception = e
104
114
  if(configuration.strict? || !(Undefined === e) || e.nested?)
105
115
  @reported_exception = e
@@ -109,28 +119,23 @@ module Cucumber
109
119
  end
110
120
 
111
121
  PWD_PATTERN = /#{Regexp.escape(Dir.pwd)}\//m
122
+ BACKTRACE_FILTER_PATTERN = /vendor\/rails|lib\/cucumber|bin\/cucumber:|lib\/rspec|gems\/|minitest|test\/unit/
123
+ IN_PATTERN = /(.*):in `/
112
124
 
113
125
  def filter_backtrace(e)
114
126
  return e if Cucumber.use_full_backtrace
115
- (e.backtrace || []).each{|line| line.gsub!(PWD_PATTERN, "./")}
127
+ e.backtrace.each{|line| line.gsub!(PWD_PATTERN, "./")}
116
128
 
117
129
  filtered = (e.backtrace || []).reject do |line|
118
- BACKTRACE_FILTER_PATTERNS.detect { |p| line =~ p }
130
+ line =~ BACKTRACE_FILTER_PATTERN
119
131
  end
120
-
121
- if Cucumber::JRUBY && e.class.name == 'NativeException'
122
- # JRuby's NativeException ignores #set_backtrace.
123
- # We're fixing it.
124
- e.instance_eval do
125
- def set_backtrace(backtrace)
126
- @backtrace = backtrace
127
- end
128
132
 
129
- def backtrace
130
- @backtrace
131
- end
133
+ if ENV['CUCUMBER_TRUNCATE_OUTPUT']
134
+ filtered = filtered.map do |line|
135
+ line =~ IN_PATTERN ? $1 : line
132
136
  end
133
137
  end
138
+
134
139
  e.set_backtrace(filtered)
135
140
  e
136
141
  end