cucumber 2.0.0.rc.4 → 2.0.0.rc.5
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.
- checksums.yaml +4 -4
- data/History.md +74 -52
- data/examples/i18n/ht/Rakefile +6 -0
- data/examples/i18n/ht/features/adisyon.feature +17 -0
- data/examples/i18n/ht/features/divizyon.feature +10 -0
- data/examples/i18n/ht/features/step_definitions/kalkilatris_steps.rb +25 -0
- data/examples/i18n/ht/lib/kalkilatris.rb +14 -0
- data/features/docs/cli/dry_run.feature +43 -0
- data/features/docs/cli/strict_mode.feature +24 -1
- data/features/docs/defining_steps/nested_steps.feature +49 -0
- data/features/docs/exception_in_after_step_hook.feature +1 -1
- data/features/docs/exception_in_around_hook.feature +80 -0
- data/features/docs/formatters/json_formatter.feature +65 -1
- data/features/docs/formatters/junit_formatter.feature +40 -0
- data/features/docs/{wire_protocol_erb.feature → wire_protocol/erb_configuration.feature} +2 -2
- data/features/docs/wire_protocol/handle_unexpected_response.feature +30 -0
- data/features/docs/wire_protocol/invoke_message.feature +216 -0
- data/features/docs/wire_protocol/readme.md +26 -0
- data/features/docs/wire_protocol/snippets_message.feature +51 -0
- data/features/docs/wire_protocol/step_matches_message.feature +81 -0
- data/features/docs/{wire_protocol_table_diffing.feature → wire_protocol/table_diffing.feature} +1 -0
- data/features/docs/{wire_protocol_tags.feature → wire_protocol/tags.feature} +1 -0
- data/features/docs/{wire_protocol_timeouts.feature → wire_protocol/timeouts.feature} +1 -0
- data/features/docs/work_in_progress.feature +1 -1
- data/features/docs/writing_support_code/around_hooks.feature +31 -0
- data/features/docs/writing_support_code/before_hook.feature +7 -3
- data/features/docs/writing_support_code/tagged_hooks.feature +44 -6
- data/features/lib/step_definitions/wire_steps.rb +18 -1
- data/features/lib/support/fake_wire_server.rb +10 -7
- data/lib/cucumber.rb +1 -3
- data/lib/cucumber/cli/options.rb +7 -0
- data/lib/cucumber/encoding.rb +5 -0
- data/lib/cucumber/errors.rb +8 -0
- data/lib/cucumber/filters/prepare_world.rb +13 -5
- data/lib/cucumber/formatter/console.rb +1 -1
- data/lib/cucumber/formatter/gherkin_formatter_adapter.rb +9 -6
- data/lib/cucumber/formatter/junit.rb +95 -0
- data/lib/cucumber/formatter/legacy_api/adapter.rb +39 -3
- data/lib/cucumber/platform.rb +1 -1
- data/lib/cucumber/project_initializer.rb +43 -0
- data/lib/cucumber/rb_support/rb_step_definition.rb +11 -2
- data/lib/cucumber/rb_support/rb_world.rb +2 -2
- data/lib/cucumber/rb_support/snippet.rb +1 -1
- data/lib/cucumber/rspec/doubles.rb +1 -1
- data/lib/cucumber/running_test_case.rb +115 -0
- data/lib/cucumber/runtime.rb +5 -1
- data/lib/cucumber/runtime/for_programming_languages.rb +2 -2
- data/lib/cucumber/runtime/support_code.rb +18 -8
- data/spec/cucumber/formatter/junit_spec.rb +212 -156
- data/spec/cucumber/formatter/legacy_api/adapter_spec.rb +89 -1
- data/spec/cucumber/formatter/pretty_spec.rb +13 -0
- data/spec/cucumber/project_initializer_spec.rb +87 -0
- data/spec/cucumber/rb_support/rb_step_definition_spec.rb +21 -3
- data/spec/cucumber/rb_support/snippet_spec.rb +6 -6
- data/spec/cucumber/running_test_case_spec.rb +83 -0
- data/spec/spec_helper.rb +1 -4
- metadata +35 -18
- data/bin/cuke +0 -60
- data/features/docs/report_called_undefined_steps.feature +0 -57
- data/features/docs/wire_protocol.feature +0 -337
- data/lib/cucumber/ast/facade.rb +0 -117
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 89ecd30f7af5ab85e66c9aaa0ea1b02a333ed2b7
|
4
|
+
data.tar.gz: 54bef93b9f1d18aeccbfa7a2fceaba2272fa2690
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f295d0cf32e842627647ed13d4bafffbfa9e0f19cc8fa86fbe3da2ceea12700609e33eeabc53b457cc875e53f5b47973acf118139a29a49a53b490334afd3bd1
|
7
|
+
data.tar.gz: 50727adb43830520a8413d8fd01fd343055e1fdbde46f1da042991c6a53aba25aea931bffdfcb6457992165f12ce8b53007b17b437c124067a2e4af73ce15492
|
data/History.md
CHANGED
@@ -1,93 +1,110 @@
|
|
1
|
-
## [In Git](https://github.com/cucumber/cucumber/compare/v2.0.0.rc.
|
1
|
+
## [In Git](https://github.com/cucumber/cucumber/compare/v2.0.0.rc.4...master)
|
2
|
+
|
3
|
+
### New Features
|
4
|
+
|
5
|
+
* Add `--init` command ([699](https://github.com/cucumber/cucumber/pull/699) @LGordon2)
|
6
|
+
|
7
|
+
## Bugfixes
|
8
|
+
|
9
|
+
* Let the JUnitFormatter handle Scenario Outlines with the --expand option ([124](https://github.com/cucumber/cucumber/issues/124), [808](https://github.com/cucumber/cucumber/pull/808) @brasmusson, @richarda)
|
10
|
+
* Suggested regexes result in ambigous matches ([663](https://github.com/cucumber/cucumber/pull/663) @rwz)
|
11
|
+
* Pass when using both the --dry-run and the --strict options, unless there are undefined steps ([810](https://github.com/cucumber/cucumber/issues/810) @brasmusson)
|
12
|
+
* Handle step output correctly for Scenario Outlines with the --expand option ([806](https://github.com/cucumber/cucumber/issues/806) @brasmusson)
|
13
|
+
* Fix GBK and UTF-8 (Encoding::CompatibilityError) ([693](https://github.com/cucumber/cucumber/issues/693) @mattwynne)
|
14
|
+
* Make the scenario object available in hooks compatible with v1.3.x ([814](https://github.com/cucumber/cucumber/pull/814) @brasmusson)
|
15
|
+
* JUnit expand option ([808](https://github.com/cucumber/cucumber/pull/808) @richarda @brasmusson)
|
16
|
+
* Around hooks not executing in correct world context ([807](https://github.com/cucumber/cucumber/pull/807) @tooky)
|
17
|
+
|
18
|
+
## [v2.0.0.rc.4](https://github.com/cucumber/cucumber/compare/v2.0.0.rc.3...2.0.0.rc.4)
|
2
19
|
|
3
20
|
### Features
|
4
21
|
|
5
|
-
|
22
|
+
* [Add custom filters from Ruby configuration code](https://github.com/cucumber/cucumber/blob/master/features/docs/extending_cucumber/custom_filter.feature) (@mattwynne)
|
6
23
|
|
7
24
|
### Bugfixes
|
8
25
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
26
|
+
* Fix missing `require Forwardable` (@tooky)
|
27
|
+
* Fix snippet suggestions ([765](https://github.com/cucumber/cucumber/pull/765) @richarda), also with i18n languages (@brasmusson)
|
28
|
+
* Fix transformation of regex with lookahead/lookbehind ([796](https://github.com/cucumber/cucumber/pull/796) @bolshakov)
|
29
|
+
* Sort scenarios by location ([789](https://github.com/cucumber/cucumber/issues/789) @mattwynne)
|
30
|
+
* Remove keyword from name property of test case object yielded to hooks ([768](https://github.com/cucumber/cucumber/issues/768) @richarda, @akostadinov)
|
14
31
|
|
15
32
|
## [v2.0.0.rc.3](https://github.com/cucumber/cucumber/compare/v2.0.0.rc.2...v2.0.0.rc.3)
|
16
33
|
|
17
34
|
### Bugfixes
|
18
35
|
|
19
|
-
|
36
|
+
* MultilineArgument::DataTable#diff will correctly compare to an Array (@tooky)
|
20
37
|
|
21
38
|
## [v2.0.0.rc.2](https://github.com/cucumber/cucumber/compare/v2.0.0.rc.1...v2.0.0.rc.2)
|
22
39
|
|
23
40
|
### Bugfixes
|
24
41
|
|
25
|
-
|
42
|
+
* World#table no longer creates invalid table objects when using an Array (@tooky, @mattwynne)
|
26
43
|
|
27
44
|
## [v2.0.0.rc.1](https://github.com/cucumber/cucumber/compare/v2.0.0.beta.5...v2.0.0.rc.1)
|
28
45
|
|
29
46
|
### Removed Features
|
30
47
|
|
31
|
-
|
48
|
+
* Removed support for IronRuby (@tooky @mattwynne)
|
32
49
|
|
33
50
|
### New Features
|
34
51
|
|
35
|
-
|
36
|
-
|
37
|
-
|
52
|
+
* Let the HTML formatter store the relative path to files in the report ([697](https://github.com/cucumber/cucumber/pull/697) @idstein, @brasmusson)
|
53
|
+
* Allow cucumber.yml to parse % erb code lines ([755](https://github.com/cucumber/cucumber/pull/755) @snowe2010)
|
54
|
+
* Give each step definition a unique copy of argument objects ([760](https://github.com/cucumber/cucumber/pull/760) @tooky)
|
38
55
|
|
39
56
|
### Bugfixes
|
40
57
|
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
58
|
+
* Add old Scenario#skip_invoke! method back (@mattwynne)
|
59
|
+
* No links to lines in backtrace under TextMate ([548](https://github.com/cucumber/cucumber/pull/548) @bilus)
|
60
|
+
* Using file:line CLI to select scenarios was running same scenario multiple times ([786](https://github.com/cucumber/cucumber/pull/786) @jdks)
|
61
|
+
* Allow spaces in filenames for rerun formatter ([793](https://github.com/cucumber/cucumber/pull/793) @callahat)
|
45
62
|
|
46
63
|
## [v2.0.0.beta.5](https://github.com/cucumber/cucumber/compare/v2.0.0.beta.4...v2.0.0.beta.5)
|
47
64
|
|
48
|
-
|
65
|
+
* Depend on the correct version of core (@tooky)
|
49
66
|
|
50
67
|
## [v2.0.0.beta.4](https://github.com/cucumber/cucumber/compare/v2.0.0.beta.3...v2.0.0.beta.4)
|
51
68
|
### New Features
|
52
69
|
|
53
|
-
|
70
|
+
* Support both new and legacy formatter APIs simultaneously (@mattwynne and @tooky)
|
54
71
|
|
55
72
|
### Bugfixes
|
56
73
|
|
57
|
-
|
58
|
-
|
59
|
-
|
74
|
+
* Localize the Scenario keyword with the --expand option ([766](https://github.com/cucumber/cucumber/pull/766) @brasmusson)
|
75
|
+
* Handle hook output appropriately in the HTML formatter ([746](https://github.com/cucumber/cucumber/pull/746), [731](https://github.com/cucumber/cucumber/issues/731), [298](https://github.com/cucumber/cucumber/pull/298) @brasmusson)
|
76
|
+
* Handle hook output appropriately in the Pretty formatter ([738](https://github.com/cucumber/cucumber/pull/738) @brasmusson)
|
60
77
|
|
61
78
|
### Internal changes
|
62
79
|
|
63
|
-
|
80
|
+
* Re-write rerun formatter against new formatter API
|
64
81
|
|
65
82
|
## [v2.0.0.beta.3](https://github.com/cucumber/cucumber/compare/v2.0.0.beta.2...v2.0.0.beta.3)
|
66
83
|
|
67
84
|
### Removed Features
|
68
85
|
|
69
|
-
|
86
|
+
* The `--dotcucumber` option is no longer supported and `stepdefs.json` is no longer written. (Aslak Hellesøy)
|
70
87
|
|
71
88
|
### New Features
|
72
89
|
|
73
|
-
|
74
|
-
|
75
|
-
|
90
|
+
* Include both outline step and expanded step in error backtrace ([730](https://github.com/cucumber/cucumber/pull/730) @brasmusson)
|
91
|
+
* Add TestCase#outline? for conditionals in Before / After hooks ([728](https://github.com/cucumber/cucumber/pull/728) [Erran Carey](https://github.com/erran))
|
92
|
+
* Support embedding images directly in HTML and JSON reports ([696](https://github.com/cucumber/cucumber/pull/696),[695](https://github.com/cucumber/cucumber/pull/695/files) @brasmusson)
|
76
93
|
|
77
94
|
### Bugfixes
|
78
95
|
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
96
|
+
* Pass hook output to the formatters appropriately ([732](https://github.com/cucumber/cucumber/pull/732) @brasmusson)
|
97
|
+
* Added tests for, and re-added behaviour to support Scenario#failed? in hooks (Matt Wynne)
|
98
|
+
* Rescuing ArgumentError in HTML formatter so Cucumber won't stop tests due bad encoding ([690](https://github.com/cucumber/cucumber/pull/690) @awls99)
|
99
|
+
* Add back support for the DataTable API ([729](https://github.com/cucumber/cucumber/pull/729) @mattwynne and @tooky)
|
100
|
+
* Fix Windows support loading files properly ([739](https://github.com/cucumber/cucumber/issues/739) @os97673)
|
84
101
|
|
85
102
|
## [v2.0.0.beta.2](https://github.com/cucumber/cucumber/compare/v2.0.0.beta.1...v2.0.0.beta.2)
|
86
103
|
|
87
104
|
### Bugfixes
|
88
105
|
|
89
|
-
|
90
|
-
|
106
|
+
* Better reporting of exceptions in Before / After hooks ([723](https://github.com/cucumber/cucumber/pull/723) @mattwynne)
|
107
|
+
* Add `#source_tag_names` method to `TestCase` object passed to hooks (@mattwynne)
|
91
108
|
|
92
109
|
## [v2.0.0.beta.1 ](https://github.com/cucumber/cucumber/compare/v1.3.8...v2.0.0.beta.1)
|
93
110
|
|
@@ -149,7 +166,7 @@ all.
|
|
149
166
|
## [v1.3.12](https://github.com/cucumber/cucumber/compare/v1.3.11...v1.3.12)
|
150
167
|
|
151
168
|
* Use MultiTest to handle assertions library selection (@tooky)
|
152
|
-
|
169
|
+
* Adds full support for rails 4.1 / Minitest
|
153
170
|
|
154
171
|
## [v1.3.11](https://github.com/cucumber/cucumber/compare/v1.3.10...v1.3.11)
|
155
172
|
|
@@ -634,7 +651,7 @@ Bugfix release which most importantly fixes an issue with the gem's gemspec.
|
|
634
651
|
* JSON formatters (json and json_pretty). (Jari Bakken)
|
635
652
|
|
636
653
|
### Removed features
|
637
|
-
* The --no-diff option is removed. If you're using RSpec you will
|
654
|
+
* The --no-diff option is removed. If you're using RSpec you will*always* get diffs. (Aslak Hellesøy)
|
638
655
|
|
639
656
|
### Changed Features
|
640
657
|
* Upgraded to be compatible with rspec 2.0.0.beta.10 (Aslak Hellesøy)
|
@@ -839,7 +856,7 @@ Please see History.txt in cucumber-rails for details about what's new on the Rai
|
|
839
856
|
* "Given" in Dutch is now aliased to "Gegeven" or "Stel". (Iain Hecker)
|
840
857
|
* New --i18n option to list keywords in various languages. (Aslak Hellesøy)
|
841
858
|
* Added a Tcl example using Sam Stephenson's ruby-tcl (Aslak Hellesøy)
|
842
|
-
* Added
|
859
|
+
* Added* as a synonym for Given/When/Then/And/But (for all i18n languages). (#462 Aslak Hellesøy)
|
843
860
|
* The HTML formatter produces a much nicer report, with TextMate link integration. (Rob Aldred)
|
844
861
|
* Wire protocol now supports table arguments, step definition source & regexp, snippets, pending, table diffing (Matt Wynne)
|
845
862
|
|
@@ -899,7 +916,7 @@ As usual there are several small features and bug fixes.
|
|
899
916
|
* New Wire Protocol - allowing out of process execution of Cucumber scenarios. (#428 Matt Wynne)
|
900
917
|
* Added an example illustrating how to get screenshots in HTML reports (examples/watir) (Aslak Hellesøy)
|
901
918
|
* Added new #embed(file, mime_type) method to visitors and Ruby Worlds to make it easier to embed screenshots (Aslak Hellesøy)
|
902
|
-
* The #puts method available from Ruby Step Definitions will print
|
919
|
+
* The #puts method available from Ruby Step Definitions will print*after* the step is executed. (#487 Zoltan Penzeli)
|
903
920
|
* Add support for rolling back transaction for all open database connections. (John Ferlito)
|
904
921
|
* Show scenario and step summary in HTML formatter (#285 Joseph Wilk)
|
905
922
|
* Ast::Table can now be constructed with an Array of Hash. (Aslak Hellesøy)
|
@@ -952,7 +969,7 @@ The back to stable release. When we went from 0.3.11 to 0.3.90 we thought we wer
|
|
952
969
|
went nuts and a lot of great contributions came in. Some of those broke backwards compatibility, and we decided it would be
|
953
970
|
better to do this while still on 0.3.x.
|
954
971
|
|
955
|
-
Rails users: you
|
972
|
+
Rails users: you*must* run script/generate cucumber after installing this version.
|
956
973
|
|
957
974
|
If something breaks for you, please please please read this file carefully. It's most likely something referenced here, and
|
958
975
|
that will give you more information so you can solve any problems. If not, just get in touch on IRC or the Google Group.
|
@@ -1044,7 +1061,7 @@ Other noteworthy new features are improved Hook, tags and Transform support, and
|
|
1044
1061
|
### New Features
|
1045
1062
|
* Added new internal API for Regexp and groups, allowing other programming languages to leverage native regexps. (Aslak Hellesøy)
|
1046
1063
|
* New @allow_rescue tag for Rails scenarios. Causes exceptions raised in actions to be caught by rails and not bubble up to Cucumber (Aslak Hellesøy)
|
1047
|
-
* Negative tags can now be used in hooks, just like the command line's --tags option: Before('~@yarr') - will run for all scenarios that
|
1064
|
+
* Negative tags can now be used in hooks, just like the command line's --tags option: Before('~@yarr') - will run for all scenarios that*don't* have the @yarr tag. (Aslak Hellesøy)
|
1048
1065
|
* Transform has current "World" scope (Larry Diehl)
|
1049
1066
|
* Other Transforms can be reused by calling Transform with a string inside of another Transform definition (Larry Diehl)
|
1050
1067
|
* Execute "After" hooks in reverse order of declaration for better behavior with dependent blocks and to mimic the behavior of at_exit (David Waite)
|
@@ -1058,7 +1075,7 @@ Other noteworthy new features are improved Hook, tags and Transform support, and
|
|
1058
1075
|
* Cucumber with Spork breaks on OS X Snow Leopard (#431 David Chelimsky)
|
1059
1076
|
|
1060
1077
|
### Changed Features
|
1061
|
-
* Tag names passed on the command line
|
1078
|
+
* Tag names passed on the command line*always* have to use the @ sign. --tags foo or --tags ~bar won't work. Use --tags @foo or --tags ~@bar (Aslak Hellesøy)
|
1062
1079
|
|
1063
1080
|
### Removed features
|
1064
1081
|
* The Cucumber::Rails.bypass_rescue no longer exists. Errors will always bubble up, unless you use the new @allow_rescue tag. (Aslak Hellesøy)
|
@@ -1196,8 +1213,8 @@ You'll achieve better flow this way.
|
|
1196
1213
|
* Added examples/python that uses rubypython. (Aslak Hellesøy)
|
1197
1214
|
* Checks the number of available colors on the terminal with ruby-terminfo if ruby-terminfo is installed.
|
1198
1215
|
This prevents Apple's Terminal.app from stalling (Yugui - Yuki Sonoda).
|
1199
|
-
|
1200
|
-
|
1216
|
+
* Set 'xterm-256color' to TERM if your terminal supports grey.
|
1217
|
+
* ruby-terminfo is available as genki-ruby-terminfo gem from github.
|
1201
1218
|
* Document builtin formatters with --help. (#406 Aslak Hellesøy)
|
1202
1219
|
* Added support for using regular expressions when mapping table headers. (Peter Williams)
|
1203
1220
|
|
@@ -1297,7 +1314,7 @@ expected data passed to a step. Here is an example:
|
|
1297
1314
|
end
|
1298
1315
|
|
1299
1316
|
You can do the same trick to compare data from a Rails ActiveRecord table (although this is not a
|
1300
|
-
recommended practice - your Then steps should compare against what users
|
1317
|
+
recommended practice - your Then steps should compare against what users*see*, not what's in the
|
1301
1318
|
database):
|
1302
1319
|
|
1303
1320
|
# This requires that you use the column names in the header of the plain text expected table
|
@@ -1365,7 +1382,7 @@ thanks to a brand new gem called Spork by Tim Harper and Ben Mabey. (You can fin
|
|
1365
1382
|
here: http://github.com/timcharper/spork/tree/master). You can start Spork and have it preload your
|
1366
1383
|
application in a separate process. Spork listens for DRb connections, and when you run cucumber with
|
1367
1384
|
--drb the features will run inside the Spork server instead. Spork provides two simple hooks for preloading
|
1368
|
-
your application - one for framework/stable code (Spork.prefork) and one for the code that
|
1385
|
+
your application - one for framework/stable code (Spork.prefork) and one for the code that*you* write and
|
1369
1386
|
change often (Spork.each_run). Keep in mind that all World, Before, and other Cucumber hooks need to be
|
1370
1387
|
in the Spork.each_run block. Using Spork works great for Ruby on Rails, which can take a while to load,
|
1371
1388
|
but --drb and Spork aren't tied to Rails at all. The new --drb switch also works great alongside autotest
|
@@ -1407,7 +1424,7 @@ generator which is fixed in 0.3.9.
|
|
1407
1424
|
## [0.3.8](https://github.com/cucumber/cucumber/compare/v0.3.7...v0.3.8)
|
1408
1425
|
|
1409
1426
|
This Cucumber version fixes several bugs related to Ruby on Rails and RSpec. If you
|
1410
|
-
use Cucumber with a Rails app we
|
1427
|
+
use Cucumber with a Rails app we*strongly* recommend you bootstrap Cucumber again:
|
1411
1428
|
|
1412
1429
|
ruby script/generate cucumber
|
1413
1430
|
|
@@ -1422,7 +1439,7 @@ use Cucumber with a Rails app we *strongly* recommend you bootstrap Cucumber aga
|
|
1422
1439
|
* The Cucumber Rake task will again fork by default (as 0.3.3 and earlier). Forking must be turned off explicitly. (Aslak Hellesøy)
|
1423
1440
|
|
1424
1441
|
### Bugfixes
|
1425
|
-
* Better coexistence with RSpec - Cucumber now
|
1442
|
+
* Better coexistence with RSpec - Cucumber now*neuters* the part of RSpec that tries to parse ARGV.
|
1426
1443
|
* The differ= exception is gone (#325, #340 Aslak Hellesøy)
|
1427
1444
|
|
1428
1445
|
## [0.3.7](https://github.com/cucumber/cucumber/compare/v0.3.6...v0.3.7)
|
@@ -1470,7 +1487,7 @@ and there is a brand new JUnit formatter - great for Continuous Integration repo
|
|
1470
1487
|
|
1471
1488
|
This release was made especially for the Oslo XP Meetup today.
|
1472
1489
|
|
1473
|
-
** IMPORTANT UPGRADE NOTES FOR RAILS USERS
|
1490
|
+
** IMPORTANT UPGRADE NOTES FOR RAILS USERS**
|
1474
1491
|
|
1475
1492
|
Running Cucumber features in the same Ruby interpreter as Rake doesn't seem to work,
|
1476
1493
|
so you have to explicitly tell the task to fork (like it was doing by default in prior
|
@@ -1610,10 +1627,10 @@ http://wiki.github.com/aslakhellesoy/cucumber/using-rake#profiles
|
|
1610
1627
|
|
1611
1628
|
### Removed/changed features
|
1612
1629
|
* The visitor API has changed slightly:
|
1613
|
-
|
1614
|
-
|
1615
|
-
|
1616
|
-
|
1630
|
+
* \#visit_step_name, #visit_multiline_arg and \#visit_exception are no longer official API methods.
|
1631
|
+
* \#visit_step_result replaces those 3 methods.
|
1632
|
+
* Table and PyString no longer hold status information. Each visitor subclass should store state in @state if needed.
|
1633
|
+
* \#visit_py_string no longer takes a status argument.
|
1617
1634
|
|
1618
1635
|
## [0.2.3](https://github.com/cucumber/cucumber/compare/v0.2.2...v0.2.3)
|
1619
1636
|
|
@@ -2063,6 +2080,7 @@ The step definitions for such multiline steps must define an extra block argumen
|
|
2063
2080
|
* Show the feature file and line for pending steps as a comment when displaying with the pretty formatter. (#40, Joseph Wilk)
|
2064
2081
|
|
2065
2082
|
### Bugfixes
|
2083
|
+
|
2066
2084
|
* Fixed speling errors in Spanish (Daniel Cadenas)
|
2067
2085
|
* ActionMailer delivery_method should not be set to test (#41, Luke Melia)
|
2068
2086
|
* Reverse incorrectly ordered args in webrat select step (#43, David Chelimsky)
|
@@ -2070,9 +2088,11 @@ The step definitions for such multiline steps must define an extra block argumen
|
|
2070
2088
|
* Fixed the HTML Formatter to use actual values for FIT table headers (#30, Joseph Wilk)
|
2071
2089
|
|
2072
2090
|
### Removed features
|
2091
|
+
|
2073
2092
|
* Removed the /^I go to (.*)$/ step from common_webrat.rb - it's not language agnostic and provides little value.
|
2074
2093
|
|
2075
2094
|
### New features
|
2095
|
+
|
2076
2096
|
* Added new --out option to make it easier to specify output from Rake and cucumber.yml
|
2077
2097
|
|
2078
2098
|
## [0.1.7](https://github.com/cucumber/cucumber/compare/v0.1.6...v0.1.7)
|
@@ -2118,11 +2138,13 @@ a plain text step is defined. Not anymore! Cucumber will now output this:
|
|
2118
2138
|
And the result class should be Float # features/steps/calculator_steps.rb:24
|
2119
2139
|
|
2120
2140
|
### Bugfixes
|
2141
|
+
|
2121
2142
|
* Fixed a bug in the command line args being lost when using --profile (#27, Joseph Wilk)
|
2122
2143
|
* Fixed a bug in Webrat selects (Tim Glen)
|
2123
2144
|
* Fixed parsing of DOS line endings (#2, #28, Aslak Hellesøy)
|
2124
2145
|
|
2125
2146
|
### New features
|
2147
|
+
|
2126
2148
|
* Steps can be called from other steps (#3, Bryan Helmkamp, Aslak Hellesøy)
|
2127
2149
|
* Added But keyword to all languages (#21, Aslak Hellesøy)
|
2128
2150
|
* Added --no-source option to display step definition location next to step text (#26, Joseph Wilk, Aslak Hellesøy)
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# language: ht
|
2
|
+
Karakteristik: Adisyon
|
3
|
+
Nan lòd pou fè pou evite erè komik
|
4
|
+
Kòm yon moun sòt nan matematik
|
5
|
+
Mwen ta vle yo dim sòm total nan antre de nimero
|
6
|
+
|
7
|
+
Plan Senaryo: ajoute de nimero
|
8
|
+
Sipoze mwen te antre <input_1> nan kalkilatris la
|
9
|
+
Epi mwen te antre <input_2> nan kalkilatris la
|
10
|
+
Lè Mwen peze <button>
|
11
|
+
Rezilta a ta dwe <output> sou ekran an
|
12
|
+
|
13
|
+
Egzanp:
|
14
|
+
| input_1 | input_2 | button | output |
|
15
|
+
| 20 | 30 | ajoute | 50 |
|
16
|
+
| 2 | 5 | ajoute | 7 |
|
17
|
+
| 0 | 40 | ajoute | 40 |
|
@@ -0,0 +1,10 @@
|
|
1
|
+
# language: ht
|
2
|
+
Karakteristik: Divizyon
|
3
|
+
Nan lòd pou fè pou evite erè komik
|
4
|
+
Kesye-a dwe kapab kalkile yon fraksyon
|
5
|
+
|
6
|
+
Senaryo: nimewo regilye
|
7
|
+
* Mwen te antre 3 nan kalkilatris la
|
8
|
+
* Mwen te antre 2 nan kalkilatris la
|
9
|
+
* Mwen peze divize
|
10
|
+
* Rezilta a ta dwe 1.5 sou ekran an
|
@@ -0,0 +1,25 @@
|
|
1
|
+
|
2
|
+
# encoding: utf-8
|
3
|
+
begin require 'rspec/expectations'; rescue LoadError; require 'spec/expectations'; end
|
4
|
+
require 'cucumber/formatter/unicode'
|
5
|
+
$:.unshift(File.dirname(__FILE__) + '/../../lib')
|
6
|
+
require 'kalkilatris'
|
7
|
+
|
8
|
+
Before do
|
9
|
+
@kalk = Kalkilatris.new
|
10
|
+
end
|
11
|
+
|
12
|
+
After do
|
13
|
+
end
|
14
|
+
|
15
|
+
Sipoze /Mwen te antre nan (\d+) nan kalkilatris la/ do |n|
|
16
|
+
@kalk.push n.to_i
|
17
|
+
end
|
18
|
+
|
19
|
+
Lè /Mwen peze (\w+)/ do |op|
|
20
|
+
@result = @kalk.send op
|
21
|
+
end
|
22
|
+
|
23
|
+
Lè sa a /Rezilta a ta dwe (.*) sou ekran an/ do |result|
|
24
|
+
@result.should == result.to_f
|
25
|
+
end
|
@@ -22,4 +22,47 @@ Feature: Dry Run
|
|
22
22
|
1 step (1 skipped)
|
23
23
|
0m0.012s
|
24
24
|
|
25
|
+
"""
|
26
|
+
Scenario: In the strict mode
|
27
|
+
Given a file named "features/test.feature" with:
|
28
|
+
"""
|
29
|
+
Feature: test
|
30
|
+
Scenario:
|
31
|
+
Given this step fails
|
32
|
+
"""
|
33
|
+
And the standard step definitions
|
34
|
+
When I run `cucumber --dry-run --strict`
|
35
|
+
Then it should pass with exactly:
|
36
|
+
"""
|
37
|
+
Feature: test
|
38
|
+
|
39
|
+
Scenario: # features/test.feature:2
|
40
|
+
Given this step fails # features/step_definitions/steps.rb:4
|
41
|
+
|
42
|
+
1 scenario (1 skipped)
|
43
|
+
1 step (1 skipped)
|
44
|
+
0m0.012s
|
45
|
+
|
46
|
+
"""
|
47
|
+
Scenario: In the strict mode with an undefined step
|
48
|
+
Given a file named "features/test.feature" with:
|
49
|
+
"""
|
50
|
+
Feature: test
|
51
|
+
Scenario:
|
52
|
+
Given this step is undefined
|
53
|
+
"""
|
54
|
+
When I run `cucumber --dry-run --strict`
|
55
|
+
Then it should fail with:
|
56
|
+
"""
|
57
|
+
Feature: test
|
58
|
+
|
59
|
+
Scenario: # features/test.feature:2
|
60
|
+
Given this step is undefined # features/test.feature:3
|
61
|
+
Undefined step: "this step is undefined" (Cucumber::Undefined)
|
62
|
+
features/test.feature:3:in `Given this step is undefined'
|
63
|
+
|
64
|
+
1 scenario (1 undefined)
|
65
|
+
1 step (1 undefined)
|
66
|
+
0m0.012s
|
67
|
+
|
25
68
|
"""
|
@@ -10,8 +10,14 @@ Feature: Strict mode
|
|
10
10
|
Scenario: Missing
|
11
11
|
Given this step passes
|
12
12
|
"""
|
13
|
+
And a file named "features/pending.feature" with:
|
14
|
+
"""
|
15
|
+
Feature: Pending
|
16
|
+
Scenario: Pending
|
17
|
+
Given this step is pending
|
18
|
+
"""
|
13
19
|
|
14
|
-
Scenario: Fail with --strict
|
20
|
+
Scenario: Fail with --strict due to undefined step
|
15
21
|
When I run `cucumber -q features/missing.feature --strict`
|
16
22
|
Then it should fail with:
|
17
23
|
"""
|
@@ -26,6 +32,23 @@ Feature: Strict mode
|
|
26
32
|
1 step (1 undefined)
|
27
33
|
"""
|
28
34
|
|
35
|
+
Scenario: Fail with --strict due to pending step
|
36
|
+
Given the standard step definitions
|
37
|
+
When I run `cucumber -q features/pending.feature --strict`
|
38
|
+
Then it should fail with:
|
39
|
+
"""
|
40
|
+
Feature: Pending
|
41
|
+
|
42
|
+
Scenario: Pending
|
43
|
+
Given this step is pending
|
44
|
+
TODO (Cucumber::Pending)
|
45
|
+
./features/step_definitions/steps.rb:3:in `/^this step is pending$/'
|
46
|
+
features/pending.feature:3:in `Given this step is pending'
|
47
|
+
|
48
|
+
1 scenario (1 pending)
|
49
|
+
1 step (1 pending)
|
50
|
+
"""
|
51
|
+
|
29
52
|
Scenario: Succeed with --strict
|
30
53
|
Given the standard step definitions
|
31
54
|
When I run `cucumber -q features/missing.feature --strict`
|