cucumber 0.4.2 → 0.4.3
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +30 -4
- data/Rakefile +11 -8
- data/VERSION.yml +1 -1
- data/bin/cucumber +1 -2
- data/cucumber.gemspec +40 -38
- data/examples/i18n/da/features/{summering.feature → sammenlaegning.feature} +5 -5
- data/examples/i18n/da/features/step_definitons/{kalkulator_steps.rb → lommeregner_steps.rb} +3 -3
- data/examples/i18n/da/lib/{kalkulator.rb → lommeregner.rb} +2 -2
- data/examples/tickets/Rakefile +5 -1
- data/examples/tickets/features.html +138 -0
- data/examples/watir/Rakefile +4 -0
- data/examples/watir/features/{step_definitons → step_definitions}/search_steps.rb +0 -0
- data/examples/watir/features/support/screenshots.rb +45 -0
- data/features/announce.feature +122 -0
- data/features/html_formatter/a.html +1 -1
- data/features/step_definitions/cucumber_steps.rb +1 -1
- data/features/step_definitions/wire_steps.rb +14 -0
- data/features/support/env.rb +1 -1
- data/features/support/fake_wire_server.rb +63 -0
- data/features/tag_logic.feature +226 -0
- data/features/wire_protocol.feature +177 -0
- data/lib/cucumber/ast/examples.rb +4 -0
- data/lib/cucumber/ast/feature_element.rb +2 -1
- data/lib/cucumber/ast/scenario_outline.rb +4 -0
- data/lib/cucumber/ast/table.rb +13 -8
- data/lib/cucumber/ast/tags.rb +56 -12
- data/lib/cucumber/ast/tree_walker.rb +6 -0
- data/lib/cucumber/cli/main.rb +7 -5
- data/lib/cucumber/cli/options.rb +19 -10
- data/lib/cucumber/filter.rb +1 -2
- data/lib/cucumber/formatter/ansicolor.rb +17 -2
- data/lib/cucumber/formatter/console.rb +50 -32
- data/lib/cucumber/formatter/html.rb +21 -1
- data/lib/cucumber/formatter/junit.rb +8 -0
- data/lib/cucumber/formatter/pretty.rb +3 -0
- data/lib/cucumber/formatter/summary.rb +35 -0
- data/lib/cucumber/formatter/usage.rb +4 -4
- data/lib/cucumber/rails/active_record.rb +18 -10
- data/lib/cucumber/rb_support/rb_language.rb +7 -2
- data/lib/cucumber/rb_support/rb_world.rb +4 -0
- data/lib/cucumber/step_match.rb +3 -2
- data/lib/cucumber/step_mother.rb +6 -1
- data/lib/cucumber/wire_support/connection.rb +42 -0
- data/lib/cucumber/wire_support/request_handler.rb +19 -0
- data/lib/cucumber/wire_support/wire_exception.rb +10 -0
- data/lib/cucumber/wire_support/wire_language.rb +52 -0
- data/lib/cucumber/wire_support/wire_packet.rb +34 -0
- data/lib/cucumber/wire_support/wire_protocol.rb +64 -0
- data/lib/cucumber/wire_support/wire_step_definition.rb +21 -0
- data/rails_generators/cucumber/cucumber_generator.rb +7 -4
- data/rails_generators/cucumber/templates/cucumber_environment.rb +4 -4
- data/rails_generators/cucumber/templates/version_check.rb +6 -4
- data/spec/cucumber/ast/table_spec.rb +11 -1
- data/spec/cucumber/ast/tags_spec.rb +29 -0
- data/spec/cucumber/cli/options_spec.rb +8 -4
- data/spec/cucumber/formatter/junit_spec.rb +11 -0
- data/spec/cucumber/step_match_spec.rb +11 -0
- data/spec/cucumber/wire_support/wire_language_spec.rb +47 -0
- data/spec/cucumber/wire_support/wire_packet_spec.rb +26 -0
- metadata +38 -36
- data/examples/cs/.gitignore +0 -1
- data/examples/cs/README.textile +0 -1
- data/examples/cs/Rakefile +0 -12
- data/examples/cs/compile.bat +0 -1
- data/examples/cs/features/addition.feature +0 -16
- data/examples/cs/features/step_definitons/calculator_steps.rb +0 -19
- data/examples/cs/src/demo/Calculator.cs +0 -20
- data/examples/java/.gitignore +0 -1
- data/examples/java/README.textile +0 -18
- data/examples/java/build.xml +0 -33
- data/examples/java/features/hello.feature +0 -11
- data/examples/java/features/step_definitons/hello_steps.rb +0 -23
- data/examples/java/features/step_definitons/tree_steps.rb +0 -14
- data/examples/java/features/tree.feature +0 -9
- data/examples/java/src/.gitignore +0 -1
- data/examples/java/src/cucumber/demo/.gitignore +0 -1
- data/examples/java/src/cucumber/demo/Hello.java +0 -16
- data/examples/pure_java/README.textile +0 -5
data/History.txt
CHANGED
@@ -1,3 +1,29 @@
|
|
1
|
+
== 0.4.3 2009-10-28
|
2
|
+
|
3
|
+
The exciting thing about this release is that the wire protocol is starting to take shape. This means you can
|
4
|
+
now use Cucumber with .NET - writing step definitions in C#. And this is without having to use IronRuby at all!
|
5
|
+
See Cuke4Nuke (http://wiki.github.com/richardlawrence/Cuke4Nuke) for more information.
|
6
|
+
|
7
|
+
As usual there are several small features and bug fixes.
|
8
|
+
|
9
|
+
=== New Features
|
10
|
+
* Add support for ORing tags which are passed in with seperate --tag arguments. Make comma seperated tags use AND (#368 Joseph Wilk)
|
11
|
+
* New Wire Protocol - allowing out of process execution of Cucumber scenarios. (#428 Matt Wynne)
|
12
|
+
* Added an example illustrating how to get screenshots in HTML reports (examples/watir) (Aslak Hellesøy)
|
13
|
+
* Added new #embed(file, mime_type) method to visitors and Ruby Worlds to make it easier to embed screenshots (Aslak Hellesøy)
|
14
|
+
* The #announce method available from Ruby Step Definitions will print *after* the step is executed. (#487 Zoltan Penzeli)
|
15
|
+
* Add support for rolling back transaction for all open database connections. (John Ferlito)
|
16
|
+
* Show scenario and step summary in HTML formatter (#285 Joseph Wilk)
|
17
|
+
* Ast::Table can now be constructed with an Array of Hash. (Aslak Hellesøy)
|
18
|
+
|
19
|
+
=== Bugfixes
|
20
|
+
* Fixed incorrect rendering of step arguments with UTF8 characters (Aslak Hellesøy)
|
21
|
+
* "--format rerun", with a Scenario Outline, kills cucumber (#492 Aslak Hellesøy)
|
22
|
+
* Usage formatter is not reporting time correctly. (Elliot Crosby-McCullough)
|
23
|
+
* JUnit formatter raises a more helpful error when run on a feature with no name. (#493 Matt Wynne)
|
24
|
+
* Better Danish translation (Thorbjørn Ravn Andersen)
|
25
|
+
|
26
|
+
|
1
27
|
== 0.4.2 2009-10-14
|
2
28
|
|
3
29
|
Bugfix release. The 0.4.1 release was hosed when switching from Hoe to Jeweler.
|
@@ -46,7 +72,7 @@ that will give you more information so you can solve any problems. If not, just
|
|
46
72
|
* Transform can now transform tables, using /table:col1,col2,col3/ (#478 Corey Haines)
|
47
73
|
* cucumber.yml can also end in .yaml and be located in .config/ or config/ dirs (#447 trans)
|
48
74
|
* Turkish support. (Hakan Şenol Ensari)
|
49
|
-
* Upgrade Rails generator to set a dependency to Spork 0.7.
|
75
|
+
* Upgrade Rails generator to set a dependency to Spork 0.7.3. (Aslak Hellesøy)
|
50
76
|
* Installation via rubygems will print a message telling people to read this file. (Aslak Hellesøy)
|
51
77
|
* Files generated by the Rails cucumber generator have information about the risks of editing. (Aslak Hellesøy)
|
52
78
|
* Rotten Cucumber alert on Rails if you upgrade your gem without regenerating with script/generate cucumber. (Aslak Hellesøy)
|
@@ -54,7 +80,7 @@ that will give you more information so you can solve any problems. If not, just
|
|
54
80
|
* Make script/cucumber file generated by the Rails cucumber generator look for cucumber in vendored gems as well. (Tom ten Thij)
|
55
81
|
|
56
82
|
=== Changed Features
|
57
|
-
* Step tables now default empty table cells to empty strings and not nil (#470 Joseph Wilk)
|
83
|
+
* Step tables now default empty table cells to empty strings and not nil (#470 Joseph Wilk)
|
58
84
|
|
59
85
|
=== Removed Features
|
60
86
|
* The feature_list, feature_pattern, step_list and step_pattern properties are removed from the Rake task. Use profiles instead. (Aslak Hellesøy)
|
@@ -74,7 +100,7 @@ that will give you more information so you can solve any problems. If not, just
|
|
74
100
|
* Language help broken (#467 Matt Wynne)
|
75
101
|
* Language help formatter aligns output better on Ruby 1.8.6 (Aslak Hellesøy)
|
76
102
|
* Better backtraces for Ruby 1.8.7. (Jakob Skov-Pedersen)
|
77
|
-
* String step definitions ( Given 'I have $number cucumbers' ) are escaped before being turned into regular expressions. (David Waite)
|
103
|
+
* String step definitions ( Given 'I have $number cucumbers' ) are escaped before being turned into regular expressions. (David Waite)
|
78
104
|
|
79
105
|
== 0.3.104 2009-09-27
|
80
106
|
|
@@ -122,7 +148,7 @@ Using this release on a Rails project requires a rerun of script/generate cucumb
|
|
122
148
|
== 0.3.102 2009-09-22
|
123
149
|
|
124
150
|
This release has some changes in the Rails support, so make sure you run "script/generate cucumber" after you upgrade.
|
125
|
-
Other noteworthy new features are improved Hook, tags and Transform support, and as always - several
|
151
|
+
Other noteworthy new features are improved Hook, tags and Transform support, and as always - several smaller bug fixes.
|
126
152
|
|
127
153
|
=== New Features
|
128
154
|
* Added new internal API for Regexp and groups, allowing other programming languages to leverage native regexps. (Aslak Hellesøy)
|
data/Rakefile
CHANGED
@@ -1,7 +1,9 @@
|
|
1
|
+
# encoding: utf-8
|
1
2
|
require 'rubygems'
|
3
|
+
require 'term/ansicolor'
|
2
4
|
require 'rake'
|
3
5
|
$:.unshift(File.dirname(__FILE__) + '/lib')
|
4
|
-
require 'cucumber/
|
6
|
+
require 'cucumber/formatter/ansicolor'
|
5
7
|
|
6
8
|
begin
|
7
9
|
require 'jeweler'
|
@@ -12,7 +14,7 @@ begin
|
|
12
14
|
gem.email = "cukes@googlegroups.com"
|
13
15
|
gem.homepage = "http://cukes.info"
|
14
16
|
gem.authors = ["Aslak Hellesøy"]
|
15
|
-
gem.rubyforge_project = "
|
17
|
+
gem.rubyforge_project = "rspec"
|
16
18
|
|
17
19
|
gem.add_dependency 'term-ansicolor', '1.0.4'
|
18
20
|
gem.add_dependency 'treetop', '1.4.2'
|
@@ -23,19 +25,20 @@ begin
|
|
23
25
|
gem.add_development_dependency 'nokogiri', '1.3.3'
|
24
26
|
gem.add_development_dependency 'prawn', '0.5.1'
|
25
27
|
gem.add_development_dependency 'rspec', '1.2.9'
|
26
|
-
gem.add_development_dependency 'spork', '0.7.
|
28
|
+
gem.add_development_dependency 'spork', '0.7.3'
|
27
29
|
|
30
|
+
extend Cucumber::Formatter::ANSIColor
|
28
31
|
gem.post_install_message = <<-POST_INSTALL_MESSAGE
|
29
32
|
|
30
|
-
(
|
33
|
+
#{cukes(15)}
|
31
34
|
|
32
|
-
(
|
35
|
+
#{cukes(1)} U P G R A D I N G #{cukes(1)}
|
33
36
|
|
34
|
-
Thank you for installing cucumber-#{Cucumber::VERSION}
|
37
|
+
Thank you for installing cucumber-#{Cucumber::VERSION}.
|
35
38
|
Please be sure to read http://wiki.github.com/aslakhellesoy/cucumber/upgrading
|
36
|
-
for important information about this release.
|
39
|
+
for important information about this release. Happy cuking!
|
37
40
|
|
38
|
-
(
|
41
|
+
#{cukes(15)}
|
39
42
|
|
40
43
|
POST_INSTALL_MESSAGE
|
41
44
|
end
|
data/VERSION.yml
CHANGED
data/bin/cucumber
CHANGED
@@ -1,6 +1,5 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
|
3
|
-
$:.unshift(File.dirname(__FILE__ + '.rb') + '/../lib') unless $:.include?(File.dirname(__FILE__ + '.rb') + '/../lib')
|
2
|
+
$:.unshift(File.dirname(__FILE__) + '/../lib') unless $:.include?(File.dirname(__FILE__) + '/../lib')
|
4
3
|
|
5
4
|
require 'cucumber/rspec_neuter'
|
6
5
|
require 'cucumber/cli/main'
|
data/cucumber.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{cucumber}
|
8
|
-
s.version = "0.4.
|
8
|
+
s.version = "0.4.3"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Aslak Helles\303\270y"]
|
12
|
-
s.date = %q{2009-10-
|
12
|
+
s.date = %q{2009-10-28}
|
13
13
|
s.default_executable = %q{cucumber}
|
14
14
|
s.description = %q{A BDD tool written in Ruby}
|
15
15
|
s.email = %q{cukes@googlegroups.com}
|
@@ -30,13 +30,6 @@ Gem::Specification.new do |s|
|
|
30
30
|
"bin/cucumber",
|
31
31
|
"cucumber.gemspec",
|
32
32
|
"cucumber.yml",
|
33
|
-
"examples/cs/.gitignore",
|
34
|
-
"examples/cs/README.textile",
|
35
|
-
"examples/cs/Rakefile",
|
36
|
-
"examples/cs/compile.bat",
|
37
|
-
"examples/cs/features/addition.feature",
|
38
|
-
"examples/cs/features/step_definitons/calculator_steps.rb",
|
39
|
-
"examples/cs/src/demo/Calculator.cs",
|
40
33
|
"examples/dos_line_endings/Rakefile",
|
41
34
|
"examples/dos_line_endings/features/dos_line_endings.feature",
|
42
35
|
"examples/i18n/README.textile",
|
@@ -58,9 +51,9 @@ Gem::Specification.new do |s|
|
|
58
51
|
"examples/i18n/cat/features/suma.feature",
|
59
52
|
"examples/i18n/cat/lib/calculadora.rb",
|
60
53
|
"examples/i18n/da/Rakefile",
|
61
|
-
"examples/i18n/da/features/
|
62
|
-
"examples/i18n/da/features/
|
63
|
-
"examples/i18n/da/lib/
|
54
|
+
"examples/i18n/da/features/sammenlaegning.feature",
|
55
|
+
"examples/i18n/da/features/step_definitons/lommeregner_steps.rb",
|
56
|
+
"examples/i18n/da/lib/lommeregner.rb",
|
64
57
|
"examples/i18n/de/.gitignore",
|
65
58
|
"examples/i18n/de/Rakefile",
|
66
59
|
"examples/i18n/de/features/addition.feature",
|
@@ -213,20 +206,9 @@ Gem::Specification.new do |s|
|
|
213
206
|
"examples/i18n/zh-TW/features/division.feature",
|
214
207
|
"examples/i18n/zh-TW/features/step_definitons/calculator_steps.rb",
|
215
208
|
"examples/i18n/zh-TW/lib/calculator.rb",
|
216
|
-
"examples/java/.gitignore",
|
217
|
-
"examples/java/README.textile",
|
218
|
-
"examples/java/build.xml",
|
219
|
-
"examples/java/features/hello.feature",
|
220
|
-
"examples/java/features/step_definitons/hello_steps.rb",
|
221
|
-
"examples/java/features/step_definitons/tree_steps.rb",
|
222
|
-
"examples/java/features/tree.feature",
|
223
|
-
"examples/java/src/.gitignore",
|
224
|
-
"examples/java/src/cucumber/demo/.gitignore",
|
225
|
-
"examples/java/src/cucumber/demo/Hello.java",
|
226
209
|
"examples/junit/features/one_passing_one_failing.feature",
|
227
210
|
"examples/junit/features/pending.feature",
|
228
211
|
"examples/junit/features/step_definitions/steps.rb",
|
229
|
-
"examples/pure_java/README.textile",
|
230
212
|
"examples/python/features/fibonacci.feature",
|
231
213
|
"examples/python/features/step_definitions/fib_steps.py",
|
232
214
|
"examples/python/lib/.gitignore",
|
@@ -292,6 +274,7 @@ Gem::Specification.new do |s|
|
|
292
274
|
"examples/test_unit/features/step_definitions/test_unit_steps.rb",
|
293
275
|
"examples/test_unit/features/test_unit.feature",
|
294
276
|
"examples/tickets/Rakefile",
|
277
|
+
"examples/tickets/features.html",
|
295
278
|
"examples/tickets/features/172.feature",
|
296
279
|
"examples/tickets/features/177/1.feature",
|
297
280
|
"examples/tickets/features/177/2.feature",
|
@@ -325,11 +308,13 @@ Gem::Specification.new do |s|
|
|
325
308
|
"examples/watir/README.textile",
|
326
309
|
"examples/watir/Rakefile",
|
327
310
|
"examples/watir/features/search.feature",
|
328
|
-
"examples/watir/features/
|
311
|
+
"examples/watir/features/step_definitions/search_steps.rb",
|
329
312
|
"examples/watir/features/support/env.rb",
|
313
|
+
"examples/watir/features/support/screenshots.rb",
|
330
314
|
"examples/webrat/features/search.feature",
|
331
315
|
"examples/webrat/features/step_definitions/kvasir_steps.rb",
|
332
316
|
"examples/webrat/features/support/env.rb",
|
317
|
+
"features/announce.feature",
|
333
318
|
"features/background.feature",
|
334
319
|
"features/bug_371.feature",
|
335
320
|
"features/bug_464.feature",
|
@@ -362,13 +347,17 @@ Gem::Specification.new do |s|
|
|
362
347
|
"features/step_definitions/cucumber_steps.rb",
|
363
348
|
"features/step_definitions/extra_steps.rb",
|
364
349
|
"features/step_definitions/simplest_steps.rb",
|
350
|
+
"features/step_definitions/wire_steps.rb",
|
365
351
|
"features/support/env.rb",
|
366
352
|
"features/support/env.rb.simplest",
|
353
|
+
"features/support/fake_wire_server.rb",
|
367
354
|
"features/table_diffing.feature",
|
368
355
|
"features/table_mapping.feature",
|
356
|
+
"features/tag_logic.feature",
|
369
357
|
"features/transform.feature",
|
370
358
|
"features/unicode_table.feature",
|
371
359
|
"features/usage_and_stepdefs_formatter.feature",
|
360
|
+
"features/wire_protocol.feature",
|
372
361
|
"features/work_in_progress.feature",
|
373
362
|
"gem_tasks/contributors.rake",
|
374
363
|
"gem_tasks/environment.rake",
|
@@ -433,6 +422,7 @@ Gem::Specification.new do |s|
|
|
433
422
|
"lib/cucumber/formatter/rerun.rb",
|
434
423
|
"lib/cucumber/formatter/stepdefs.rb",
|
435
424
|
"lib/cucumber/formatter/steps.rb",
|
425
|
+
"lib/cucumber/formatter/summary.rb",
|
436
426
|
"lib/cucumber/formatter/tag_cloud.rb",
|
437
427
|
"lib/cucumber/formatter/unicode.rb",
|
438
428
|
"lib/cucumber/formatter/usage.rb",
|
@@ -471,6 +461,13 @@ Gem::Specification.new do |s|
|
|
471
461
|
"lib/cucumber/step_mother.rb",
|
472
462
|
"lib/cucumber/webrat/element_locator.rb",
|
473
463
|
"lib/cucumber/webrat/table_locator.rb",
|
464
|
+
"lib/cucumber/wire_support/connection.rb",
|
465
|
+
"lib/cucumber/wire_support/request_handler.rb",
|
466
|
+
"lib/cucumber/wire_support/wire_exception.rb",
|
467
|
+
"lib/cucumber/wire_support/wire_language.rb",
|
468
|
+
"lib/cucumber/wire_support/wire_packet.rb",
|
469
|
+
"lib/cucumber/wire_support/wire_protocol.rb",
|
470
|
+
"lib/cucumber/wire_support/wire_step_definition.rb",
|
474
471
|
"rails_generators/cucumber/USAGE",
|
475
472
|
"rails_generators/cucumber/cucumber_generator.rb",
|
476
473
|
"rails_generators/cucumber/templates/cucumber",
|
@@ -496,6 +493,7 @@ Gem::Specification.new do |s|
|
|
496
493
|
"spec/cucumber/ast/step_collection_spec.rb",
|
497
494
|
"spec/cucumber/ast/step_spec.rb",
|
498
495
|
"spec/cucumber/ast/table_spec.rb",
|
496
|
+
"spec/cucumber/ast/tags_spec.rb",
|
499
497
|
"spec/cucumber/ast/tree_walker_spec.rb",
|
500
498
|
"spec/cucumber/broadcaster_spec.rb",
|
501
499
|
"spec/cucumber/cli/configuration_spec.rb",
|
@@ -532,26 +530,28 @@ Gem::Specification.new do |s|
|
|
532
530
|
"spec/cucumber/treetop_parser/test_dos.feature",
|
533
531
|
"spec/cucumber/treetop_parser/with_comments.feature",
|
534
532
|
"spec/cucumber/treetop_parser/with_tags.feature",
|
533
|
+
"spec/cucumber/wire_support/wire_language_spec.rb",
|
534
|
+
"spec/cucumber/wire_support/wire_packet_spec.rb",
|
535
535
|
"spec/cucumber/world/pending_spec.rb",
|
536
536
|
"spec/spec.opts",
|
537
537
|
"spec/spec_helper.rb"
|
538
538
|
]
|
539
539
|
s.homepage = %q{http://cukes.info}
|
540
540
|
s.post_install_message = %q{
|
541
|
-
(::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::)
|
541
|
+
(::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::)
|
542
542
|
|
543
543
|
(::) U P G R A D I N G (::)
|
544
544
|
|
545
|
-
Thank you for installing cucumber-0.4.
|
545
|
+
Thank you for installing cucumber-0.4.3.
|
546
546
|
Please be sure to read http://wiki.github.com/aslakhellesoy/cucumber/upgrading
|
547
|
-
for important information about this release.
|
547
|
+
for important information about this release. Happy cuking!
|
548
548
|
|
549
|
-
(::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::)
|
549
|
+
(::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::) (::)
|
550
550
|
|
551
551
|
}
|
552
552
|
s.rdoc_options = ["--charset=UTF-8"]
|
553
553
|
s.require_paths = ["lib"]
|
554
|
-
s.rubyforge_project = %q{
|
554
|
+
s.rubyforge_project = %q{rspec}
|
555
555
|
s.rubygems_version = %q{1.3.5}
|
556
556
|
s.summary = %q{Behaviour Driven Development with elegance and joy}
|
557
557
|
s.test_files = [
|
@@ -566,6 +566,7 @@ for important information about this release.
|
|
566
566
|
"spec/cucumber/ast/step_collection_spec.rb",
|
567
567
|
"spec/cucumber/ast/step_spec.rb",
|
568
568
|
"spec/cucumber/ast/table_spec.rb",
|
569
|
+
"spec/cucumber/ast/tags_spec.rb",
|
569
570
|
"spec/cucumber/ast/tree_walker_spec.rb",
|
570
571
|
"spec/cucumber/broadcaster_spec.rb",
|
571
572
|
"spec/cucumber/cli/configuration_spec.rb",
|
@@ -588,9 +589,10 @@ for important information about this release.
|
|
588
589
|
"spec/cucumber/rb_support/regexp_argument_matcher_spec.rb",
|
589
590
|
"spec/cucumber/step_match_spec.rb",
|
590
591
|
"spec/cucumber/step_mother_spec.rb",
|
592
|
+
"spec/cucumber/wire_support/wire_language_spec.rb",
|
593
|
+
"spec/cucumber/wire_support/wire_packet_spec.rb",
|
591
594
|
"spec/cucumber/world/pending_spec.rb",
|
592
595
|
"spec/spec_helper.rb",
|
593
|
-
"examples/cs/features/step_definitons/calculator_steps.rb",
|
594
596
|
"examples/i18n/ar/features/step_definitons/calculator_steps.rb",
|
595
597
|
"examples/i18n/ar/lib/calculator.rb",
|
596
598
|
"examples/i18n/bg/features/step_definitons/calculator_steps.rb",
|
@@ -599,8 +601,8 @@ for important information about this release.
|
|
599
601
|
"examples/i18n/bg/lib/calculator.rb",
|
600
602
|
"examples/i18n/cat/features/step_definitons/calculator_steps.rb",
|
601
603
|
"examples/i18n/cat/lib/calculadora.rb",
|
602
|
-
"examples/i18n/da/features/step_definitons/
|
603
|
-
"examples/i18n/da/lib/
|
604
|
+
"examples/i18n/da/features/step_definitons/lommeregner_steps.rb",
|
605
|
+
"examples/i18n/da/lib/lommeregner.rb",
|
604
606
|
"examples/i18n/de/features/step_definitons/calculator_steps.rb",
|
605
607
|
"examples/i18n/de/lib/calculator.rb",
|
606
608
|
"examples/i18n/en/features/step_definitons/calculator_steps.rb",
|
@@ -666,8 +668,6 @@ for important information about this release.
|
|
666
668
|
"examples/i18n/zh-CN/lib/calculator.rb",
|
667
669
|
"examples/i18n/zh-TW/features/step_definitons/calculator_steps.rb",
|
668
670
|
"examples/i18n/zh-TW/lib/calculator.rb",
|
669
|
-
"examples/java/features/step_definitons/hello_steps.rb",
|
670
|
-
"examples/java/features/step_definitons/tree_steps.rb",
|
671
671
|
"examples/junit/features/step_definitions/steps.rb",
|
672
672
|
"examples/ramaze/app.rb",
|
673
673
|
"examples/ramaze/features/step_definitions/add_steps.rb",
|
@@ -680,6 +680,7 @@ for important information about this release.
|
|
680
680
|
"examples/selenium_webrat/features/support/env.rb",
|
681
681
|
"examples/self_test/features/step_definitions/sample_steps.rb",
|
682
682
|
"examples/self_test/features/support/env.rb",
|
683
|
+
"examples/self_test/tmp/features/step_definitions/steps.rb",
|
683
684
|
"examples/sinatra/app.rb",
|
684
685
|
"examples/sinatra/features/step_definitions/add_steps.rb",
|
685
686
|
"examples/sinatra/features/support/env.rb",
|
@@ -697,8 +698,9 @@ for important information about this release.
|
|
697
698
|
"examples/tickets/features/step_definitons/248_steps.rb",
|
698
699
|
"examples/tickets/features/step_definitons/scenario_outline_steps.rb",
|
699
700
|
"examples/tickets/features/step_definitons/tickets_steps.rb",
|
700
|
-
"examples/watir/features/
|
701
|
+
"examples/watir/features/step_definitions/search_steps.rb",
|
701
702
|
"examples/watir/features/support/env.rb",
|
703
|
+
"examples/watir/features/support/screenshots.rb",
|
702
704
|
"examples/webrat/features/step_definitions/kvasir_steps.rb",
|
703
705
|
"examples/webrat/features/support/env.rb"
|
704
706
|
]
|
@@ -716,7 +718,7 @@ for important information about this release.
|
|
716
718
|
s.add_development_dependency(%q<nokogiri>, ["= 1.3.3"])
|
717
719
|
s.add_development_dependency(%q<prawn>, ["= 0.5.1"])
|
718
720
|
s.add_development_dependency(%q<rspec>, ["= 1.2.9"])
|
719
|
-
s.add_development_dependency(%q<spork>, ["= 0.7.
|
721
|
+
s.add_development_dependency(%q<spork>, ["= 0.7.3"])
|
720
722
|
else
|
721
723
|
s.add_dependency(%q<term-ansicolor>, ["= 1.0.4"])
|
722
724
|
s.add_dependency(%q<treetop>, ["= 1.4.2"])
|
@@ -726,7 +728,7 @@ for important information about this release.
|
|
726
728
|
s.add_dependency(%q<nokogiri>, ["= 1.3.3"])
|
727
729
|
s.add_dependency(%q<prawn>, ["= 0.5.1"])
|
728
730
|
s.add_dependency(%q<rspec>, ["= 1.2.9"])
|
729
|
-
s.add_dependency(%q<spork>, ["= 0.7.
|
731
|
+
s.add_dependency(%q<spork>, ["= 0.7.3"])
|
730
732
|
end
|
731
733
|
else
|
732
734
|
s.add_dependency(%q<term-ansicolor>, ["= 1.0.4"])
|
@@ -737,6 +739,6 @@ for important information about this release.
|
|
737
739
|
s.add_dependency(%q<nokogiri>, ["= 1.3.3"])
|
738
740
|
s.add_dependency(%q<prawn>, ["= 0.5.1"])
|
739
741
|
s.add_dependency(%q<rspec>, ["= 1.2.9"])
|
740
|
-
s.add_dependency(%q<spork>, ["= 0.7.
|
742
|
+
s.add_dependency(%q<spork>, ["= 0.7.3"])
|
741
743
|
end
|
742
744
|
end
|
@@ -1,18 +1,18 @@
|
|
1
1
|
# language: da
|
2
|
-
Egenskab:
|
2
|
+
Egenskab: Sammenlægning
|
3
3
|
For at slippe for at lave dumme fejl
|
4
|
-
Som
|
4
|
+
Som bogholder
|
5
5
|
Vil jeg kunne lægge sammen
|
6
6
|
|
7
7
|
Scenarie: to tal
|
8
8
|
Givet at jeg har indtastet 5
|
9
9
|
Og at jeg har indtastet 7
|
10
|
-
Når jeg
|
10
|
+
Når jeg lægger sammen
|
11
11
|
Så skal resultatet være 12
|
12
12
|
|
13
13
|
Scenarie: tre tal
|
14
14
|
Givet at jeg har indtastet 5
|
15
15
|
Og at jeg har indtastet 7
|
16
16
|
Og at jeg har indtastet 1
|
17
|
-
Når jeg
|
18
|
-
Så skal resultatet være 13
|
17
|
+
Når jeg lægger sammen
|
18
|
+
Så skal resultatet være 13
|
@@ -2,10 +2,10 @@
|
|
2
2
|
require 'spec/expectations'
|
3
3
|
$:.unshift(File.dirname(__FILE__) + '/../../lib') # This line is not needed in your own project
|
4
4
|
require 'cucumber/formatter/unicode'
|
5
|
-
require '
|
5
|
+
require 'lommeregner'
|
6
6
|
|
7
7
|
Before do
|
8
|
-
@calc =
|
8
|
+
@calc = Lommeregner.new
|
9
9
|
end
|
10
10
|
|
11
11
|
After do
|
@@ -15,7 +15,7 @@ Given /at jeg har indtastet (\d+)/ do |n|
|
|
15
15
|
@calc.push n.to_i
|
16
16
|
end
|
17
17
|
|
18
|
-
When 'jeg
|
18
|
+
When 'jeg lægger sammen' do
|
19
19
|
@result = @calc.add
|
20
20
|
end
|
21
21
|
|
data/examples/tickets/Rakefile
CHANGED
@@ -13,4 +13,8 @@ Cucumber::Rake::Task.new(:progress) do |t|
|
|
13
13
|
t.cucumber_opts = %w{--tags ~@intentional_failure --format progress -i -s}
|
14
14
|
end
|
15
15
|
|
16
|
-
|
16
|
+
Cucumber::Rake::Task.new(:rerun) do |t|
|
17
|
+
t.cucumber_opts = %w{--tags ~@intentional_failure --format rerun -i -s}
|
18
|
+
end
|
19
|
+
|
20
|
+
task :default => [:pretty, :html, :progress, :rerun]
|
@@ -0,0 +1,138 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta content="text/html;charset=utf-8"/><title>Cucumber</title><style type="text/css">
|
2
|
+
|
3
|
+
.cucumber {
|
4
|
+
font-family: "Lucida Grande", Helvetica, sans-serif;
|
5
|
+
font-size: 0.7em;
|
6
|
+
background: white;
|
7
|
+
padding: 1em;
|
8
|
+
}
|
9
|
+
.cucumber h1, .cucumber h2, .cucumber h3, .cucumber h4, .cucumber ol, .cucumber li, .cucumber pre, .cucumber p {
|
10
|
+
font-size: 1em;
|
11
|
+
padding: 0px;
|
12
|
+
margin: 0px;
|
13
|
+
}
|
14
|
+
.cucumber div.feature {
|
15
|
+
border: 1px solid;
|
16
|
+
padding: 2px;
|
17
|
+
margin: 4px;
|
18
|
+
}
|
19
|
+
.cucumber div.feature div.background, .cucumber div.feature div.scenario, .cucumber div.feature p {
|
20
|
+
padding: 0em 0em 0em 1em;
|
21
|
+
}
|
22
|
+
.cucumber div.feature div.background div.examples, .cucumber div.feature div.scenario div.examples, .cucumber div.feature p div.examples {
|
23
|
+
padding: 0em 0em 0em 1em;
|
24
|
+
}
|
25
|
+
.cucumber .stats {
|
26
|
+
margin: 2em;
|
27
|
+
}
|
28
|
+
.cucumber .summary ul.features li {
|
29
|
+
display: inline;
|
30
|
+
}
|
31
|
+
.cucumber .backtrace {
|
32
|
+
margin-top: 0;
|
33
|
+
margin-bottom: 0;
|
34
|
+
margin-left: 1em;
|
35
|
+
}
|
36
|
+
.cucumber a {
|
37
|
+
text-decoration: none;
|
38
|
+
color: inherit;
|
39
|
+
}
|
40
|
+
.cucumber a:hover {
|
41
|
+
text-decoration: underline;
|
42
|
+
}
|
43
|
+
.cucumber a:visited {
|
44
|
+
font-weight: normal;
|
45
|
+
}
|
46
|
+
.cucumber a div.examples {
|
47
|
+
border: 1px solid;
|
48
|
+
padding: 2px;
|
49
|
+
margin: 4px;
|
50
|
+
}
|
51
|
+
.cucumber table {
|
52
|
+
border-collapse: collapse;
|
53
|
+
}
|
54
|
+
.cucumber table td, .cucumber table th {
|
55
|
+
font-size: 0.7em;
|
56
|
+
border: 1px solid #AAAAAA;
|
57
|
+
}
|
58
|
+
.cucumber table td.failed {
|
59
|
+
background: #FFC0CB;
|
60
|
+
color: #8B0000;
|
61
|
+
}
|
62
|
+
.cucumber table td.passed {
|
63
|
+
background: #98FB98;
|
64
|
+
color: #001111;
|
65
|
+
}
|
66
|
+
.cucumber table td.skipped {
|
67
|
+
background: #e0ffff;
|
68
|
+
color: #001111;
|
69
|
+
}
|
70
|
+
.cucumber table td.pending {
|
71
|
+
background: #FFFFE0;
|
72
|
+
color: #111100;
|
73
|
+
}
|
74
|
+
.cucumber table td.undefined {
|
75
|
+
background: #FFFFE0;
|
76
|
+
color: #111100;
|
77
|
+
}
|
78
|
+
.cucumber ol {
|
79
|
+
list-style: none;
|
80
|
+
}
|
81
|
+
.cucumber ol li {
|
82
|
+
margin: 0em 0em 0em 1em;
|
83
|
+
padding: 0em 0em 0em 0.2em;
|
84
|
+
}
|
85
|
+
.cucumber ol li span.param {
|
86
|
+
font-weight: bold;
|
87
|
+
}
|
88
|
+
.cucumber ol li.failed {
|
89
|
+
border-left: 5px solid #ff0000;
|
90
|
+
border-bottom: 1px solid #ff0000;
|
91
|
+
background: #ffc0cb;
|
92
|
+
color: #8b0000;
|
93
|
+
}
|
94
|
+
.cucumber ol li.failed span.param {
|
95
|
+
background: !failed_dark;
|
96
|
+
}
|
97
|
+
.cucumber ol li.passed {
|
98
|
+
border-left: 5px solid #00ff00;
|
99
|
+
border-bottom: 1px solid #00ff00;
|
100
|
+
background: #98fb98;
|
101
|
+
color: #001111;
|
102
|
+
}
|
103
|
+
.cucumber ol li.passed span.param {
|
104
|
+
background: #00ff00;
|
105
|
+
}
|
106
|
+
.cucumber ol li.skipped {
|
107
|
+
border-left: 5px solid #00ffff;
|
108
|
+
border-bottom: 1px solid #00ffff;
|
109
|
+
background: #e0ffff;
|
110
|
+
color: #001111;
|
111
|
+
}
|
112
|
+
.cucumber ol li.skipped span.param {
|
113
|
+
background: #00ffff;
|
114
|
+
}
|
115
|
+
.cucumber ol li.pending {
|
116
|
+
border-left: 5px solid #ff8000;
|
117
|
+
border-bottom: 1px solid #ff8000;
|
118
|
+
background: #ffff00;
|
119
|
+
color: #2a1b0a;
|
120
|
+
}
|
121
|
+
.cucumber ol li.pending span.param {
|
122
|
+
background: #ff8000;
|
123
|
+
}
|
124
|
+
.cucumber ol li.undefined {
|
125
|
+
border-left: 5px solid #ff8000;
|
126
|
+
border-bottom: 1px solid #ff8000;
|
127
|
+
background: #ffff00;
|
128
|
+
color: #2a1b0a;
|
129
|
+
}
|
130
|
+
.cucumber ol li.undefined span.param {
|
131
|
+
background: #ff8000;
|
132
|
+
}
|
133
|
+
</style></head><body><div class="cucumber"><div class="feature"><h2><span class="val">Feature: Login</span></h2><p class="narrative">To ensure the safety of the application<br/>A regular user of the system<br/>Must authenticate before using the app<br/></p><div class="scenario outline"><h3><span class="keyword">Scenario Outline:</span> <span class="val">Failed Login</span></h3><ol><li class="step skipped" id="features_172_feature_8"><div><span class="keyword">Given</span> <span class="step val">the user "known_user"</span></div></li><li class="step skipped" id="features_172_feature_10"><div><span class="keyword">When</span> <span class="step val">I go to the main page</span></div></li><li class="step skipped" id="features_172_feature_11"><div><span class="keyword">Then</span> <span class="step val">I should see the login form</span></div></li><li class="step skipped" id="features_172_feature_13"><div><span class="keyword">When</span> <span class="step val">I fill in "login" with "<login>"</span></div></li><li class="step skipped" id="features_172_feature_14"><div><span class="keyword">And</span> <span class="step val">I fill in "password" with "<password>"</span></div></li><li class="step skipped" id="features_172_feature_15"><div><span class="keyword">And</span> <span class="step val">I press "Log In"</span></div></li><li class="step skipped" id="features_172_feature_16"><div><span class="keyword">Then</span> <span class="step val">the login request should fail</span></div></li><li class="step skipped" id="features_172_feature_17"><div><span class="keyword">And</span> <span class="step val">I should see the error message "Login or Password incorrect"</span></div></li></ol><div class="examples"><h4><span class="keyword">Examples:</span> <span class="val"></span></h4><table><tr id="row_20"><th class="val skipped_param" id="row_20_0">login</th><th class="val skipped_param" id="row_20_1">password</th></tr><tr id="row_21"><td class="val undefined" id="row_21_0"></td><td class="val undefined" id="row_21_1"></td></tr><tr id="row_22"><td class="val undefined" id="row_22_0">unknown_user</td><td class="val undefined" id="row_22_1"></td></tr><tr id="row_23"><td class="val undefined" id="row_23_0">known_user</td><td class="val undefined" id="row_23_1"></td></tr><tr id="row_24"><td class="val undefined" id="row_24_0"></td><td class="val undefined" id="row_24_1">wrong_password</td></tr><tr id="row_25"><td class="val undefined" id="row_25_0"></td><td class="val undefined" id="row_25_1">known_userpass</td></tr><tr id="row_26"><td class="val undefined" id="row_26_0">unknown_user</td><td class="val undefined" id="row_26_1">wrong_password</td></tr><tr id="row_27"><td class="val undefined" id="row_27_0">unknown_user</td><td class="val undefined" id="row_27_1">known_userpass</td></tr><tr id="row_28"><td class="val undefined" id="row_28_0">known_user</td><td class="val undefined" id="row_28_1">wrong_password</td></tr></table></div></div></div><div class="feature"><h2><span class="val">Users want to know that nobody can masquerade as them. We want to extend trust</span></h2><p class="narrative">only to visitors who present the appropriate credentials. Everyone wants this<br/>identity verification to be as secure and convenient as possible.<br/><br/>Feature: Logging in<br/>As an anonymous user with an account<br/>I want to log in to my account<br/>So that I can be myself<br/></p><div class="scenario"><pre class="comment">#<br/># Log in: get form<br/>#<br/></pre><h3><span class="keyword">Scenario:</span> <span class="val">Anonymous user can get a login form.</span></h3><ol><li class="step undefined" id="features_177_1_feature_14"><div><span class="keyword">Given</span> <span class="step val">I am logged out</span></div></li><li class="step undefined" id="features_177_1_feature_15"><div><span class="keyword">When</span> <span class="step val">I go to "/login"</span></div></li><li class="step undefined" id="features_177_1_feature_16"><div><span class="keyword">Then</span> <span class="step val">I should be at the "sessions/new" page</span></div></li></ol></div><div class="scenario"><pre class="comment">#<br/># Log in successfully, but don't remember me<br/>#<br/></pre><h3><span class="keyword">Scenario:</span> <span class="val">Anonymous user can log in</span></h3><ol><li class="step undefined" id="features_177_1_feature_22"><div><span class="keyword">Given</span> <span class="step val">an "activated" user named "reggie" exists</span></div></li><li class="step undefined" id="features_177_1_feature_23"><div><span class="keyword">And</span> <span class="step val">I am logged out</span></div></li><li class="step undefined" id="features_177_1_feature_24"><div><span class="keyword">When</span> <span class="step val">I go to "/login"</span></div></li><li class="step undefined" id="features_177_1_feature_25"><div><span class="keyword">And</span> <span class="step val">I fill in "Login" with "reggie"</span></div></li><li class="step undefined" id="features_177_1_feature_26"><div><span class="keyword">And</span> <span class="step val">I fill in "Password" with "password"</span></div></li><li class="step undefined" id="features_177_1_feature_27"><div><span class="keyword">And</span> <span class="step val">I press "Log in"</span></div></li><li class="step undefined" id="features_177_1_feature_28"><div><span class="keyword">Then</span> <span class="step val">I should be at the "dashboard/index" page</span></div></li></ol></div></div><div class="feature"><h2><span class="val">Visitors may create an account, but for those who are not already in the </span></h2><p class="narrative">system an someone must activate the account for them before it can be used.<br/><br/>Feature: Activating an account<br/>As a registered, but not yet activated, user<br/>I want to be able to activate my account<br/>So that I can log in to the site<br/></p><div class="scenario"><h3><span class="keyword">Scenario:</span> <span class="val">Not-yet-activated user can activate her account</span></h3><ol><li class="step undefined" id="features_177_2_feature_10"><div><span class="keyword">Given</span> <span class="step val">a registered user named 'Reggie' # need to rewrite</span></div></li></ol></div></div><div class="feature"><h2><span class="val">Feature: Matt's example with a comment before a step</span></h2><p class="narrative"></p><div class="scenario"><h3><span class="keyword">Scenario:</span> <span class="val">Upload an image for an artist and create a concert in the process</span></h3><ol><li class="step undefined" id="features_177_3_feature_4"><div><span class="keyword">Given</span> <span class="step val">I am logged in to my account</span></div></li><li class="step undefined" id="features_177_3_feature_5"><div><span class="keyword">And</span> <span class="step val">there is one Artist named "Pixies"</span></div></li><li class="step undefined" id="features_177_3_feature_6"><div><span class="keyword">And</span> <span class="step val">there is one Venue</span></div></li><li class="step undefined" id="features_177_3_feature_7"><div><span class="keyword">When</span> <span class="step val">I visit the page for the Artist</span></div></li><li class="step undefined" id="features_177_3_feature_8"><div><span class="keyword">And</span> <span class="step val">I follow "add a photo"</span></div></li><li class="step undefined" id="features_177_3_feature_9"><div><span class="keyword">And</span> <span class="step val">I upload an Image</span></div></li><li class="step undefined" id="features_177_3_feature_11"><div><span class="keyword">And</span> <span class="step val">I press "Search Pixies concerts"</span></div></li><li class="step undefined" id="features_177_3_feature_12"><div><span class="keyword">And</span> <span class="step val">I follow "Add a new Concert"</span></div></li><li class="step undefined" id="features_177_3_feature_13"><div><span class="keyword">And</span> <span class="step val">I fill in new Concert information</span></div></li><li class="step undefined" id="features_177_3_feature_14"><div><span class="keyword">And</span> <span class="step val">I press "Preview"</span></div></li><li class="step undefined" id="features_177_3_feature_15"><div><span class="keyword">And</span> <span class="step val">I press "Add concert"</span></div></li><li class="step undefined" id="features_177_3_feature_17"><div><span class="keyword">And</span> <span class="step val">I press "Submit"</span></div></li><li class="step undefined" id="features_177_3_feature_18"><div><span class="keyword">Then</span> <span class="step val">my Concert should exist with 1 Image</span></div></li></ol></div></div><div class="feature"><h2><span class="val">Feature: Cucumber command line</span></h2><p class="narrative">In order to write better software<br/>Developers should be able to execute requirements as tests<br/></p><div class="scenario"><h3><span class="keyword">Scenario:</span> <span class="val">Pending Scenario at the end of a file with whitespace after it
|
134
|
+
</span></h3><ol></ol></div></div><div class="feature"><h2><span class="val">Feature: Tagged hooks</span></h2><p class="narrative">In order to provide more flexible setups<br/>I should be able to specify exactly<br/>where hooks are executed<br/></p><div class="scenario"><span class="tag">@i_am_so_special</span><h3><span class="keyword">Scenario:</span> <span class="val">Yes I am</span></h3><ol><li class="step passed" id="features_229_tagged_hooks_feature_8"><div><span class="keyword">When</span> <span class="step val">special me goes to town</span></div></li></ol></div></div><div class="feature"><h2><span class="val">Feature: Unsubstituted argument placeholder</span></h2><p class="narrative"></p><div class="scenario outline"><h3><span class="keyword">Scenario Outline:</span> <span class="val">See Annual Leave Details (as Management & Human Resource)</span></h3><ol><li class="step skipped" id="features_236_feature_4"><div><span class="keyword">Given</span> <span class="step val">the following users exist in the system</span></div><table><tr id="row_5"><td class="val" id="row_5_0">name</td><td class="val" id="row_5_1">email</td><td class="val" id="row_5_2">role_assignments</td><td class="val" id="row_5_3">group_memberships</td></tr><tr id="row_6"><td class="val" id="row_6_0">Jane</td><td class="val" id="row_6_1">jane@fmail.com</td><td class="val" id="row_6_2"><role></td><td class="val" id="row_6_3">Sales (manager)</td></tr><tr id="row_7"><td class="val" id="row_7_0">Max</td><td class="val" id="row_7_1">max@fmail.com</td><td class="val" id="row_7_2"></td><td class="val" id="row_7_3">Sales (member)</td></tr><tr id="row_8"><td class="val" id="row_8_0">Carol</td><td class="val" id="row_8_1">carol@fmail.com</td><td class="val" id="row_8_2"></td><td class="val" id="row_8_3">Sales (member)</td></tr><tr id="row_9"><td class="val" id="row_9_0">Cat</td><td class="val" id="row_9_1">cat@fmail.com</td><td class="val" id="row_9_2"></td><td class="val" id="row_9_3"></td></tr></table></li></ol><div class="examples"><h4><span class="keyword">Examples:</span> <span class="val"></span></h4><table><tr id="row_12"><th class="val skipped_param" id="row_12_0">role</th></tr><tr id="row_13"><td class="val passed" id="row_13_0">HUMAN RESOURCE</td></tr></table></div></div></div><div class="feature"><h2><span class="val">Users want to use cucumber, so tests are necessary to verify</span></h2><p class="narrative">it is all working as expected<br/><br/>Feature: Using the Console Formatter<br/>In order to verify this error<br/>I want to run this feature using the progress format<br/>So that it can be fixed<br/></p><div class="scenario"><h3><span class="keyword">Scenario:</span> <span class="val">A normal feature</span></h3><ol><li class="step pending" id="features_241_feature_10"><div><span class="keyword">Given</span> <span class="step val">I have a pending step</span></div><pre class="pending">TODO (Cucumber::Pending)
|
135
|
+
./features/step_definitons/tickets_steps.rb:57:in `/^I have a pending step$/'
|
136
|
+
features/241.feature:10:in `Given I have a pending step'</pre></li><li class="step skipped" id="features_241_feature_11"><div><span class="keyword">When</span> <span class="step val">I run this feature with the progress format</span></div></li><li class="step skipped" id="features_241_feature_12"><div><span class="keyword">Then</span> <span class="step val">I should get a no method error for 'backtrace_line'</span></div></li></ol></div></div><div class="feature"><h2><span class="val">Feature: https://rspec.lighthouseapp.com/projects/16211/tickets/246-distorted-console-output-for-slightly-complicated-step-regexp-match</span></h2><p class="narrative"></p><div class="scenario"><h3><span class="keyword">Scenario:</span> <span class="val">See "No Record(s) Found" for Zero Existing</span></h3><ol><li class="step passed" id="features_246_feature_4"><div><span class="keyword">Given</span> <span class="step val">no <span class="param">public holiday</span> exists in the system</span></div></li></ol></div></div><div class="feature"><h2><span class="val">Feature: pending method causes failure in Scenario Outlines</span></h2><p class="narrative"></p><div class="scenario outline"><h3><span class="keyword">Scenario Outline:</span> <span class="val">blah</span></h3><ol><li class="step skipped" id="features_248_feature_4"><div><span class="keyword">Given</span> <span class="step val">this is pending until we fix it</span></div></li><li class="step skipped" id="features_248_feature_5"><div><span class="keyword">Given</span> <span class="step val">context with <Stuff></span></div></li><li class="step skipped" id="features_248_feature_6"><div><span class="keyword">When</span> <span class="step val">action</span></div></li><li class="step skipped" id="features_248_feature_7"><div><span class="keyword">Then</span> <span class="step val">outcome with <Blah></span></div></li></ol><div class="examples"><h4><span class="keyword">Examples:</span> <span class="val"></span></h4><table><tr id="row_10"><th class="val skipped_param" id="row_10_0">Stuff</th><th class="val skipped_param" id="row_10_1">Blah</th></tr><tr id="row_11"><td class="val skipped" id="row_11_0">Cheese</td><td class="val skipped" id="row_11_1">Pepper Jack</td></tr><tr><td class="failed" colspan="2"><pre>TODO (Cucumber::Pending)
|
137
|
+
./features/step_definitons/248_steps.rb:2:in `/^this is pending until we fix it$/'
|
138
|
+
features/248.feature:4:in `Given this is pending until we fix it'</pre></td></tr></table></div></div></div><div class="feature"><h2><span class="val">Feature: Background</span></h2><p class="narrative">In for background to work properly<br/>As a user<br/>I want it to run transactionally and only once when I call an individual scenario<br/></p><div class="background"><h3><span class="keyword">Background:</span> <span class="val"></span></h3><ol><li class="step passed" id="features_270_back_feature_7"><div><span class="keyword">Given</span> <span class="step val">plop</span></div></li></ol></div><div class="scenario"><h3><span class="keyword">Scenario:</span> <span class="val">Barping</span></h3><ol><li class="step passed" id="features_270_back_feature_10"><div><span class="keyword">When</span> <span class="step val">I barp</span></div></li></ol></div><div class="scenario"><h3><span class="keyword">Scenario:</span> <span class="val">Wibbling</span></h3><ol><li class="step passed" id="features_270_back_feature_14"><div><span class="keyword">When</span> <span class="step val">I wibble</span></div></li></ol></div></div><div class="feature"><h2><span class="val">Feature: pystring indentaion testcase</span></h2><p class="narrative"></p><div class="scenario"><h3><span class="keyword">Scenario:</span> <span class="val">example of correct indentation</span></h3><ol><li class="step passed" id="features_279_py_string_indent_feature_4"><div><span class="keyword">Given</span> <span class="step val">multiline string</span></div><pre class="val"> I'm a cucumber and I'm ok
I sleep all night and test all day</pre></li><li class="step passed" id="features_279_py_string_indent_feature_9"><div><span class="keyword">Then</span> <span class="step val">string is</span></div><pre class="val"> I'm a cucumber and I'm ok
I sleep all night and test all day</pre></li></ol></div><div class="scenario"><h3><span class="keyword">Scenario:</span> <span class="val">example of wrong indentation</span></h3><ol><li class="step passed" id="features_279_py_string_indent_feature_16"><div><span class="keyword">Given</span> <span class="step val">I am in <span class="param">tickets/features/279</span></span></div></li><li class="step passed" id="features_279_py_string_indent_feature_17"><div><span class="keyword">When</span> <span class="step val">I run cucumber <span class="param">-q wrong.feature_</span></span></div></li><li class="step passed" id="features_279_py_string_indent_feature_18"><div><span class="keyword">Then</span> <span class="step val">it should <span class="param">fail</span> with</span></div><pre class="val"></pre></li><li class="step passed" id="features_279_py_string_indent_feature_22"><div><span class="keyword">And</span> <span class="step val">STDERR should match</span></div><pre class="val">wrong.feature_:8:10: Parse error</pre></li></ol></div></div><div class="feature"><h2><span class="val">Feature https://rspec.lighthouseapp.com/projects/16211/tickets/301</span></h2><p class="narrative"></p><div class="background"><h3><span class="keyword">Background:</span> <span class="val">A background</span></h3><ol><li class="step passed" id="features_301_filter_background_tagged_hooks_feature_3"><div><span class="keyword">Given</span> <span class="step val">whatever</span></div></li></ol></div><div class="scenario"><h3><span class="keyword">Scenario:</span> <span class="val">VB is not cool</span></h3><ol><li class="step passed" id="features_301_filter_background_tagged_hooks_feature_6"><div><span class="keyword">Then</span> <span class="step val">VB should not be cool</span></div></li></ol></div></div><div class="feature"><h2><span class="val">Feature: woo yeah</span></h2><p class="narrative"></p><div class="background"><h3><span class="keyword">Background:</span> <span class="val"></span></h3><ol><li class="step undefined" id="features_306_only_background_feature_4"><div><span class="keyword">Given</span> <span class="step val">passing step without a table</span></div></li></ol></div></div><div class="feature"><h2><span class="val">Feature: Outlines</span></h2><p class="narrative">In order to re-use scenario table values<br/>As a citizen of Cucumbia<br/>I want to explicitly mark the parameters in a scenario outline<br/></p><div class="scenario outline"><h3><span class="keyword">Scenario Outline:</span> <span class="val">controlling order</span></h3><ol><li class="step skipped" id="features_scenario_outline_feature_7"><div><span class="keyword">Given</span> <span class="step val">there are <start> cucumbers</span></div></li><li class="step skipped" id="features_scenario_outline_feature_8"><div><span class="keyword">When</span> <span class="step val">I eat <eat> cucumbers</span></div></li><li class="step skipped" id="features_scenario_outline_feature_9"><div><span class="keyword">Then</span> <span class="step val">I should have <left> cucumbers</span></div></li></ol><div class="examples"><h4><span class="keyword">Examples:</span> <span class="val"></span></h4><table><tr id="row_12"><th class="val skipped_param" id="row_12_0">left</th><th class="val skipped_param" id="row_12_1">start</th><th class="val skipped_param" id="row_12_2">eat</th></tr><tr id="row_13"><td class="val passed" id="row_13_0">7</td><td class="val passed" id="row_13_1">12</td><td class="val passed" id="row_13_2">5</td></tr><tr id="row_14"><td class="val passed" id="row_14_0">15</td><td class="val passed" id="row_14_1">20</td><td class="val passed" id="row_14_2">5</td></tr></table></div></div><div class="scenario outline"><h3><span class="keyword">Scenario Outline:</span> <span class="val">reusing place holder</span></h3><ol><li class="step skipped" id="features_scenario_outline_feature_17"><div><span class="keyword">Given</span> <span class="step val">there are <start> cucumbers</span></div></li><li class="step skipped" id="features_scenario_outline_feature_18"><div><span class="keyword">When</span> <span class="step val">I eat <eat> cucumbers</span></div></li><li class="step skipped" id="features_scenario_outline_feature_19"><div><span class="keyword">Then</span> <span class="step val">I should have <left> cucumbers</span></div></li><li class="step skipped" id="features_scenario_outline_feature_20"><div><span class="keyword">And</span> <span class="step val">I should have <eat> cucumbers in my belly</span></div></li></ol><div class="examples"><h4><span class="keyword">Examples:</span> <span class="val">Lots of cukes</span></h4><table><tr id="row_23"><th class="val skipped_param" id="row_23_0">start</th><th class="val skipped_param" id="row_23_1">eat</th><th class="val skipped_param" id="row_23_2">left</th></tr><tr id="row_24"><td class="val passed" id="row_24_0">12</td><td class="val passed" id="row_24_1">5</td><td class="val passed" id="row_24_2">7</td></tr><tr id="row_25"><td class="val passed" id="row_25_0">20</td><td class="val passed" id="row_25_1">5</td><td class="val passed" id="row_25_2">15</td></tr></table></div><div class="examples"><h4><span class="keyword">Examples:</span> <span class="val">Ridiculous amounts of cukes</span></h4><table><tr id="row_28"><th class="val skipped_param" id="row_28_0">start</th><th class="val skipped_param" id="row_28_1">eat</th><th class="val skipped_param" id="row_28_2">left</th></tr><tr id="row_29"><td class="val passed" id="row_29_0">120</td><td class="val passed" id="row_29_1">50</td><td class="val passed" id="row_29_2">70</td></tr><tr id="row_30"><td class="val passed" id="row_30_0">200</td><td class="val passed" id="row_30_1">50</td><td class="val passed" id="row_30_2">150</td></tr></table></div></div><div class="scenario outline"><h3><span class="keyword">Scenario Outline:</span> <span class="val">no placeholders</span></h3><ol><li class="step skipped" id="features_scenario_outline_feature_33"><div><span class="keyword">Given</span> <span class="step val">there are 12 cucumbers</span></div></li><li class="step skipped" id="features_scenario_outline_feature_34"><div><span class="keyword">When</span> <span class="step val">I eat 5 cucumbers</span></div></li><li class="step skipped" id="features_scenario_outline_feature_35"><div><span class="keyword">Then</span> <span class="step val">I should have 7 cucumbers</span></div></li></ol><div class="examples"><h4><span class="keyword">Examples:</span> <span class="val"></span></h4><table><tr id="row_38"><th class="val skipped_param" id="row_38_0">start</th><th class="val skipped_param" id="row_38_1">eat</th><th class="val skipped_param" id="row_38_2">left</th></tr><tr id="row_39"><td class="val" id="row_39_0">12</td><td class="val" id="row_39_1">5</td><td class="val" id="row_39_2">7</td></tr><tr id="row_40"><td class="val" id="row_40_0">20</td><td class="val" id="row_40_1">5</td><td class="val" id="row_40_2">15</td></tr></table></div></div><div class="scenario outline"><h3><span class="keyword">Scenario Outline:</span> <span class="val">using '<' and '>' not as placeholder</span></h3><ol><li class="step skipped" id="features_scenario_outline_feature_43"><div><span class="keyword">Given</span> <span class="step val">the belly space is < 12 and > 6</span></div></li><li class="step skipped" id="features_scenario_outline_feature_44"><div><span class="keyword">And</span> <span class="step val">there are <start> cucumbers</span></div></li><li class="step skipped" id="features_scenario_outline_feature_45"><div><span class="keyword">When</span> <span class="step val">I eat <eat> cucumbers</span></div></li><li class="step skipped" id="features_scenario_outline_feature_46"><div><span class="keyword">Then</span> <span class="step val">I should have <left> cucumbers</span></div></li></ol><div class="examples"><h4><span class="keyword">Examples:</span> <span class="val"></span></h4><table><tr id="row_49"><th class="val skipped_param" id="row_49_0">start</th><th class="val skipped_param" id="row_49_1">eat</th><th class="val skipped_param" id="row_49_2">left</th></tr><tr id="row_50"><td class="val passed" id="row_50_0">12</td><td class="val passed" id="row_50_1">5</td><td class="val passed" id="row_50_2">7</td></tr><tr id="row_51"><td class="val passed" id="row_51_0">20</td><td class="val passed" id="row_51_1">5</td><td class="val passed" id="row_51_2">15</td></tr></table></div></div><div class="scenario outline"><h3><span class="keyword">Scenario Outline:</span> <span class="val">with step tables</span></h3><ol><li class="step skipped" id="features_scenario_outline_feature_54"><div><span class="keyword">Given</span> <span class="step val">I have the following fruits in my pantry</span></div><table><tr id="row_55"><td class="val" id="row_55_0">name</td><td class="val" id="row_55_1">quantity</td></tr><tr id="row_56"><td class="val" id="row_56_0">cucumbers</td><td class="val" id="row_56_1">10</td></tr><tr id="row_57"><td class="val" id="row_57_0">strawberrys</td><td class="val" id="row_57_1">5</td></tr><tr id="row_58"><td class="val" id="row_58_0">apricots</td><td class="val" id="row_58_1">7</td></tr></table></li><li class="step skipped" id="features_scenario_outline_feature_60"><div><span class="keyword">When</span> <span class="step val">I eat <number> <fruits> from the pantry</span></div></li><li class="step skipped" id="features_scenario_outline_feature_61"><div><span class="keyword">Then</span> <span class="step val">I should have <left> <fruits> in the pantry</span></div></li></ol><div class="examples"><h4><span class="keyword">Examples:</span> <span class="val"></span></h4><table><tr id="row_64"><th class="val skipped_param" id="row_64_0">number</th><th class="val skipped_param" id="row_64_1">fruits</th><th class="val skipped_param" id="row_64_2">left</th></tr><tr id="row_65"><td class="val passed" id="row_65_0">2</td><td class="val passed" id="row_65_1">cucumbers</td><td class="val passed" id="row_65_2">8</td></tr><tr id="row_66"><td class="val passed" id="row_66_0">4</td><td class="val passed" id="row_66_1">strawberrys</td><td class="val passed" id="row_66_2">1</td></tr><tr id="row_67"><td class="val passed" id="row_67_0">2</td><td class="val passed" id="row_67_1">apricots</td><td class="val passed" id="row_67_2">5</td></tr></table></div></div><div class="scenario outline"><h3><span class="keyword">Scenario Outline:</span> <span class="val">placeholder in a multiline string</span></h3><ol><li class="step skipped" id="features_scenario_outline_feature_70"><div><span class="keyword">Given</span> <span class="step val">my shopping list</span></div><pre class="val"> Must buy some <fruits></pre></li><li class="step skipped" id="features_scenario_outline_feature_74"><div><span class="keyword">Then</span> <span class="step val">my shopping list should equal</span></div><pre class="val"> Must buy some cucumbers</pre></li></ol><div class="examples"><h4><span class="keyword">Examples:</span> <span class="val"></span></h4><table><tr id="row_80"><th class="val skipped_param" id="row_80_0">fruits</th></tr><tr id="row_81"><td class="val passed" id="row_81_0">cucumbers</td></tr></table></div></div><div class="scenario outline"><h3><span class="keyword">Scenario Outline:</span> <span class="val">placeholder in step table</span></h3><ol><li class="step skipped" id="features_scenario_outline_feature_84"><div><span class="keyword">Given</span> <span class="step val">I have the following fruits in my pantry</span></div><table><tr id="row_85"><td class="val" id="row_85_0">name</td><td class="val" id="row_85_1">quantity</td></tr><tr id="row_86"><td class="val" id="row_86_0">cucumbers</td><td class="val" id="row_86_1"><quant_cukes></td></tr><tr id="row_87"><td class="val" id="row_87_0">strawberrys</td><td class="val" id="row_87_1"><quant_straw></td></tr></table></li><li class="step skipped" id="features_scenario_outline_feature_89"><div><span class="keyword">When</span> <span class="step val">I eat <number> <fruits> from the pantry</span></div></li><li class="step skipped" id="features_scenario_outline_feature_90"><div><span class="keyword">Then</span> <span class="step val">I should have <left> <fruits> in the pantry</span></div></li></ol><div class="examples"><h4><span class="keyword">Examples:</span> <span class="val"></span></h4><table><tr id="row_93"><th class="val skipped_param" id="row_93_0">quant_cukes</th><th class="val skipped_param" id="row_93_1">quant_straw</th><th class="val skipped_param" id="row_93_2">number</th><th class="val skipped_param" id="row_93_3">fruits</th><th class="val skipped_param" id="row_93_4">left</th></tr><tr id="row_94"><td class="val passed" id="row_94_0">10</td><td class="val passed" id="row_94_1">5</td><td class="val passed" id="row_94_2">2</td><td class="val passed" id="row_94_3">cucumbers</td><td class="val passed" id="row_94_4">8</td></tr><tr id="row_95"><td class="val passed" id="row_95_0">5</td><td class="val passed" id="row_95_1">5</td><td class="val passed" id="row_95_2">4</td><td class="val passed" id="row_95_3">strawberrys</td><td class="val passed" id="row_95_4">1</td></tr></table></div></div></div><div class="feature"><h2><span class="val">Feature: Cucumber</span></h2><p class="narrative">In order to have a happy user base<br/>As a Cucumber user<br/>I don't want no stinkin bugs<br/></p><div class="scenario"><h3><span class="keyword">Scenario:</span> <span class="val">RSpec be_*</span></h3><ol><li class="step passed" id="features_tickets_feature_7"><div><span class="keyword">Given</span> <span class="step val">be_empty</span></div></li></ol></div><div class="scenario"><h3><span class="keyword">Scenario:</span> <span class="val">Call step from step</span></h3><ol><li class="step passed" id="features_tickets_feature_10"><div><span class="keyword">Given</span> <span class="step val">nested step is called</span></div></li><li class="step passed" id="features_tickets_feature_11"><div><span class="keyword">Then</span> <span class="step val">nested step should be executed</span></div></li></ol></div><div class="scenario"><h3><span class="keyword">Scenario:</span> <span class="val">Call step from step using text table</span></h3><ol><li class="step passed" id="features_tickets_feature_14"><div><span class="keyword">Given</span> <span class="step val">nested step is called using text table</span></div></li><li class="step passed" id="features_tickets_feature_15"><div><span class="keyword">Then</span> <span class="step val">nested step should be executed</span></div></li></ol></div><div class="scenario"><h3><span class="keyword">Scenario:</span> <span class="val">Reading a table</span></h3><ol><li class="step passed" id="features_tickets_feature_18"><div><span class="keyword">Given</span> <span class="step val">the following table</span></div><table><tr id="row_19"><td class="val" id="row_19_0">born</td><td class="val" id="row_19_1">working</td></tr><tr id="row_20"><td class="val" id="row_20_0">Oslo</td><td class="val" id="row_20_1">London</td></tr></table></li><li class="step passed" id="features_tickets_feature_21"><div><span class="keyword">Then</span> <span class="step val">I should be <span class="param">working</span> in <span class="param">London</span></span></div></li><li class="step passed" id="features_tickets_feature_22"><div><span class="keyword">And</span> <span class="step val">I should be <span class="param">born</span> in <span class="param">Oslo</span></span></div></li><li class="step passed" id="features_tickets_feature_23"><div><span class="keyword">And</span> <span class="step val">I should see a multiline string like</span></div><pre class="val">A string
that spans
several lines</pre></li></ol></div></div><div class="summary">43 scenarios (12 undefined, 2 pending, 29 passed)</div><div class="summary">173 steps (5 skipped, 89 undefined, 2 pending, 77 passed)</div><div class="duration">0m0.701s</div></div></body></html>
|