cucumber 0.3.7 → 0.3.8

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.
@@ -1,3 +1,24 @@
1
+ == 0.3.8 2009-05-27
2
+
3
+ This Cucumber version fixes several bugs related to Ruby on Rails and RSpec. If you
4
+ use Cucumber with a Rails app we *strongly* recommend you bootstrap Cucumber again:
5
+
6
+ ruby script/generate cucumber
7
+
8
+ === New Features
9
+ * Rails cucumber generator sets up default gem dependencies in cucumber environment.
10
+ * The duration of a run is reported by formatters - same format as the Linux time command (#228 Aslak Hellesøy)
11
+ * Scenario and ExampleRow objects (passed to Before and After hooks) have #name and #line methods (#316 Aslak Hellesøy)
12
+ * Rails generator creates a cucumber environment file to avoid potential cache_classes conflicts in test.rb (#165, Ben Mabey)
13
+ * HTML formatter renders @tags (but the CSS is still ugly)
14
+
15
+ === Removed/changed features
16
+ * The Cucumber Rake task will again fork by default (as 0.3.3 and earlier). Forking must be turned off explicitly. (Aslak Hellesøy)
17
+
18
+ === Bugfixes
19
+ * Better coexistence with RSpec - Cucumber now *neuters* the part of RSpec that tries to parse ARGV.
20
+ * The differ= exception is gone (#325, #340 Aslak Hellesøy)
21
+
1
22
  == 0.3.7 2009-05-22
2
23
 
3
24
  This is the "Help JetBrains RubyMine" release!
@@ -246,6 +246,8 @@ features/cucumber_cli_outlines.feature
246
246
  features/custom_formatter.feature
247
247
  features/exclude_files.feature
248
248
  features/expand.feature
249
+ features/html_formatter.feature
250
+ features/html_formatter/a.html
249
251
  features/junit_formatter.feature
250
252
  features/multiline_names.feature
251
253
  features/rake_task.feature
@@ -301,6 +303,7 @@ lib/cucumber/formatter/color_io.rb
301
303
  lib/cucumber/formatter/console.rb
302
304
  lib/cucumber/formatter/cucumber.css
303
305
  lib/cucumber/formatter/cucumber.sass
306
+ lib/cucumber/formatter/duration.rb
304
307
  lib/cucumber/formatter/html.rb
305
308
  lib/cucumber/formatter/junit.rb
306
309
  lib/cucumber/formatter/pretty.rb
@@ -323,6 +326,7 @@ lib/cucumber/platform.rb
323
326
  lib/cucumber/rails/rspec.rb
324
327
  lib/cucumber/rails/world.rb
325
328
  lib/cucumber/rake/task.rb
329
+ lib/cucumber/rspec_neuter.rb
326
330
  lib/cucumber/step_definition.rb
327
331
  lib/cucumber/step_match.rb
328
332
  lib/cucumber/step_mother.rb
@@ -332,6 +336,7 @@ rails_generators/cucumber/USAGE
332
336
  rails_generators/cucumber/cucumber_generator.rb
333
337
  rails_generators/cucumber/templates/cucumber
334
338
  rails_generators/cucumber/templates/cucumber.rake
339
+ rails_generators/cucumber/templates/cucumber_environment.rb
335
340
  rails_generators/cucumber/templates/env.rb
336
341
  rails_generators/cucumber/templates/paths.rb
337
342
  rails_generators/cucumber/templates/webrat_steps.rb
@@ -357,6 +362,7 @@ spec/cucumber/core_ext/proc_spec.rb
357
362
  spec/cucumber/core_ext/string_spec.rb
358
363
  spec/cucumber/formatter/ansicolor_spec.rb
359
364
  spec/cucumber/formatter/color_io_spec.rb
365
+ spec/cucumber/formatter/duration_spec.rb
360
366
  spec/cucumber/formatter/html/cucumber.css
361
367
  spec/cucumber/formatter/html/cucumber.js
362
368
  spec/cucumber/formatter/html/index.html
@@ -2,6 +2,7 @@
2
2
  # Add '.rb' to work around a bug in IronRuby's File#dirname
3
3
  $:.unshift(File.dirname(__FILE__ + '.rb') + '/../lib') unless $:.include?(File.dirname(__FILE__ + '.rb') + '/../lib')
4
4
 
5
+ require 'cucumber/rspec_neuter'
5
6
  require 'cucumber/cli/main'
6
7
  begin
7
8
  # The dup is to keep ARGV intact, so that tools like ruby-debug can respawn.
@@ -6,6 +6,13 @@
6
6
 
7
7
  <target name="cucumber" depends="compile" description="Run Cucumber">
8
8
  <property environment="ENV" />
9
+ <fail unless="ENV.JRUBY_HOME">
10
+ (::) ERROR (::)
11
+ Define JRUBY_HOME in your shell. For example:
12
+
13
+ export JRUBY_HOME=/usr/local/jruby
14
+ set JRUBY_HOME=C:\jruby
15
+ </fail>
9
16
  <java classname="org.jruby.Main" fork="true" failonerror="true">
10
17
  <classpath>
11
18
  <pathelement path="${ENV.JRUBY_HOME}/lib/jruby.jar"/>
@@ -0,0 +1,7 @@
1
+ Feature: HTML formatter
2
+ In order to make it easy to read Cucumber results
3
+ there should be a HTML formatter with an awesome CSS
4
+
5
+ Scenario: Everything in examples/self_test
6
+ When I run cucumber -q --format html --out tmp/a.html features
7
+ Then "examples/self_test/tmp/a.html" should have the same contents as "features/html_formatter/a.html"
@@ -0,0 +1,1182 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml">
3
+ <head>
4
+ <meta content="text/html;charset=utf-8"/>
5
+ <title>Cucumber</title>
6
+ <style type="text/css">
7
+ .cucumber {
8
+ background: black;
9
+ color: white;
10
+ padding: 1em;
11
+ }
12
+ .cucumber .passed {
13
+ color: #008800;
14
+ }
15
+ .cucumber .undefined {
16
+ color: #888800;
17
+ }
18
+ .cucumber .pending {
19
+ color: #888800;
20
+ }
21
+ .cucumber .failed {
22
+ color: #880000;
23
+ }
24
+ .cucumber .skipped {
25
+ color: #008888;
26
+ }
27
+ .cucumber .outline {
28
+ color: #008888;
29
+ }
30
+
31
+ .cucumber .passed_param {
32
+ font-weight: bold;
33
+ color: #00ff00;
34
+ }
35
+ .cucumber .undefined_param {
36
+ font-weight: bold;
37
+ color: #ffff00;
38
+ }
39
+ .cucumber .pending_param {
40
+ font-weight: bold;
41
+ color: #ffff00;
42
+ }
43
+ .cucumber .failed_param {
44
+ font-weight: bold;
45
+ font-weight: bold;
46
+ color: #ff0000;
47
+ }
48
+ .cucumber .skipped_param {
49
+ font-weight: bold;
50
+ color: #00ffff;
51
+ }
52
+ .cucumber .outline_param {
53
+ font-weight: bold;
54
+ color: #00ffff;
55
+ }
56
+
57
+ .cucumber a {
58
+ text-decoration: none;
59
+ color: inherit;
60
+ }
61
+ .cucumber a:hover {
62
+ text-decoration: underline;
63
+ }
64
+ .cucumber a:visited {
65
+ font-weight: normal;
66
+ }
67
+ .cucumber ol {
68
+ list-style: none;
69
+ }
70
+ .cucumber .stats {
71
+ margin: 2em;
72
+ }
73
+ .cucumber .summary ul.features li {
74
+ display: inline;
75
+ }
76
+ .cucumber .backtrace {
77
+ margin-top: 0;
78
+ margin-bottom: 0;
79
+ margin-left: 1em;
80
+ }
81
+ </style>
82
+ </head>
83
+ <body>
84
+ <div class="cucumber">
85
+ <div class="feature">
86
+ <span class="tag">@background_tagged_before_on_outline</span>
87
+ <h2>Feature: Background tagged Before on Outline</h2>
88
+ <p>
89
+ </p>
90
+ <div class="background">
91
+ <h3>Background: </h3>
92
+ <ol>
93
+ <li class="step passed" id="features_background_background_tagged_before_on_outline_feature_5">
94
+ <div>
95
+ Given passing without a table </div>
96
+ </li>
97
+ </ol>
98
+ </div>
99
+ <div class="scenario">
100
+ <h3>Scenario Outline: passing background</h3>
101
+ <ol>
102
+ <li class="step skipped" id="features_background_background_tagged_before_on_outline_feature_8">
103
+ <div>
104
+ Then I should have '&lt;count&gt;' cukes </div>
105
+ </li>
106
+ </ol>
107
+ <h4>Examples: </h4>
108
+ <table>
109
+ <tr id="row_11">
110
+ <th class="skipped_param" id="row_11_0">count</th>
111
+ </tr>
112
+ <tr id="row_12">
113
+ <td class="passed" id="row_12_0">888</td>
114
+ </tr>
115
+ </table>
116
+ </div>
117
+ </div>
118
+ <div class="feature">
119
+ <h2>Feature: background with name</h2>
120
+ <p>
121
+ </p>
122
+ <div class="background">
123
+ <h3>Background: I'm a background and I'm ok</h3>
124
+ <ol>
125
+ <li class="step passed" id="features_background_background_with_name_feature_4">
126
+ <div>
127
+ Given '<span class="passed_param">10</span>' cukes </div>
128
+ </li>
129
+ </ol>
130
+ </div>
131
+ <div class="scenario">
132
+ <h3>Scenario: example</h3>
133
+ <ol>
134
+ <li class="step passed" id="features_background_background_with_name_feature_4">
135
+ </li>
136
+ <li class="step passed" id="features_background_background_with_name_feature_7">
137
+ <div>
138
+ Then I should have '<span class="passed_param">10</span>' cukes </div>
139
+ </li>
140
+ </ol>
141
+ </div>
142
+ </div>
143
+ <div class="feature">
144
+ <span class="tag">@after_file</span>
145
+ <h2>Feature: Failing background sample</h2>
146
+ <p>
147
+ </p>
148
+ <div class="background">
149
+ <h3>Background: </h3>
150
+ <ol>
151
+ <li class="step failed" id="features_background_failing_background_feature_5">
152
+ <div>
153
+ Given failing without a table </div>
154
+ <pre class="failed">FAIL (RuntimeError)
155
+ ./features/step_definitions/sample_steps.rb:2:in `flunker'
156
+ ./features/step_definitions/sample_steps.rb:16:in `/^failing without a table$/'
157
+ features/background/failing_background.feature:5:in `Given failing without a table'</pre>
158
+ </li>
159
+ <li class="step skipped" id="features_background_failing_background_feature_6">
160
+ <div>
161
+ And '<span class="skipped_param">10</span>' cukes </div>
162
+ </li>
163
+ </ol>
164
+ </div>
165
+ <div class="scenario">
166
+ <h3>Scenario: failing background</h3>
167
+ <ol>
168
+ <li class="step failed" id="features_background_failing_background_feature_5">
169
+ <pre class="failed">FAIL (RuntimeError)
170
+ ./features/step_definitions/sample_steps.rb:2:in `flunker'
171
+ ./features/step_definitions/sample_steps.rb:16:in `/^failing without a table$/'
172
+ features/background/failing_background.feature:5:in `Given failing without a table'</pre>
173
+ </li>
174
+ <li class="step skipped" id="features_background_failing_background_feature_6">
175
+ </li>
176
+ <li class="step skipped" id="features_background_failing_background_feature_9">
177
+ <div>
178
+ Then I should have '<span class="skipped_param">10</span>' cukes </div>
179
+ </li>
180
+ </ol>
181
+ </div>
182
+ <div class="scenario">
183
+ <h3>Scenario: another failing background</h3>
184
+ <ol>
185
+ <li class="step skipped" id="features_background_failing_background_feature_5">
186
+ </li>
187
+ <li class="step skipped" id="features_background_failing_background_feature_6">
188
+ </li>
189
+ <li class="step skipped" id="features_background_failing_background_feature_12">
190
+ <div>
191
+ Then I should have '<span class="skipped_param">10</span>' cukes </div>
192
+ </li>
193
+ </ol>
194
+ </div>
195
+ </div>
196
+ <div class="feature">
197
+ <h2>Feature: Failing background after previously successful background sample</h2>
198
+ <p>
199
+ </p>
200
+ <div class="background">
201
+ <h3>Background: </h3>
202
+ <ol>
203
+ <li class="step passed" id="features_background_failing_background_after_success_feature_4">
204
+ <div>
205
+ Given passing without a table </div>
206
+ </li>
207
+ <li class="step passed" id="features_background_failing_background_after_success_feature_5">
208
+ <div>
209
+ And '<span class="passed_param">10</span>' global cukes </div>
210
+ </li>
211
+ </ol>
212
+ </div>
213
+ <div class="scenario">
214
+ <h3>Scenario: passing background</h3>
215
+ <ol>
216
+ <li class="step passed" id="features_background_failing_background_after_success_feature_4">
217
+ </li>
218
+ <li class="step passed" id="features_background_failing_background_after_success_feature_5">
219
+ </li>
220
+ <li class="step passed" id="features_background_failing_background_after_success_feature_8">
221
+ <div>
222
+ Then I should have '<span class="passed_param">10</span>' global cukes </div>
223
+ </li>
224
+ </ol>
225
+ </div>
226
+ <div class="scenario">
227
+ <h3>Scenario: failing background</h3>
228
+ <ol>
229
+ <li class="step passed" id="features_background_failing_background_after_success_feature_4">
230
+ </li>
231
+ <li class="step failed" id="features_background_failing_background_after_success_feature_5">
232
+ <pre class="failed">FAIL (RuntimeError)
233
+ ./features/step_definitions/sample_steps.rb:2:in `flunker'
234
+ ./features/step_definitions/sample_steps.rb:37:in `/^'(.+)' global cukes$/'
235
+ features/background/failing_background_after_success.feature:5:in `And '10' global cukes'</pre>
236
+ </li>
237
+ <li class="step skipped" id="features_background_failing_background_after_success_feature_11">
238
+ <div>
239
+ Then I should have '<span class="skipped_param">10</span>' global cukes </div>
240
+ </li>
241
+ </ol>
242
+ </div>
243
+ </div>
244
+ <div class="feature">
245
+ <h2>Feature: Passing background with multiline args</h2>
246
+ <p>
247
+ </p>
248
+ <div class="background">
249
+ <h3>Background: </h3>
250
+ <ol>
251
+ <li class="step passed" id="features_background_multiline_args_background_feature_4">
252
+ <div>
253
+ Given table </div>
254
+ <table>
255
+ <tr id="row_5">
256
+ <td id="row_5_0">a</td>
257
+ <td id="row_5_1">b</td>
258
+ </tr>
259
+ <tr id="row_6">
260
+ <td id="row_6_0">c</td>
261
+ <td id="row_6_1">d</td>
262
+ </tr>
263
+ </table>
264
+ </li>
265
+ <li class="step passed" id="features_background_multiline_args_background_feature_7">
266
+ <div>
267
+ And multiline string </div>
268
+ <pre class="passed">
269
+ I'm a cucumber and I'm okay.
270
+ I sleep all night and I test all day </pre>
271
+ </li>
272
+ </ol>
273
+ </div>
274
+ <div class="scenario">
275
+ <h3>Scenario: passing background</h3>
276
+ <ol>
277
+ <li class="step passed" id="features_background_multiline_args_background_feature_4">
278
+ </li>
279
+ <li class="step passed" id="features_background_multiline_args_background_feature_7">
280
+ </li>
281
+ <li class="step passed" id="features_background_multiline_args_background_feature_14">
282
+ <div>
283
+ Then the table should be </div>
284
+ <table>
285
+ <tr id="row_15">
286
+ <td id="row_15_0">a</td>
287
+ <td id="row_15_1">b</td>
288
+ </tr>
289
+ <tr id="row_16">
290
+ <td id="row_16_0">c</td>
291
+ <td id="row_16_1">d</td>
292
+ </tr>
293
+ </table>
294
+ </li>
295
+ <li class="step passed" id="features_background_multiline_args_background_feature_17">
296
+ <div>
297
+ Then the multiline string should be </div>
298
+ <pre class="passed">
299
+ I'm a cucumber and I'm okay.
300
+ I sleep all night and I test all day </pre>
301
+ </li>
302
+ </ol>
303
+ </div>
304
+ <div class="scenario">
305
+ <h3>Scenario: another passing background</h3>
306
+ <ol>
307
+ <li class="step passed" id="features_background_multiline_args_background_feature_4">
308
+ </li>
309
+ <li class="step passed" id="features_background_multiline_args_background_feature_7">
310
+ </li>
311
+ <li class="step passed" id="features_background_multiline_args_background_feature_24">
312
+ <div>
313
+ Then the table should be </div>
314
+ <table>
315
+ <tr id="row_25">
316
+ <td id="row_25_0">a</td>
317
+ <td id="row_25_1">b</td>
318
+ </tr>
319
+ <tr id="row_26">
320
+ <td id="row_26_0">c</td>
321
+ <td id="row_26_1">d</td>
322
+ </tr>
323
+ </table>
324
+ </li>
325
+ <li class="step passed" id="features_background_multiline_args_background_feature_27">
326
+ <div>
327
+ Then the multiline string should be </div>
328
+ <pre class="passed">
329
+ I'm a cucumber and I'm okay.
330
+ I sleep all night and I test all day </pre>
331
+ </li>
332
+ </ol>
333
+ </div>
334
+ </div>
335
+ <div class="feature">
336
+ <h2>Feature: Passing background sample</h2>
337
+ <p>
338
+ </p>
339
+ <div class="background">
340
+ <h3>Background: </h3>
341
+ <ol>
342
+ <li class="step passed" id="features_background_passing_background_feature_4">
343
+ <div>
344
+ Given '<span class="passed_param">10</span>' cukes </div>
345
+ </li>
346
+ </ol>
347
+ </div>
348
+ <div class="scenario">
349
+ <h3>Scenario: passing background</h3>
350
+ <ol>
351
+ <li class="step passed" id="features_background_passing_background_feature_4">
352
+ </li>
353
+ <li class="step passed" id="features_background_passing_background_feature_7">
354
+ <div>
355
+ Then I should have '<span class="passed_param">10</span>' cukes </div>
356
+ </li>
357
+ </ol>
358
+ </div>
359
+ <div class="scenario">
360
+ <h3>Scenario: another passing background</h3>
361
+ <ol>
362
+ <li class="step passed" id="features_background_passing_background_feature_4">
363
+ </li>
364
+ <li class="step passed" id="features_background_passing_background_feature_10">
365
+ <div>
366
+ Then I should have '<span class="passed_param">10</span>' cukes </div>
367
+ </li>
368
+ </ol>
369
+ </div>
370
+ </div>
371
+ <div class="feature">
372
+ <h2>Feature: Pending background sample</h2>
373
+ <p>
374
+ </p>
375
+ <div class="background">
376
+ <h3>Background: </h3>
377
+ <ol>
378
+ <li class="step undefined" id="features_background_pending_background_feature_4">
379
+ <div>
380
+ Given pending </div>
381
+ <pre class="undefined">Undefined step: "pending" (Cucumber::Undefined)
382
+ features/background/pending_background.feature:4:in `Given pending'</pre>
383
+ </li>
384
+ </ol>
385
+ </div>
386
+ <div class="scenario">
387
+ <h3>Scenario: pending background</h3>
388
+ <ol>
389
+ <li class="step undefined" id="features_background_pending_background_feature_4">
390
+ <pre class="undefined">Undefined step: "pending" (Cucumber::Undefined)
391
+ features/background/pending_background.feature:4:in `Given pending'</pre>
392
+ </li>
393
+ <li class="step skipped" id="features_background_pending_background_feature_7">
394
+ <div>
395
+ Then I should have '<span class="skipped_param">10</span>' cukes </div>
396
+ </li>
397
+ </ol>
398
+ </div>
399
+ <div class="scenario">
400
+ <h3>Scenario: another pending background</h3>
401
+ <ol>
402
+ <li class="step undefined" id="features_background_pending_background_feature_4">
403
+ <pre class="undefined">Undefined step: "pending" (Cucumber::Undefined)
404
+ features/background/pending_background.feature:4:in `Given pending'</pre>
405
+ </li>
406
+ <li class="step skipped" id="features_background_pending_background_feature_10">
407
+ <div>
408
+ Then I should have '<span class="skipped_param">10</span>' cukes </div>
409
+ </li>
410
+ </ol>
411
+ </div>
412
+ </div>
413
+ <div class="feature">
414
+ <h2>Feature: Failing background with scenario outlines sample</h2>
415
+ <p>
416
+ </p>
417
+ <div class="background">
418
+ <h3>Background: </h3>
419
+ <ol>
420
+ <li class="step failed" id="features_background_scenario_outline_failing_background_feature_4">
421
+ <div>
422
+ Given failing without a table </div>
423
+ <pre class="failed">FAIL (RuntimeError)
424
+ ./features/step_definitions/sample_steps.rb:2:in `flunker'
425
+ ./features/step_definitions/sample_steps.rb:16:in `/^failing without a table$/'
426
+ features/background/scenario_outline_failing_background.feature:4:in `Given failing without a table'</pre>
427
+ </li>
428
+ </ol>
429
+ </div>
430
+ <div class="scenario">
431
+ <h3>Scenario Outline: failing background</h3>
432
+ <ol>
433
+ <li class="step skipped" id="features_background_scenario_outline_failing_background_feature_7">
434
+ <div>
435
+ Then I should have '&lt;count&gt;' cukes </div>
436
+ </li>
437
+ </ol>
438
+ <h4>Examples: </h4>
439
+ <table>
440
+ <tr id="row_9">
441
+ <th class="skipped_param" id="row_9_0">count</th>
442
+ </tr>
443
+ <tr id="row_10">
444
+ <td class="skipped" id="row_10_0">10</td>
445
+ </tr>
446
+ <tr>
447
+ <td class="failed" colspan="1">
448
+ <pre>
449
+ FAIL (RuntimeError)
450
+ ./features/step_definitions/sample_steps.rb:2:in `flunker'
451
+ ./features/step_definitions/sample_steps.rb:16:in `/^failing without a table$/'
452
+ features/background/scenario_outline_failing_background.feature:4:in `Given failing without a table' </pre>
453
+ </td>
454
+ </tr>
455
+ </table>
456
+ </div>
457
+ <div class="scenario">
458
+ <h3>Scenario Outline: another failing background</h3>
459
+ <ol>
460
+ <li class="step skipped" id="features_background_scenario_outline_failing_background_feature_13">
461
+ <div>
462
+ Then I should have '&lt;count&gt;' cukes </div>
463
+ </li>
464
+ </ol>
465
+ <h4>Examples: </h4>
466
+ <table>
467
+ <tr id="row_15">
468
+ <th class="skipped_param" id="row_15_0">count</th>
469
+ </tr>
470
+ <tr id="row_16">
471
+ <td class="skipped" id="row_16_0">10</td>
472
+ </tr>
473
+ </table>
474
+ </div>
475
+ </div>
476
+ <div class="feature">
477
+ <h2>Feature: Passing background with scenario outlines sample</h2>
478
+ <p>
479
+ </p>
480
+ <div class="background">
481
+ <h3>Background: </h3>
482
+ <ol>
483
+ <li class="step passed" id="features_background_scenario_outline_passing_background_feature_4">
484
+ <div>
485
+ Given '<span class="passed_param">10</span>' cukes </div>
486
+ </li>
487
+ </ol>
488
+ </div>
489
+ <div class="scenario">
490
+ <h3>Scenario Outline: passing background</h3>
491
+ <ol>
492
+ <li class="step skipped" id="features_background_scenario_outline_passing_background_feature_7">
493
+ <div>
494
+ Then I should have '&lt;count&gt;' cukes </div>
495
+ </li>
496
+ </ol>
497
+ <h4>Examples: </h4>
498
+ <table>
499
+ <tr id="row_9">
500
+ <th class="skipped_param" id="row_9_0">count</th>
501
+ </tr>
502
+ <tr id="row_10">
503
+ <td class="passed" id="row_10_0">10</td>
504
+ </tr>
505
+ </table>
506
+ </div>
507
+ <div class="scenario">
508
+ <h3>Scenario Outline: another passing background</h3>
509
+ <ol>
510
+ <li class="step skipped" id="features_background_scenario_outline_passing_background_feature_13">
511
+ <div>
512
+ Then I should have '&lt;count&gt;' cukes </div>
513
+ </li>
514
+ </ol>
515
+ <h4>Examples: </h4>
516
+ <table>
517
+ <tr id="row_15">
518
+ <th class="skipped_param" id="row_15_0">count</th>
519
+ </tr>
520
+ <tr id="row_16">
521
+ <td class="passed" id="row_16_0">10</td>
522
+ </tr>
523
+ </table>
524
+ </div>
525
+ </div>
526
+ <div class="feature">
527
+ <h2>Feature: Calling undefined step</h2>
528
+ <p>
529
+ </p>
530
+ <div class="scenario">
531
+ <h3>Scenario: Call directly</h3>
532
+ <ol>
533
+ <li class="step undefined" id="features_call_undefined_step_from_step_def_feature_4">
534
+ <div>
535
+ Given a step definition that calls an undefined step </div>
536
+ <pre class="undefined">Undefined step: "this does not exist" (Cucumber::Undefined)
537
+ ./features/step_definitions/sample_steps.rb:20:in `/^a step definition that calls an undefined step$/'
538
+ features/call_undefined_step_from_step_def.feature:4:in `Given a step definition that calls an undefined step'</pre>
539
+ </li>
540
+ </ol>
541
+ </div>
542
+ <div class="scenario">
543
+ <h3>Scenario: Call via another</h3>
544
+ <ol>
545
+ <li class="step undefined" id="features_call_undefined_step_from_step_def_feature_7">
546
+ <div>
547
+ Given call step &quot;<span class="undefined_param">a step definition that calls an undefined step</span>&quot; </div>
548
+ <pre class="undefined">Undefined step: "this does not exist" (Cucumber::Undefined)
549
+ ./features/step_definitions/sample_steps.rb:20:in `/^a step definition that calls an undefined step$/'
550
+ features/call_undefined_step_from_step_def.feature:7:in `Given call step "a step definition that calls an undefined step"'</pre>
551
+ </li>
552
+ </ol>
553
+ </div>
554
+ </div>
555
+ <div class="feature">
556
+ <h2>Feature: Failing expectation</h2>
557
+ <p>
558
+ </p>
559
+ <div class="scenario">
560
+ <h3>Scenario: Failing expectation</h3>
561
+ <ol>
562
+ <li class="step failed" id="features_failing_expectation_feature_4">
563
+ <div>
564
+ Given failing expectation </div>
565
+ <pre class="failed">expected: "that",
566
+ got: "this" (using ==)
567
+ Diff:
568
+ @@ -1,2 +1,2 @@
569
+ -that
570
+ +this
571
+ (Spec::Expectations::ExpectationNotMetError)
572
+ ./features/step_definitions/sample_steps.rb:63:in `/^failing expectation$/'
573
+ features/failing_expectation.feature:4:in `Given failing expectation'</pre>
574
+ </li>
575
+ </ol>
576
+ </div>
577
+ </div>
578
+ <div class="feature">
579
+ <h2>Feature: Lots of undefined</h2>
580
+ <p>
581
+ </p>
582
+ <div class="scenario">
583
+ <h3>Scenario: Implement me</h3>
584
+ <ol>
585
+ <li class="step undefined" id="features_lots_of_undefined_feature_4">
586
+ <div>
587
+ Given it snows in Sahara </div>
588
+ <pre class="undefined">Undefined step: "it snows in Sahara" (Cucumber::Undefined)
589
+ features/lots_of_undefined.feature:4:in `Given it snows in Sahara'</pre>
590
+ </li>
591
+ <li class="step undefined" id="features_lots_of_undefined_feature_5">
592
+ <div>
593
+ Given it's 40 degrees in Norway </div>
594
+ <pre class="undefined">Undefined step: "it's 40 degrees in Norway" (Cucumber::Undefined)
595
+ features/lots_of_undefined.feature:5:in `Given it's 40 degrees in Norway'</pre>
596
+ </li>
597
+ <li class="step undefined" id="features_lots_of_undefined_feature_6">
598
+ <div>
599
+ And it's 40 degrees in Norway </div>
600
+ <pre class="undefined">Undefined step: "it's 40 degrees in Norway" (Cucumber::Undefined)
601
+ features/lots_of_undefined.feature:6:in `And it's 40 degrees in Norway'</pre>
602
+ </li>
603
+ <li class="step undefined" id="features_lots_of_undefined_feature_7">
604
+ <div>
605
+ When I stop procrastinating </div>
606
+ <pre class="undefined">Undefined step: "I stop procrastinating" (Cucumber::Undefined)
607
+ features/lots_of_undefined.feature:7:in `When I stop procrastinating'</pre>
608
+ </li>
609
+ <li class="step undefined" id="features_lots_of_undefined_feature_8">
610
+ <div>
611
+ And there is world peace </div>
612
+ <pre class="undefined">Undefined step: "there is world peace" (Cucumber::Undefined)
613
+ features/lots_of_undefined.feature:8:in `And there is world peace'</pre>
614
+ </li>
615
+ </ol>
616
+ </div>
617
+ </div>
618
+ <div class="feature">
619
+ <h2>Feature: multiline</h2>
620
+ <p>
621
+ </p>
622
+ <div class="background">
623
+ <h3>Background: I'm a multiline name
624
+ which goes on and on and on for three lines
625
+ yawn</h3>
626
+ <ol>
627
+ <li class="step passed" id="features_multiline_name_feature_6">
628
+ <div>
629
+ Given passing without a table </div>
630
+ </li>
631
+ </ol>
632
+ </div>
633
+ <div class="scenario">
634
+ <h3>Scenario: I'm a multiline name
635
+ which goes on and on and on for three lines
636
+ yawn</h3>
637
+ <ol>
638
+ <li class="step passed" id="features_multiline_name_feature_6">
639
+ </li>
640
+ <li class="step passed" id="features_multiline_name_feature_11">
641
+ <div>
642
+ Given passing without a table </div>
643
+ </li>
644
+ </ol>
645
+ </div>
646
+ <div class="scenario">
647
+ <h3>Scenario Outline: I'm a multiline name
648
+ which goes on and on and on for three lines
649
+ yawn</h3>
650
+ <ol>
651
+ <li class="step skipped" id="features_multiline_name_feature_16">
652
+ <div>
653
+ Given &lt;state&gt; without a table </div>
654
+ </li>
655
+ </ol>
656
+ <h4>Examples: </h4>
657
+ <table>
658
+ <tr id="row_18">
659
+ <th class="skipped_param" id="row_18_0">state</th>
660
+ </tr>
661
+ <tr id="row_19">
662
+ <td class="passed" id="row_19_0">passing</td>
663
+ </tr>
664
+ </table>
665
+ </div>
666
+ <div class="scenario">
667
+ <h3>Scenario Outline: name</h3>
668
+ <ol>
669
+ <li class="step skipped" id="features_multiline_name_feature_22">
670
+ <div>
671
+ Given &lt;state&gt; without a table </div>
672
+ </li>
673
+ </ol>
674
+ <h4>Examples: I'm a multiline name
675
+ which goes on and on and on for three lines
676
+ yawn</h4>
677
+ <table>
678
+ <tr id="row_26">
679
+ <th class="skipped_param" id="row_26_0">state</th>
680
+ </tr>
681
+ <tr id="row_27">
682
+ <td class="passed" id="row_27_0">passing</td>
683
+ </tr>
684
+ </table>
685
+ </div>
686
+ </div>
687
+ <div class="feature">
688
+ <h2>Feature: Outline Sample</h2>
689
+ <p>
690
+ </p>
691
+ <div class="scenario">
692
+ <h3>Scenario: I have no steps</h3>
693
+ <ol>
694
+ </ol>
695
+ </div>
696
+ <div class="scenario">
697
+ <h3>Scenario Outline: Test state</h3>
698
+ <ol>
699
+ <li class="step skipped" id="features_outline_sample_feature_6">
700
+ <div>
701
+ Given &lt;state&gt; without a table </div>
702
+ </li>
703
+ <li class="step skipped" id="features_outline_sample_feature_7">
704
+ <div>
705
+ Given &lt;other_state&gt; without a table </div>
706
+ </li>
707
+ </ol>
708
+ <h4>Examples: Rainbow colours</h4>
709
+ <table>
710
+ <tr id="row_9">
711
+ <th class="skipped_param" id="row_9_0">state</th>
712
+ <th class="skipped_param" id="row_9_1">other_state</th>
713
+ </tr>
714
+ <tr id="row_10">
715
+ <td class="undefined" id="row_10_0">missing</td>
716
+ <td class="skipped" id="row_10_1">passing</td>
717
+ </tr>
718
+ <tr>
719
+ <td class="failed" colspan="2">
720
+ <pre>
721
+ Undefined step: "missing without a table" (Cucumber::Undefined)
722
+ features/outline_sample.feature:6:in `Given <state> without a table' </pre>
723
+ </td>
724
+ </tr>
725
+ <tr id="row_11">
726
+ <td class="passed" id="row_11_0">passing</td>
727
+ <td class="passed" id="row_11_1">passing</td>
728
+ </tr>
729
+ <tr id="row_12">
730
+ <td class="failed" id="row_12_0">failing</td>
731
+ <td class="skipped" id="row_12_1">passing</td>
732
+ </tr>
733
+ <tr>
734
+ <td class="failed" colspan="2">
735
+ <pre>
736
+ FAIL (RuntimeError)
737
+ ./features/step_definitions/sample_steps.rb:2:in `flunker'
738
+ ./features/step_definitions/sample_steps.rb:16:in `/^failing without a table$/'
739
+ features/outline_sample.feature:6:in `Given <state> without a table' </pre>
740
+ </td>
741
+ </tr>
742
+ </table>
743
+ <h4>Examples: Only passing</h4>
744
+ <table>
745
+ <tr id="row_14">
746
+ <th class="skipped_param" id="row_14_0">state</th>
747
+ <th class="skipped_param" id="row_14_1">other_state</th>
748
+ </tr>
749
+ <tr id="row_15">
750
+ <td class="passed" id="row_15_0">passing</td>
751
+ <td class="passed" id="row_15_1">passing</td>
752
+ </tr>
753
+ </table>
754
+ </div>
755
+ </div>
756
+ <div class="feature">
757
+ <span class="tag">@one</span>
758
+ <h2>Feature: Sample</h2>
759
+ <p>
760
+ </p>
761
+ <div class="scenario">
762
+ <span class="tag">@two</span>
763
+ <span class="tag">@three</span>
764
+ <h3>Scenario: Missing</h3>
765
+ <ol>
766
+ <li class="step undefined" id="features_sample_feature_6">
767
+ <div>
768
+ Given missing </div>
769
+ <pre class="undefined">Undefined step: "missing" (Cucumber::Undefined)
770
+ features/sample.feature:6:in `Given missing'</pre>
771
+ </li>
772
+ </ol>
773
+ </div>
774
+ <div class="scenario">
775
+ <span class="tag">@three</span>
776
+ <h3>Scenario: Passing</h3>
777
+ <ol>
778
+ <li class="step passed" id="features_sample_feature_10">
779
+ <div>
780
+ Given passing </div>
781
+ <table>
782
+ <tr id="row_11">
783
+ <td id="row_11_0">a</td>
784
+ <td id="row_11_1">b</td>
785
+ </tr>
786
+ <tr id="row_12">
787
+ <td id="row_12_0">c</td>
788
+ <td id="row_12_1">d</td>
789
+ </tr>
790
+ </table>
791
+ </li>
792
+ </ol>
793
+ </div>
794
+ <div class="scenario">
795
+ <span class="tag">@four</span>
796
+ <h3>Scenario: Failing</h3>
797
+ <ol>
798
+ <li class="step failed" id="features_sample_feature_16">
799
+ <div>
800
+ Given failing </div>
801
+ <pre class="failed">
802
+ hello </pre>
803
+ <pre class="failed">FAIL (RuntimeError)
804
+ ./features/step_definitions/sample_steps.rb:2:in `flunker'
805
+ ./features/step_definitions/sample_steps.rb:9:in `/^failing$/'
806
+ features/sample.feature:16:in `Given failing'</pre>
807
+ </li>
808
+ </ol>
809
+ </div>
810
+ </div>
811
+ <div class="feature">
812
+ <h2>Feature: search examples</h2>
813
+ <p>
814
+ </p>
815
+ <div class="background">
816
+ <h3>Background: Hantu Pisang background match</h3>
817
+ <ol>
818
+ <li class="step passed" id="features_search_sample_feature_4">
819
+ <div>
820
+ Given passing without a table </div>
821
+ </li>
822
+ </ol>
823
+ </div>
824
+ <div class="scenario">
825
+ <h3>Scenario: should match Hantu Pisang</h3>
826
+ <ol>
827
+ <li class="step passed" id="features_search_sample_feature_4">
828
+ </li>
829
+ <li class="step passed" id="features_search_sample_feature_7">
830
+ <div>
831
+ Given passing without a table </div>
832
+ </li>
833
+ </ol>
834
+ </div>
835
+ <div class="scenario">
836
+ <h3>Scenario: Ignore me</h3>
837
+ <ol>
838
+ <li class="step passed" id="features_search_sample_feature_4">
839
+ </li>
840
+ <li class="step failed" id="features_search_sample_feature_10">
841
+ <div>
842
+ Given failing without a table </div>
843
+ <pre class="failed">FAIL (RuntimeError)
844
+ ./features/step_definitions/sample_steps.rb:2:in `flunker'
845
+ ./features/step_definitions/sample_steps.rb:16:in `/^failing without a table$/'
846
+ features/search_sample.feature:10:in `Given failing without a table'</pre>
847
+ </li>
848
+ </ol>
849
+ </div>
850
+ <div class="scenario">
851
+ <h3>Scenario Outline: Ignore me</h3>
852
+ <ol>
853
+ <li class="step skipped" id="features_search_sample_feature_13">
854
+ <div>
855
+ Given &lt;state&gt; without a table </div>
856
+ </li>
857
+ </ol>
858
+ <h4>Examples: </h4>
859
+ <table>
860
+ <tr id="row_15">
861
+ <th class="skipped_param" id="row_15_0">state</th>
862
+ </tr>
863
+ <tr id="row_16">
864
+ <td class="failed" id="row_16_0">failing</td>
865
+ </tr>
866
+ <tr>
867
+ <td class="failed" colspan="1">
868
+ <pre>
869
+ FAIL (RuntimeError)
870
+ ./features/step_definitions/sample_steps.rb:2:in `flunker'
871
+ ./features/step_definitions/sample_steps.rb:16:in `/^failing without a table$/'
872
+ features/search_sample.feature:13:in `Given <state> without a table' </pre>
873
+ </td>
874
+ </tr>
875
+ </table>
876
+ </div>
877
+ <div class="scenario">
878
+ <h3>Scenario Outline: Hantu Pisang match</h3>
879
+ <ol>
880
+ <li class="step skipped" id="features_search_sample_feature_19">
881
+ <div>
882
+ Given &lt;state&gt; without a table </div>
883
+ </li>
884
+ </ol>
885
+ <h4>Examples: </h4>
886
+ <table>
887
+ <tr id="row_21">
888
+ <th class="skipped_param" id="row_21_0">state</th>
889
+ </tr>
890
+ <tr id="row_22">
891
+ <td class="passed" id="row_22_0">passing</td>
892
+ </tr>
893
+ </table>
894
+ </div>
895
+ <div class="scenario">
896
+ <h3>Scenario Outline: no match in name but in examples</h3>
897
+ <ol>
898
+ <li class="step skipped" id="features_search_sample_feature_25">
899
+ <div>
900
+ Given &lt;state&gt; without a table </div>
901
+ </li>
902
+ </ol>
903
+ <h4>Examples: Hantu Pisang</h4>
904
+ <table>
905
+ <tr id="row_27">
906
+ <th class="skipped_param" id="row_27_0">state</th>
907
+ </tr>
908
+ <tr id="row_28">
909
+ <td class="passed" id="row_28_0">passing</td>
910
+ </tr>
911
+ </table>
912
+ <h4>Examples: Ignore me</h4>
913
+ <table>
914
+ <tr id="row_31">
915
+ <th class="skipped_param" id="row_31_0">state</th>
916
+ </tr>
917
+ <tr id="row_32">
918
+ <td class="failed" id="row_32_0">failing</td>
919
+ </tr>
920
+ <tr>
921
+ <td class="failed" colspan="1">
922
+ <pre>
923
+ FAIL (RuntimeError)
924
+ ./features/step_definitions/sample_steps.rb:2:in `flunker'
925
+ ./features/step_definitions/sample_steps.rb:16:in `/^failing without a table$/'
926
+ features/search_sample.feature:25:in `Given <state> without a table' </pre>
927
+ </td>
928
+ </tr>
929
+ </table>
930
+ </div>
931
+ </div>
932
+ <div class="feature">
933
+ <span class="tag">@lots</span>
934
+ <h2>Feature: Tons of cukes</h2>
935
+ <p>
936
+ </p>
937
+ <div class="scenario">
938
+ <h3>Scenario: Lots and lots</h3>
939
+ <ol>
940
+ <li class="step passed" id="features_tons_of_cukes_feature_4">
941
+ <div>
942
+ Given '<span class="passed_param">2</span>' cukes </div>
943
+ </li>
944
+ <li class="step failed" id="features_tons_of_cukes_feature_5">
945
+ <div>
946
+ Given '<span class="failed_param">2</span>' cukes </div>
947
+ <pre class="failed">We already have 2 cukes! (RuntimeError)
948
+ ./features/step_definitions/sample_steps.rb:28:in `/^'(.+)' cukes$/'
949
+ features/tons_of_cukes.feature:5:in `Given '2' cukes'</pre>
950
+ </li>
951
+ <li class="step skipped" id="features_tons_of_cukes_feature_6">
952
+ <div>
953
+ Given '<span class="skipped_param">2</span>' cukes </div>
954
+ </li>
955
+ <li class="step skipped" id="features_tons_of_cukes_feature_7">
956
+ <div>
957
+ Given '<span class="skipped_param">2</span>' cukes </div>
958
+ </li>
959
+ <li class="step skipped" id="features_tons_of_cukes_feature_8">
960
+ <div>
961
+ Given '<span class="skipped_param">2</span>' cukes </div>
962
+ </li>
963
+ <li class="step skipped" id="features_tons_of_cukes_feature_9">
964
+ <div>
965
+ Given '<span class="skipped_param">2</span>' cukes </div>
966
+ </li>
967
+ <li class="step skipped" id="features_tons_of_cukes_feature_10">
968
+ <div>
969
+ Given '<span class="skipped_param">2</span>' cukes </div>
970
+ </li>
971
+ <li class="step skipped" id="features_tons_of_cukes_feature_11">
972
+ <div>
973
+ Given '<span class="skipped_param">2</span>' cukes </div>
974
+ </li>
975
+ <li class="step skipped" id="features_tons_of_cukes_feature_12">
976
+ <div>
977
+ Given '<span class="skipped_param">2</span>' cukes </div>
978
+ </li>
979
+ <li class="step skipped" id="features_tons_of_cukes_feature_13">
980
+ <div>
981
+ Given '<span class="skipped_param">2</span>' cukes </div>
982
+ </li>
983
+ <li class="step skipped" id="features_tons_of_cukes_feature_14">
984
+ <div>
985
+ Given '<span class="skipped_param">2</span>' cukes </div>
986
+ </li>
987
+ <li class="step skipped" id="features_tons_of_cukes_feature_15">
988
+ <div>
989
+ Given '<span class="skipped_param">2</span>' cukes </div>
990
+ </li>
991
+ <li class="step skipped" id="features_tons_of_cukes_feature_16">
992
+ <div>
993
+ Given '<span class="skipped_param">2</span>' cukes </div>
994
+ </li>
995
+ <li class="step skipped" id="features_tons_of_cukes_feature_17">
996
+ <div>
997
+ Given '<span class="skipped_param">2</span>' cukes </div>
998
+ </li>
999
+ <li class="step skipped" id="features_tons_of_cukes_feature_18">
1000
+ <div>
1001
+ Given '<span class="skipped_param">2</span>' cukes </div>
1002
+ </li>
1003
+ <li class="step skipped" id="features_tons_of_cukes_feature_19">
1004
+ <div>
1005
+ Given '<span class="skipped_param">2</span>' cukes </div>
1006
+ </li>
1007
+ <li class="step skipped" id="features_tons_of_cukes_feature_20">
1008
+ <div>
1009
+ Given '<span class="skipped_param">2</span>' cukes </div>
1010
+ </li>
1011
+ <li class="step skipped" id="features_tons_of_cukes_feature_21">
1012
+ <div>
1013
+ Given '<span class="skipped_param">2</span>' cukes </div>
1014
+ </li>
1015
+ <li class="step skipped" id="features_tons_of_cukes_feature_22">
1016
+ <div>
1017
+ Given '<span class="skipped_param">2</span>' cukes </div>
1018
+ </li>
1019
+ <li class="step skipped" id="features_tons_of_cukes_feature_23">
1020
+ <div>
1021
+ Given '<span class="skipped_param">2</span>' cukes </div>
1022
+ </li>
1023
+ <li class="step skipped" id="features_tons_of_cukes_feature_24">
1024
+ <div>
1025
+ Given '<span class="skipped_param">2</span>' cukes </div>
1026
+ </li>
1027
+ <li class="step skipped" id="features_tons_of_cukes_feature_25">
1028
+ <div>
1029
+ Given '<span class="skipped_param">2</span>' cukes </div>
1030
+ </li>
1031
+ <li class="step skipped" id="features_tons_of_cukes_feature_26">
1032
+ <div>
1033
+ Given '<span class="skipped_param">2</span>' cukes </div>
1034
+ </li>
1035
+ <li class="step skipped" id="features_tons_of_cukes_feature_27">
1036
+ <div>
1037
+ Given '<span class="skipped_param">2</span>' cukes </div>
1038
+ </li>
1039
+ <li class="step skipped" id="features_tons_of_cukes_feature_28">
1040
+ <div>
1041
+ Given '<span class="skipped_param">2</span>' cukes </div>
1042
+ </li>
1043
+ <li class="step skipped" id="features_tons_of_cukes_feature_29">
1044
+ <div>
1045
+ Given '<span class="skipped_param">2</span>' cukes </div>
1046
+ </li>
1047
+ <li class="step skipped" id="features_tons_of_cukes_feature_30">
1048
+ <div>
1049
+ Given '<span class="skipped_param">2</span>' cukes </div>
1050
+ </li>
1051
+ <li class="step skipped" id="features_tons_of_cukes_feature_31">
1052
+ <div>
1053
+ Given '<span class="skipped_param">2</span>' cukes </div>
1054
+ </li>
1055
+ <li class="step skipped" id="features_tons_of_cukes_feature_32">
1056
+ <div>
1057
+ Given '<span class="skipped_param">2</span>' cukes </div>
1058
+ </li>
1059
+ <li class="step skipped" id="features_tons_of_cukes_feature_33">
1060
+ <div>
1061
+ Given '<span class="skipped_param">2</span>' cukes </div>
1062
+ </li>
1063
+ <li class="step skipped" id="features_tons_of_cukes_feature_34">
1064
+ <div>
1065
+ Given '<span class="skipped_param">2</span>' cukes </div>
1066
+ </li>
1067
+ <li class="step skipped" id="features_tons_of_cukes_feature_35">
1068
+ <div>
1069
+ Given '<span class="skipped_param">2</span>' cukes </div>
1070
+ </li>
1071
+ <li class="step skipped" id="features_tons_of_cukes_feature_36">
1072
+ <div>
1073
+ Given '<span class="skipped_param">2</span>' cukes </div>
1074
+ </li>
1075
+ <li class="step skipped" id="features_tons_of_cukes_feature_37">
1076
+ <div>
1077
+ Given '<span class="skipped_param">2</span>' cukes </div>
1078
+ </li>
1079
+ <li class="step skipped" id="features_tons_of_cukes_feature_38">
1080
+ <div>
1081
+ Given '<span class="skipped_param">2</span>' cukes </div>
1082
+ </li>
1083
+ <li class="step skipped" id="features_tons_of_cukes_feature_39">
1084
+ <div>
1085
+ Given '<span class="skipped_param">2</span>' cukes </div>
1086
+ </li>
1087
+ <li class="step skipped" id="features_tons_of_cukes_feature_40">
1088
+ <div>
1089
+ Given '<span class="skipped_param">2</span>' cukes </div>
1090
+ </li>
1091
+ <li class="step skipped" id="features_tons_of_cukes_feature_41">
1092
+ <div>
1093
+ Given '<span class="skipped_param">2</span>' cukes </div>
1094
+ </li>
1095
+ <li class="step skipped" id="features_tons_of_cukes_feature_42">
1096
+ <div>
1097
+ Given '<span class="skipped_param">2</span>' cukes </div>
1098
+ </li>
1099
+ <li class="step skipped" id="features_tons_of_cukes_feature_43">
1100
+ <div>
1101
+ Given '<span class="skipped_param">2</span>' cukes </div>
1102
+ </li>
1103
+ <li class="step skipped" id="features_tons_of_cukes_feature_44">
1104
+ <div>
1105
+ Given '<span class="skipped_param">2</span>' cukes </div>
1106
+ </li>
1107
+ <li class="step skipped" id="features_tons_of_cukes_feature_45">
1108
+ <div>
1109
+ Given '<span class="skipped_param">2</span>' cukes </div>
1110
+ </li>
1111
+ <li class="step skipped" id="features_tons_of_cukes_feature_46">
1112
+ <div>
1113
+ Given '<span class="skipped_param">2</span>' cukes </div>
1114
+ </li>
1115
+ <li class="step skipped" id="features_tons_of_cukes_feature_47">
1116
+ <div>
1117
+ Given '<span class="skipped_param">2</span>' cukes </div>
1118
+ </li>
1119
+ <li class="step skipped" id="features_tons_of_cukes_feature_48">
1120
+ <div>
1121
+ Given '<span class="skipped_param">2</span>' cukes </div>
1122
+ </li>
1123
+ <li class="step skipped" id="features_tons_of_cukes_feature_49">
1124
+ <div>
1125
+ Given '<span class="skipped_param">2</span>' cukes </div>
1126
+ </li>
1127
+ <li class="step skipped" id="features_tons_of_cukes_feature_50">
1128
+ <div>
1129
+ Given '<span class="skipped_param">2</span>' cukes </div>
1130
+ </li>
1131
+ <li class="step skipped" id="features_tons_of_cukes_feature_51">
1132
+ <div>
1133
+ Given '<span class="skipped_param">2</span>' cukes </div>
1134
+ </li>
1135
+ <li class="step skipped" id="features_tons_of_cukes_feature_52">
1136
+ <div>
1137
+ Given '<span class="skipped_param">2</span>' cukes </div>
1138
+ </li>
1139
+ </ol>
1140
+ </div>
1141
+ </div>
1142
+ <div class="feature">
1143
+ <h2>Feature: undefined multiline args</h2>
1144
+ <p>
1145
+ </p>
1146
+ <div class="scenario">
1147
+ <h3>Scenario: pystring</h3>
1148
+ <ol>
1149
+ <li class="step undefined" id="features_undefined_multiline_args_feature_4">
1150
+ <div>
1151
+ Given a pystring </div>
1152
+ <pre class="undefined">
1153
+ example </pre>
1154
+ <pre class="undefined">Undefined step: "a pystring" (Cucumber::Undefined)
1155
+ features/undefined_multiline_args.feature:4:in `Given a pystring'</pre>
1156
+ </li>
1157
+ </ol>
1158
+ </div>
1159
+ <div class="scenario">
1160
+ <h3>Scenario: table</h3>
1161
+ <ol>
1162
+ <li class="step undefined" id="features_undefined_multiline_args_feature_10">
1163
+ <div>
1164
+ Given a table </div>
1165
+ <table>
1166
+ <tr id="row_11">
1167
+ <td id="row_11_0">table</td>
1168
+ </tr>
1169
+ <tr id="row_12">
1170
+ <td id="row_12_0">example</td>
1171
+ </tr>
1172
+ </table>
1173
+ <pre class="undefined">Undefined step: "a table" (Cucumber::Undefined)
1174
+ features/undefined_multiline_args.feature:10:in `Given a table'</pre>
1175
+ </li>
1176
+ </ol>
1177
+ </div>
1178
+ </div>
1179
+ <div class="duration">0m30.005s</div>
1180
+ </div>
1181
+ </body>
1182
+ </html>