kosmas58-cucumber 0.1.16.6 → 0.1.99.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/History.txt +126 -2
- data/License.txt +1 -1
- data/Manifest.txt +0 -270
- data/Rakefile +1 -1
- data/bin/cucumber +2 -2
- data/config/hoe.rb +7 -2
- data/examples/cs/features/step_definitons/calculator_steps.rb +1 -1
- data/examples/i18n/README.textile +1 -1
- data/examples/i18n/Rakefile +3 -3
- data/examples/i18n/ar/features/step_definitons/calculator_steps.rb +1 -6
- data/examples/i18n/da/features/step_definitons/kalkulator_steps.rb +1 -1
- data/examples/i18n/de/features/addition.feature +6 -6
- data/examples/i18n/de/features/step_definitons/calculator_steps.rb +2 -2
- data/examples/i18n/en/features/addition.feature +6 -6
- data/examples/i18n/en/features/step_definitons/calculator_steps.rb +2 -2
- data/examples/i18n/es/features/adicion.feature +11 -12
- data/examples/i18n/es/features/step_definitons/calculador_steps.rb +7 -10
- data/examples/i18n/es/lib/calculador.rb +4 -1
- data/examples/i18n/et/features/liitmine.feature +7 -6
- data/examples/i18n/et/features/step_definitions/kalkulaator_steps.rb +1 -1
- data/examples/i18n/fi/features/step_definitons/laskin_steps.rb +1 -1
- data/examples/i18n/fi/features/yhteenlasku.feature +2 -2
- data/examples/i18n/fr/features/addition.feature +2 -2
- data/examples/i18n/fr/features/step_definitions/calculatrice_steps.rb +1 -1
- data/examples/i18n/id/features/addition.feature +6 -6
- data/examples/i18n/id/features/step_definitons/calculator_steps.rb +2 -2
- data/examples/i18n/it/features/step_definitons/calcolatrice_steps.rb +1 -1
- data/examples/i18n/ja/features/step_definitons/calculator_steps.rb +2 -3
- data/examples/i18n/ko/features/step_definitons/calculator_steps.rb +1 -1
- data/examples/i18n/lt/features/addition.feature +7 -6
- data/examples/i18n/lt/features/step_definitons/calculator_steps.rb +2 -2
- data/examples/i18n/no/features/step_definitons/kalkulator_steps.rb +7 -7
- data/examples/i18n/no/features/summering.feature +1 -0
- data/examples/i18n/pt/features/step_definitions/calculadora_steps.rb +1 -1
- data/examples/i18n/ro/features/step_definitons/calculator_steps.rb +1 -1
- data/examples/i18n/se/features/step_definitons/kalkulator_steps.rb +1 -1
- data/examples/i18n/zh-CN/features/step_definitons/calculator_steps.rb +2 -2
- data/examples/java/src/cucumber/demo/Hello.java +16 -0
- data/examples/jbehave/README.textile +17 -0
- data/examples/jbehave/features/support/env.rb +7 -0
- data/examples/jbehave/features/trading.feature +24 -0
- data/examples/jbehave/pom.xml +48 -0
- data/examples/jbehave/src/main/java/cukes/jbehave/examples/trader/converters/TraderConverter.java +32 -0
- data/examples/jbehave/src/main/java/cukes/jbehave/examples/trader/model/Stock.java +42 -0
- data/examples/jbehave/src/main/java/cukes/jbehave/examples/trader/model/Trader.java +29 -0
- data/examples/jbehave/src/main/java/cukes/jbehave/examples/trader/persistence/TraderPersister.java +22 -0
- data/examples/jbehave/src/main/java/cukes/jbehave/examples/trader/scenarios/TraderSteps.java +65 -0
- data/examples/self_test/README.textile +4 -1
- data/examples/{calculator_ruby_features → self_test}/Rakefile +3 -3
- data/examples/self_test/features/background/failing_background.feature +10 -0
- data/examples/self_test/features/background/failing_background_after_success.feature +11 -0
- data/examples/self_test/features/background/multiline_args_background.feature +32 -0
- data/examples/self_test/features/background/passing_background.feature +10 -0
- data/examples/self_test/features/background/pending_background.feature +10 -0
- data/examples/self_test/features/background/scenario_outline_failing_background.feature +16 -0
- data/examples/self_test/features/background/scenario_outline_passing_background.feature +16 -0
- data/examples/self_test/features/call_undefined_step_from_step_def.feature +7 -0
- data/examples/self_test/features/lots_of_undefined.feature +8 -0
- data/examples/self_test/features/outline_sample.feature +11 -5
- data/examples/self_test/features/sample.feature +8 -3
- data/examples/self_test/features/step_definitions/sample_steps.rb +53 -4
- data/examples/self_test/features/support/env.rb +1 -0
- data/examples/self_test/features/support/tag_count_formatter.rb +25 -0
- data/examples/tickets/features/172.feature +28 -0
- data/examples/tickets/features/177/1.feature +29 -0
- data/examples/tickets/features/177/2.feature +21 -0
- data/examples/tickets/features/177/3.feature +18 -0
- data/examples/tickets/features/180.feature +7 -0
- data/examples/tickets/features/scenario_outline.feature +6 -1
- data/examples/tickets/features/step_definitons/tickets_steps.rb +27 -3
- data/examples/tickets/features/tickets.feature +4 -0
- data/features/background.feature +223 -0
- data/features/cucumber_cli.feature +218 -98
- data/features/cucumber_cli_outlines.feature +54 -37
- data/features/custom_formatter.feature +11 -0
- data/features/report_called_undefined_steps.feature +32 -0
- data/features/step_definitions/cucumber_steps.rb +7 -3
- data/features/step_definitions/extra_steps.rb +1 -1
- data/features/support/env.rb +2 -1
- data/gem_tasks/flog.rake +1 -1
- data/gem_tasks/gemspec.rake +2 -2
- data/gem_tasks/jar.rake +67 -0
- data/lib/autotest/cucumber_mixin.rb +17 -23
- data/lib/cucumber.rb +63 -11
- data/lib/cucumber/ast.rb +29 -0
- data/lib/cucumber/ast/background.rb +88 -0
- data/lib/cucumber/ast/comment.rb +26 -0
- data/lib/cucumber/ast/examples.rb +26 -0
- data/lib/cucumber/ast/feature.rb +66 -0
- data/lib/cucumber/ast/features.rb +39 -0
- data/lib/cucumber/ast/filter.rb +22 -0
- data/lib/cucumber/ast/outline_table.rb +49 -0
- data/lib/cucumber/ast/py_string.rb +52 -0
- data/lib/cucumber/ast/scenario.rb +103 -0
- data/lib/cucumber/ast/scenario_outline.rb +92 -0
- data/lib/cucumber/ast/step.rb +161 -0
- data/lib/cucumber/ast/steps.rb +13 -0
- data/lib/cucumber/ast/table.rb +218 -0
- data/lib/cucumber/ast/tags.rb +40 -0
- data/lib/cucumber/ast/visitor.rb +109 -0
- data/lib/cucumber/broadcaster.rb +1 -6
- data/lib/cucumber/cli/configuration.rb +339 -0
- data/lib/cucumber/cli/language_help_formatter.rb +59 -0
- data/lib/cucumber/cli/main.rb +100 -0
- data/lib/cucumber/core_ext/exception.rb +41 -8
- data/lib/cucumber/core_ext/instance_exec.rb +54 -0
- data/lib/cucumber/core_ext/proc.rb +29 -65
- data/lib/cucumber/core_ext/string.rb +19 -0
- data/lib/cucumber/formatter.rb +1 -0
- data/lib/cucumber/{formatters → formatter}/ansicolor.rb +14 -16
- data/lib/cucumber/formatter/color_io.rb +17 -0
- data/lib/cucumber/formatter/console.rb +119 -0
- data/lib/cucumber/formatter/cucumber.css +55 -0
- data/lib/cucumber/formatter/cucumber.sass +49 -0
- data/lib/cucumber/formatter/html.rb +121 -0
- data/lib/cucumber/formatter/pretty.rb +167 -0
- data/lib/cucumber/formatter/profile.rb +77 -0
- data/lib/cucumber/formatter/progress.rb +68 -0
- data/lib/cucumber/formatter/rerun.rb +35 -0
- data/lib/cucumber/formatter/unicode.rb +35 -0
- data/lib/cucumber/formatters/unicode.rb +2 -35
- data/lib/cucumber/jbehave.rb +102 -0
- data/lib/cucumber/languages.yml +128 -75
- data/lib/cucumber/parser.rb +43 -0
- data/lib/cucumber/parser/basic.rb +0 -0
- data/lib/cucumber/parser/feature.rb +1490 -0
- data/lib/cucumber/parser/feature.tt +188 -0
- data/lib/cucumber/parser/i18n.tt +31 -0
- data/lib/cucumber/parser/table.rb +402 -0
- data/lib/cucumber/parser/table.tt +59 -0
- data/lib/cucumber/parser/treetop_ext.rb +75 -0
- data/lib/cucumber/platform.rb +3 -17
- data/lib/cucumber/rails/rspec.rb +5 -2
- data/lib/cucumber/step_definition.rb +87 -0
- data/lib/cucumber/step_mother.rb +151 -66
- data/lib/cucumber/version.rb +2 -2
- data/rails_generators/cucumber/USAGE +3 -2
- data/rails_generators/cucumber/cucumber_generator.rb +33 -23
- data/rails_generators/cucumber/templates/cucumber +2 -1
- data/rails_generators/cucumber/templates/cucumber.rake +6 -1
- data/rails_generators/cucumber/templates/env.rb +1 -1
- data/rails_generators/feature/USAGE +3 -0
- data/rails_generators/feature/feature_generator.rb +30 -6
- data/spec/cucumber/ast/background_spec.rb +58 -0
- data/spec/cucumber/ast/feature_factory.rb +54 -0
- data/spec/cucumber/ast/feature_spec.rb +60 -0
- data/spec/cucumber/ast/py_string_spec.rb +40 -0
- data/spec/cucumber/ast/scenario_outline_spec.rb +64 -0
- data/spec/cucumber/ast/scenario_spec.rb +82 -0
- data/spec/cucumber/ast/step_spec.rb +45 -0
- data/spec/cucumber/ast/table_spec.rb +81 -0
- data/spec/cucumber/ast/tags_spec.rb +23 -0
- data/spec/cucumber/broadcaster_spec.rb +4 -17
- data/spec/cucumber/cli/configuration_spec.rb +239 -0
- data/spec/cucumber/cli/main_spec.rb +164 -0
- data/spec/cucumber/core_ext/proc_spec.rb +27 -35
- data/spec/cucumber/core_ext/string_spec.rb +8 -0
- data/spec/cucumber/{formatters → formatter}/ansicolor_spec.rb +2 -2
- data/spec/cucumber/formatter/html/cucumber.css +37 -0
- data/spec/cucumber/formatter/html/cucumber.js +13 -0
- data/spec/cucumber/formatter/html/index.html +45 -0
- data/spec/cucumber/formatter/html/jquery-1.3.min.js +19 -0
- data/spec/cucumber/formatter/html/jquery.uitableedit.js +100 -0
- data/spec/cucumber/formatters/profile_formatter_spec.rb +17 -16
- data/spec/cucumber/parser/feature_parser_spec.rb +281 -0
- data/spec/cucumber/parser/table_parser_spec.rb +48 -0
- data/spec/cucumber/step_definition_spec.rb +62 -0
- data/spec/cucumber/step_mother_spec.rb +50 -51
- data/spec/cucumber/treetop_parser/empty_feature.feature +1 -1
- data/spec/cucumber/treetop_parser/scenario_outline.feature +1 -1
- data/spec/cucumber/treetop_parser/spaces.feature +3 -1
- data/spec/cucumber/treetop_parser/with_comments.feature +1 -1
- data/spec/cucumber/treetop_parser/with_tags.feature +18 -0
- data/spec/cucumber/world/pending_spec.rb +13 -12
- data/spec/spec_helper.rb +1 -1
- metadata +107 -79
- data/examples/calculator_ruby_features/features/addition.rb +0 -39
- data/examples/calculator_ruby_features/features/step_definitons/calculator_steps.rb +0 -43
- data/gem_tasks/treetop.rake +0 -41
- data/lib/cucumber/cli.rb +0 -355
- data/lib/cucumber/executor.rb +0 -205
- data/lib/cucumber/formatters.rb +0 -1
- data/lib/cucumber/formatters/autotest_formatter.rb +0 -23
- data/lib/cucumber/formatters/cucumber.css +0 -132
- data/lib/cucumber/formatters/cucumber.js +0 -11
- data/lib/cucumber/formatters/html_formatter.rb +0 -152
- data/lib/cucumber/formatters/jquery.js +0 -32
- data/lib/cucumber/formatters/pretty_formatter.rb +0 -285
- data/lib/cucumber/formatters/profile_formatter.rb +0 -92
- data/lib/cucumber/formatters/progress_formatter.rb +0 -61
- data/lib/cucumber/model.rb +0 -1
- data/lib/cucumber/model/table.rb +0 -32
- data/lib/cucumber/step_methods.rb +0 -49
- data/lib/cucumber/tree.rb +0 -16
- data/lib/cucumber/tree/feature.rb +0 -105
- data/lib/cucumber/tree/features.rb +0 -21
- data/lib/cucumber/tree/given_scenario.rb +0 -13
- data/lib/cucumber/tree/scenario.rb +0 -240
- data/lib/cucumber/tree/step.rb +0 -173
- data/lib/cucumber/tree/table.rb +0 -26
- data/lib/cucumber/tree/top_down_visitor.rb +0 -23
- data/lib/cucumber/treetop_parser/feature.treetop.erb +0 -254
- data/lib/cucumber/treetop_parser/feature_ar.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_cy.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_da.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_de.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_en-lol.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_en-tx.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_en.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_es.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_et.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_fi.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_fr.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_id.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_it.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_ja.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_ko.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_lt.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_nl.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_no.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_parser.rb +0 -36
- data/lib/cucumber/treetop_parser/feature_pl.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_pt.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_ro.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_ro2.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_ru.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_se.rb +0 -1951
- data/lib/cucumber/treetop_parser/feature_zh-CN.rb +0 -1951
- data/lib/cucumber/world.rb +0 -1
- data/lib/cucumber/world/pending.rb +0 -22
- data/setup.rb +0 -1585
- data/spec/cucumber/cli_spec.rb +0 -521
- data/spec/cucumber/executor_spec.rb +0 -382
- data/spec/cucumber/formatters/autotest_formatter_spec.rb +0 -26
- data/spec/cucumber/formatters/features.html +0 -269
- data/spec/cucumber/formatters/html_formatter_spec.rb +0 -110
- data/spec/cucumber/formatters/pretty_formatter_spec.rb +0 -410
- data/spec/cucumber/formatters/progress_formatter_spec.rb +0 -81
- data/spec/cucumber/model/table_spec.rb +0 -32
- data/spec/cucumber/tree/feature_spec.rb +0 -122
- data/spec/cucumber/tree/row_scenario_outline_spec.rb +0 -73
- data/spec/cucumber/tree/row_scenario_spec.rb +0 -55
- data/spec/cucumber/tree/row_step_outline_spec.rb +0 -38
- data/spec/cucumber/tree/scenario_outline_spec.rb +0 -50
- data/spec/cucumber/tree/scenario_spec.rb +0 -134
- data/spec/cucumber/tree/step_outline_spec.rb +0 -17
- data/spec/cucumber/tree/step_spec.rb +0 -59
- data/spec/cucumber/treetop_parser/feature_parser_spec.rb +0 -120
data/History.txt
CHANGED
@@ -1,9 +1,130 @@
|
|
1
|
-
===
|
1
|
+
=== Added language option to generators and rake
|
2
2
|
* Added language as rake option
|
3
3
|
* Added GemInstaller config files
|
4
4
|
* Added CruiseControl.rb files
|
5
5
|
|
6
|
-
== 0.
|
6
|
+
== Git (0.2 alpha)
|
7
|
+
|
8
|
+
This is a major rewrite of Cucumber's internals. The rewrite was done to address technical
|
9
|
+
debt and to have a codebase that is easier to evolve and maintain. There are some major
|
10
|
+
changes to the Gherkin language, so this release is not fully backwards compatible. You
|
11
|
+
may have to edit your feature files a little. Most importantly, "GivenScenario" and
|
12
|
+
"More Examples" no longer exist. See the "Removed features" section below for more details
|
13
|
+
on how to use alternatives.
|
14
|
+
|
15
|
+
**** CALL FOR TRANSLATORS ****
|
16
|
+
Since the grammar has changed, there are some new keywords. We have to rely on the community
|
17
|
+
to provide updated translations. This is much easier than before - just update languages.yml.
|
18
|
+
There is no static code generation anymore. To list all languages:
|
19
|
+
|
20
|
+
cucumber --lang help
|
21
|
+
|
22
|
+
And to list the keywords for a particular language:
|
23
|
+
|
24
|
+
cucumber --lang en-lol help
|
25
|
+
|
26
|
+
So just go ahead and list the language of your choice and send us updated translations.
|
27
|
+
|
28
|
+
There are some really awesome new features in this release: Tagging, Autoformatting, automatic
|
29
|
+
aliasing of keywords in all languages, much better Ruby 1.9 support and improved output
|
30
|
+
for multiline arguments are some of the highlights.
|
31
|
+
|
32
|
+
This version also brings Cucumber even closer to Java. Although it has been possible to
|
33
|
+
run Cucumber on JRuby since v0.1.11, it has required that step definitions be defined
|
34
|
+
in Ruby code. This has been a barrier for many Java developers who don't know Ruby.
|
35
|
+
|
36
|
+
With this version you can write step definitions in pure Java code! Java step definitions
|
37
|
+
are implemented simply by subclassing org.jbehave.scenario.steps.Steps. Example:
|
38
|
+
|
39
|
+
package super.duper;
|
40
|
+
|
41
|
+
public class MyJavaSteps extends Steps {
|
42
|
+
@Given("I have %count cucumbers in my belly")
|
43
|
+
public void cucumbersInTheBelly(int count) {
|
44
|
+
// talk to the Belly class
|
45
|
+
}
|
46
|
+
|
47
|
+
@Then("I should not be hungry for %n hours")
|
48
|
+
public void shouldNotBeHungry(int n) {
|
49
|
+
// Make assertions with JUnit or Hamcrest
|
50
|
+
}
|
51
|
+
}
|
52
|
+
|
53
|
+
The only Ruby code you have to write is a little wiring in your env.rb file:
|
54
|
+
|
55
|
+
require 'cucumber/jbehave'
|
56
|
+
JBehave(super.duper.MyJavaSteps.new)
|
57
|
+
|
58
|
+
You might be wondering what this brings over just using the whole JBehave tool
|
59
|
+
standalone. Well, it gives you access to the Gherkin language in your features,
|
60
|
+
which is a richer DSL than JBehave's language. -Over 20 spoken languages, Tables,
|
61
|
+
Scenario Outlines, the rich command line, the nice output format and everything
|
62
|
+
pure Ruby users have been enjoying for a while.
|
63
|
+
|
64
|
+
== TODO Before 0.2 release
|
65
|
+
* Make sure all features and specs pass on Windows, JRuby and Ruby 1.9
|
66
|
+
* Tighten up and simplify the grammar. More edge case features/specs.
|
67
|
+
* Reintroduce StepInvocation. Reduce some of the redundant calls to StepDefinition/StepMother. Align with JBehave.
|
68
|
+
* Make some class diagrams.
|
69
|
+
* Implement at least a basic HTML formatter
|
70
|
+
* Run a single cucumber feature from rake "rake features FEATURE=/path/to/feature:line"
|
71
|
+
* Wiki page about running subsets
|
72
|
+
** file:line
|
73
|
+
*** scenario (or step within)
|
74
|
+
*** scenario outline
|
75
|
+
*** scenario outline examples
|
76
|
+
*** line in an example table
|
77
|
+
*** background (same as whole file)
|
78
|
+
*** fix bugs in any of those cases (there are some)
|
79
|
+
** --tags
|
80
|
+
*** Link to page about tags
|
81
|
+
* Tags with arguments
|
82
|
+
* cucumber.jar + examples
|
83
|
+
** Remove need for -S cucumber
|
84
|
+
** Full jar and simple jar
|
85
|
+
|
86
|
+
== Bugfixes
|
87
|
+
* Depend on polyglot version (0.2.4) to avoid masking require errors. (Aslak Hellesøy).
|
88
|
+
* -n option does not suppress the line info for a Scenario Outline (#175 Aslak Hellesøy)
|
89
|
+
* Errors with rspec-rails matchers in cucumber 0.1.99 (#173 David Chelimsky)
|
90
|
+
* Can't use an empty string as a table value in a scenario outline (#172 Aslak Hellesøy)
|
91
|
+
* Really skip skipped steps (#90 Aslak Hellesøy)
|
92
|
+
* No output for multi-line strings (#71 Aslak Hellesøy)
|
93
|
+
* Fix cucumber/formatters/unicode flaws on Windows (#145 Michael)
|
94
|
+
* Autotest-related Bugs: YAML missing (#136 Tobias Pape)
|
95
|
+
* Overeager "rescue LoadError" hides lots of errors (#137 Jonathan del Strother)
|
96
|
+
* Nested steps don't show mismatch (#116 Aslak Hellesøy)
|
97
|
+
* Pending steps in > steps called from steps (#65 Aslak Hellesøy)
|
98
|
+
|
99
|
+
=== New features
|
100
|
+
* Keywords can be aliased in languages.yml. See English for an example (examples: Examples|Scenarios)
|
101
|
+
* Adding support for Background (#153 Joseph Wilk)
|
102
|
+
* Added Česky/Czech (Vojtech Salbaba)
|
103
|
+
* New --no-multiline option to reduce noise. Useful if lots of features are failing.
|
104
|
+
* Added ability to pass URIs to cucumber in addition to files and directories. Useful for troubleshooting! (Aslak Hellesøy)
|
105
|
+
* Groups of tabular scenarios (#57 Aslak Hellesøy)
|
106
|
+
* Tagging scenarios and features. Pick the ones to run with --tags (#54 Aslak Hellesøy)
|
107
|
+
* Make the current scenario available to the steps. (#44 Aslak Hellesøy)
|
108
|
+
* Step definition snippets contain a 'pending' call (#84 Aslak Hellesøy)
|
109
|
+
* Call multiline steps from other steps (#144 Aslak Hellesøy)
|
110
|
+
* Run cucumber with --autoformat DIR to reformat (pretty print) all of your feature files. (Aslak Hellesøy)
|
111
|
+
* New --strict option exits with an error code if there are undefined steps. (#52 Aslak Hellesøy)
|
112
|
+
* Given, When, Then are automatically aliased to current language.
|
113
|
+
Ruby 1.8 doesn't allow non-ascii method names in the source, so unless you're on 1.9
|
114
|
+
you will have to use Given, When, Then or set up your own aliases. Here is Norwegian:
|
115
|
+
Cucumber.alias_steps(%w{Naar Saa}) # Når, Så already aliased, but can't be called. (Aslak Hellesøy)
|
116
|
+
* Run cucumber --language help to see all supported languages. (Aslak Hellesøy)
|
117
|
+
* Run cucumber --language LANG help to see keywords for a given language. (Aslak Hellesøy)
|
118
|
+
* Multiline arguments (tables and """ strings) are printed in the output. (Aslak Hellesøy)
|
119
|
+
* It's no longer necessary to compile the Treetop grammar when adding a new language. Localised parser is generated at runtime. (Aslak Hellesøy)
|
120
|
+
* New --guess option tries to guess the best step definition match instead of raising Cucumber::Multiple. (Jake Howerton)
|
121
|
+
|
122
|
+
=== Removed features
|
123
|
+
* "GivenScenario" is gone. Instead you can call Steps from Steps, or wait for "Background (#153)"
|
124
|
+
* "More Examples" is gone. "Scenario" + "More Examples" is no longer supported. Use "Scenario Outline" + "Examples" instead.
|
125
|
+
* Pure Ruby features are no longer supported.
|
126
|
+
|
127
|
+
== (0.16.4 aslakhellesoy-webrat gem on GitHub)
|
7
128
|
|
8
129
|
Bugfix release.
|
9
130
|
|
@@ -22,6 +143,7 @@ to this:
|
|
22
143
|
* Use Webrat's #contain matcher in generated "I should (not) see" step definitions (Bryan Helmkamp)
|
23
144
|
|
24
145
|
== Bugfixes
|
146
|
+
* Escaped quotes - \" - inside multiline strings will be unescaped.
|
25
147
|
* Flush output in HTML formatter since JRuby doesnt do it automatically (Diego Carrion)
|
26
148
|
* Better handling of ARGV (#169 David Chelimsky, Ben Mabey)
|
27
149
|
* Compatibility with ruby-debug (do ARGV.dup in bin/cucumber so it can restart ruby with same args) (Aslak Hellesøy)
|
@@ -32,6 +154,8 @@ This is a small bugfix release. The most notable improvement is compatibility wi
|
|
32
154
|
upgrade both Cucumber and Webrat gems.
|
33
155
|
|
34
156
|
=== New features
|
157
|
+
* Allow argument placeholders in step tables and multiline comments (#121 Joseph Wilk)
|
158
|
+
* Scenario Outline can be followed by several named Examples sections (#123 Aslak Hellesøy)
|
35
159
|
* Add the #binary= method back to the Rake task. It is needed by merb_cucumber for running the features of a merb app with it's bundled gems. (Thomas Marek)
|
36
160
|
* Added a /^When I go to (.+)$/ step definition to webrat_steps.rb and a simple page name to path mapping method (Bryan Helmkamp)
|
37
161
|
|
data/License.txt
CHANGED
data/Manifest.txt
CHANGED
@@ -1,270 +0,0 @@
|
|
1
|
-
History.txt
|
2
|
-
License.txt
|
3
|
-
Manifest.txt
|
4
|
-
README.txt
|
5
|
-
Rakefile
|
6
|
-
bin/cucumber
|
7
|
-
config/hoe.rb
|
8
|
-
config/requirements.rb
|
9
|
-
cucumber.yml
|
10
|
-
examples/calculator_ruby_features/Rakefile
|
11
|
-
examples/calculator_ruby_features/features/addition.rb
|
12
|
-
examples/calculator_ruby_features/features/step_definitons/calculator_steps.rb
|
13
|
-
examples/cs/README.textile
|
14
|
-
examples/cs/Rakefile
|
15
|
-
examples/cs/compile.bat
|
16
|
-
examples/cs/features/addition.feature
|
17
|
-
examples/cs/features/step_definitons/calculator_steps.rb
|
18
|
-
examples/cs/src/demo/Calculator.cs
|
19
|
-
examples/dos_line_endings/Rakefile
|
20
|
-
examples/dos_line_endings/features/dos_line_endings.feature
|
21
|
-
examples/i18n/README.textile
|
22
|
-
examples/i18n/Rakefile
|
23
|
-
examples/i18n/ar/Rakefile
|
24
|
-
examples/i18n/ar/features/addition.feature
|
25
|
-
examples/i18n/ar/features/step_definitons/calculator_steps.rb
|
26
|
-
examples/i18n/ar/lib/calculator.rb
|
27
|
-
examples/i18n/da/Rakefile
|
28
|
-
examples/i18n/da/features/step_definitons/kalkulator_steps.rb
|
29
|
-
examples/i18n/da/features/summering.feature
|
30
|
-
examples/i18n/da/lib/kalkulator.rb
|
31
|
-
examples/i18n/de/Rakefile
|
32
|
-
examples/i18n/de/features/addition.feature
|
33
|
-
examples/i18n/de/features/division.feature
|
34
|
-
examples/i18n/de/features/step_definitons/calculator_steps.rb
|
35
|
-
examples/i18n/de/lib/calculator.rb
|
36
|
-
examples/i18n/en/Rakefile
|
37
|
-
examples/i18n/en/features/addition.feature
|
38
|
-
examples/i18n/en/features/division.feature
|
39
|
-
examples/i18n/en/features/step_definitons/calculator_steps.rb
|
40
|
-
examples/i18n/en/lib/calculator.rb
|
41
|
-
examples/i18n/es/Rakefile
|
42
|
-
examples/i18n/es/features/adicion.feature
|
43
|
-
examples/i18n/es/features/step_definitons/calculador_steps.rb
|
44
|
-
examples/i18n/es/lib/calculador.rb
|
45
|
-
examples/i18n/et/Rakefile
|
46
|
-
examples/i18n/et/features/liitmine.feature
|
47
|
-
examples/i18n/et/features/step_definitions/kalkulaator_steps.rb
|
48
|
-
examples/i18n/et/lib/kalkulaator.rb
|
49
|
-
examples/i18n/fi/Rakefile
|
50
|
-
examples/i18n/fi/features/jakolasku.feature
|
51
|
-
examples/i18n/fi/features/step_definitons/laskin_steps.rb
|
52
|
-
examples/i18n/fi/features/yhteenlasku.feature
|
53
|
-
examples/i18n/fi/lib/laskin.rb
|
54
|
-
examples/i18n/fr/Rakefile
|
55
|
-
examples/i18n/fr/features/addition.feature
|
56
|
-
examples/i18n/fr/features/step_definitions/calculatrice_steps.rb
|
57
|
-
examples/i18n/fr/lib/calculatrice.rb
|
58
|
-
examples/i18n/id/Rakefile
|
59
|
-
examples/i18n/id/features/addition.feature
|
60
|
-
examples/i18n/id/features/division.feature
|
61
|
-
examples/i18n/id/features/step_definitons/calculator_steps.rb
|
62
|
-
examples/i18n/id/lib/calculator.rb
|
63
|
-
examples/i18n/it/Rakefile
|
64
|
-
examples/i18n/it/features/somma.feature
|
65
|
-
examples/i18n/it/features/step_definitons/calcolatrice_steps.rb
|
66
|
-
examples/i18n/it/lib/calcolatrice.rb
|
67
|
-
examples/i18n/ja/README.txt
|
68
|
-
examples/i18n/ja/Rakefile
|
69
|
-
examples/i18n/ja/features/addition.feature
|
70
|
-
examples/i18n/ja/features/division.feature
|
71
|
-
examples/i18n/ja/features/step_definitons/calculator_steps.rb
|
72
|
-
examples/i18n/ja/lib/calculator.rb
|
73
|
-
examples/i18n/ko/Rakefile
|
74
|
-
examples/i18n/ko/features/addition.feature
|
75
|
-
examples/i18n/ko/features/division.feature
|
76
|
-
examples/i18n/ko/features/step_definitons/calculator_steps.rb
|
77
|
-
examples/i18n/ko/lib/calculator.rb
|
78
|
-
examples/i18n/lt/Rakefile
|
79
|
-
examples/i18n/lt/features/addition.feature
|
80
|
-
examples/i18n/lt/features/division.feature
|
81
|
-
examples/i18n/lt/features/step_definitons/calculator_steps.rb
|
82
|
-
examples/i18n/lt/lib/calculator.rb
|
83
|
-
examples/i18n/no/Rakefile
|
84
|
-
examples/i18n/no/features/step_definitons/kalkulator_steps.rb
|
85
|
-
examples/i18n/no/features/summering.feature
|
86
|
-
examples/i18n/no/lib/kalkulator.rb
|
87
|
-
examples/i18n/pt/Rakefile
|
88
|
-
examples/i18n/pt/features/adicao.feature
|
89
|
-
examples/i18n/pt/features/step_definitions/calculadora_steps.rb
|
90
|
-
examples/i18n/pt/lib/calculadora.rb
|
91
|
-
examples/i18n/ro/Rakefile
|
92
|
-
examples/i18n/ro/features/step_definitons/calculator_steps.rb
|
93
|
-
examples/i18n/ro/features/suma.feature
|
94
|
-
examples/i18n/ro/lib/calculator.rb
|
95
|
-
examples/i18n/se/Rakefile
|
96
|
-
examples/i18n/se/features/step_definitons/kalkulator_steps.rb
|
97
|
-
examples/i18n/se/features/summering.feature
|
98
|
-
examples/i18n/se/lib/kalkulator.rb
|
99
|
-
examples/i18n/zh-CN/Rakefile
|
100
|
-
examples/i18n/zh-CN/features/addition.feature
|
101
|
-
examples/i18n/zh-CN/features/step_definitons/calculator_steps.rb
|
102
|
-
examples/i18n/zh-CN/lib/calculator.rb
|
103
|
-
examples/java/README.textile
|
104
|
-
examples/java/Rakefile
|
105
|
-
examples/java/features/hello.feature
|
106
|
-
examples/java/features/step_definitons/hello_steps.rb
|
107
|
-
examples/java/features/step_definitons/tree_steps.rb
|
108
|
-
examples/java/features/tree.feature
|
109
|
-
examples/selenium/Rakefile
|
110
|
-
examples/selenium/features/search.feature
|
111
|
-
examples/selenium/features/step_definitons/stories_steps.rb
|
112
|
-
examples/self_test/README.textile
|
113
|
-
examples/self_test/features/outline_sample.feature
|
114
|
-
examples/self_test/features/sample.feature
|
115
|
-
examples/self_test/features/step_definitions/sample_steps.rb
|
116
|
-
examples/test_unit/Rakefile
|
117
|
-
examples/test_unit/features/step_definitions/test_unit_steps.rb
|
118
|
-
examples/test_unit/features/test_unit.feature
|
119
|
-
examples/tickets/Rakefile
|
120
|
-
examples/tickets/cucumber.yml
|
121
|
-
examples/tickets/features/lib/eatting_machine.rb
|
122
|
-
examples/tickets/features/lib/pantry.rb
|
123
|
-
examples/tickets/features/scenario_outline.feature
|
124
|
-
examples/tickets/features/step_definitons/scenario_outline_steps.rb
|
125
|
-
examples/tickets/features/step_definitons/tickets_steps.rb
|
126
|
-
examples/tickets/features/tickets.feature
|
127
|
-
examples/watir/README.textile
|
128
|
-
examples/watir/Rakefile
|
129
|
-
examples/watir/features/search.feature
|
130
|
-
examples/watir/features/step_definitons/search_steps.rb
|
131
|
-
examples/watir/features/support/env.rb
|
132
|
-
features/cucumber_cli.feature
|
133
|
-
features/cucumber_cli_outlines.feature
|
134
|
-
features/step_definitions/cucumber_steps.rb
|
135
|
-
features/step_definitions/extra_steps.rb
|
136
|
-
features/support/env.rb
|
137
|
-
gem_tasks/deployment.rake
|
138
|
-
gem_tasks/environment.rake
|
139
|
-
gem_tasks/features.rake
|
140
|
-
gem_tasks/fix_cr_lf.rake
|
141
|
-
gem_tasks/flog.rake
|
142
|
-
gem_tasks/gemspec.rake
|
143
|
-
gem_tasks/rspec.rake
|
144
|
-
gem_tasks/treetop.rake
|
145
|
-
gem_tasks/yard.rake
|
146
|
-
lib/autotest/cucumber.rb
|
147
|
-
lib/autotest/cucumber_mixin.rb
|
148
|
-
lib/autotest/cucumber_rails.rb
|
149
|
-
lib/autotest/cucumber_rails_rspec.rb
|
150
|
-
lib/autotest/cucumber_rspec.rb
|
151
|
-
lib/autotest/discover.rb
|
152
|
-
lib/cucumber.rb
|
153
|
-
lib/cucumber/broadcaster.rb
|
154
|
-
lib/cucumber/cli.rb
|
155
|
-
lib/cucumber/core_ext/exception.rb
|
156
|
-
lib/cucumber/core_ext/proc.rb
|
157
|
-
lib/cucumber/core_ext/string.rb
|
158
|
-
lib/cucumber/executor.rb
|
159
|
-
lib/cucumber/formatters.rb
|
160
|
-
lib/cucumber/formatters/ansicolor.rb
|
161
|
-
lib/cucumber/formatters/autotest_formatter.rb
|
162
|
-
lib/cucumber/formatters/cucumber.css
|
163
|
-
lib/cucumber/formatters/cucumber.js
|
164
|
-
lib/cucumber/formatters/html_formatter.rb
|
165
|
-
lib/cucumber/formatters/jquery.js
|
166
|
-
lib/cucumber/formatters/pretty_formatter.rb
|
167
|
-
lib/cucumber/formatters/profile_formatter.rb
|
168
|
-
lib/cucumber/formatters/progress_formatter.rb
|
169
|
-
lib/cucumber/formatters/unicode.rb
|
170
|
-
lib/cucumber/languages.yml
|
171
|
-
lib/cucumber/model.rb
|
172
|
-
lib/cucumber/model/table.rb
|
173
|
-
lib/cucumber/platform.rb
|
174
|
-
lib/cucumber/rails/rspec.rb
|
175
|
-
lib/cucumber/rails/world.rb
|
176
|
-
lib/cucumber/rake/task.rb
|
177
|
-
lib/cucumber/step_methods.rb
|
178
|
-
lib/cucumber/step_mother.rb
|
179
|
-
lib/cucumber/tree.rb
|
180
|
-
lib/cucumber/tree/feature.rb
|
181
|
-
lib/cucumber/tree/features.rb
|
182
|
-
lib/cucumber/tree/given_scenario.rb
|
183
|
-
lib/cucumber/tree/scenario.rb
|
184
|
-
lib/cucumber/tree/step.rb
|
185
|
-
lib/cucumber/tree/table.rb
|
186
|
-
lib/cucumber/tree/top_down_visitor.rb
|
187
|
-
lib/cucumber/treetop_parser/feature.treetop.erb
|
188
|
-
lib/cucumber/treetop_parser/feature_ar.rb
|
189
|
-
lib/cucumber/treetop_parser/feature_cy.rb
|
190
|
-
lib/cucumber/treetop_parser/feature_da.rb
|
191
|
-
lib/cucumber/treetop_parser/feature_de.rb
|
192
|
-
lib/cucumber/treetop_parser/feature_en-lol.rb
|
193
|
-
lib/cucumber/treetop_parser/feature_en-tx.rb
|
194
|
-
lib/cucumber/treetop_parser/feature_en.rb
|
195
|
-
lib/cucumber/treetop_parser/feature_es.rb
|
196
|
-
lib/cucumber/treetop_parser/feature_et.rb
|
197
|
-
lib/cucumber/treetop_parser/feature_fi.rb
|
198
|
-
lib/cucumber/treetop_parser/feature_fr.rb
|
199
|
-
lib/cucumber/treetop_parser/feature_id.rb
|
200
|
-
lib/cucumber/treetop_parser/feature_it.rb
|
201
|
-
lib/cucumber/treetop_parser/feature_ja.rb
|
202
|
-
lib/cucumber/treetop_parser/feature_ko.rb
|
203
|
-
lib/cucumber/treetop_parser/feature_lt.rb
|
204
|
-
lib/cucumber/treetop_parser/feature_nl.rb
|
205
|
-
lib/cucumber/treetop_parser/feature_no.rb
|
206
|
-
lib/cucumber/treetop_parser/feature_parser.rb
|
207
|
-
lib/cucumber/treetop_parser/feature_pl.rb
|
208
|
-
lib/cucumber/treetop_parser/feature_pt.rb
|
209
|
-
lib/cucumber/treetop_parser/feature_ro.rb
|
210
|
-
lib/cucumber/treetop_parser/feature_ro2.rb
|
211
|
-
lib/cucumber/treetop_parser/feature_ru.rb
|
212
|
-
lib/cucumber/treetop_parser/feature_se.rb
|
213
|
-
lib/cucumber/treetop_parser/feature_zh-CN.rb
|
214
|
-
lib/cucumber/version.rb
|
215
|
-
lib/cucumber/world.rb
|
216
|
-
lib/cucumber/world/pending.rb
|
217
|
-
rails_generators/cucumber/USAGE
|
218
|
-
rails_generators/cucumber/cucumber_generator.rb
|
219
|
-
rails_generators/cucumber/templates/cucumber
|
220
|
-
rails_generators/cucumber/templates/cucumber.rake
|
221
|
-
rails_generators/cucumber/templates/env.rb
|
222
|
-
rails_generators/cucumber/templates/paths.rb
|
223
|
-
rails_generators/cucumber/templates/webrat_steps.rb
|
224
|
-
rails_generators/feature/USAGE
|
225
|
-
rails_generators/feature/feature_generator.rb
|
226
|
-
rails_generators/feature/templates/feature.erb
|
227
|
-
rails_generators/feature/templates/steps.erb
|
228
|
-
setup.rb
|
229
|
-
spec/cucumber/broadcaster_spec.rb
|
230
|
-
spec/cucumber/cli_spec.rb
|
231
|
-
spec/cucumber/core_ext/proc_spec.rb
|
232
|
-
spec/cucumber/core_ext/string_spec.rb
|
233
|
-
spec/cucumber/executor_spec.rb
|
234
|
-
spec/cucumber/formatters/ansicolor_spec.rb
|
235
|
-
spec/cucumber/formatters/autotest_formatter_spec.rb
|
236
|
-
spec/cucumber/formatters/features.html
|
237
|
-
spec/cucumber/formatters/html_formatter_spec.rb
|
238
|
-
spec/cucumber/formatters/pretty_formatter_spec.rb
|
239
|
-
spec/cucumber/formatters/profile_formatter_spec.rb
|
240
|
-
spec/cucumber/formatters/progress_formatter_spec.rb
|
241
|
-
spec/cucumber/model/table_spec.rb
|
242
|
-
spec/cucumber/rails/stubs/mini_rails.rb
|
243
|
-
spec/cucumber/rails/stubs/test_help.rb
|
244
|
-
spec/cucumber/rails/world_spec.rb
|
245
|
-
spec/cucumber/sell_cucumbers.feature
|
246
|
-
spec/cucumber/step_mother_spec.rb
|
247
|
-
spec/cucumber/tree/feature_spec.rb
|
248
|
-
spec/cucumber/tree/row_scenario_outline_spec.rb
|
249
|
-
spec/cucumber/tree/row_scenario_spec.rb
|
250
|
-
spec/cucumber/tree/row_step_outline_spec.rb
|
251
|
-
spec/cucumber/tree/scenario_outline_spec.rb
|
252
|
-
spec/cucumber/tree/scenario_spec.rb
|
253
|
-
spec/cucumber/tree/step_outline_spec.rb
|
254
|
-
spec/cucumber/tree/step_spec.rb
|
255
|
-
spec/cucumber/treetop_parser/empty_feature.feature
|
256
|
-
spec/cucumber/treetop_parser/empty_scenario.feature
|
257
|
-
spec/cucumber/treetop_parser/empty_scenario_outline.feature
|
258
|
-
spec/cucumber/treetop_parser/feature_parser_spec.rb
|
259
|
-
spec/cucumber/treetop_parser/fit_scenario.feature
|
260
|
-
spec/cucumber/treetop_parser/given_scenario.feature
|
261
|
-
spec/cucumber/treetop_parser/invalid_scenario_outlines.feature
|
262
|
-
spec/cucumber/treetop_parser/multiline_steps.feature
|
263
|
-
spec/cucumber/treetop_parser/multiple_tables.feature
|
264
|
-
spec/cucumber/treetop_parser/scenario_outline.feature
|
265
|
-
spec/cucumber/treetop_parser/spaces.feature
|
266
|
-
spec/cucumber/treetop_parser/test_dos.feature
|
267
|
-
spec/cucumber/treetop_parser/with_comments.feature
|
268
|
-
spec/cucumber/world/pending_spec.rb
|
269
|
-
spec/spec.opts
|
270
|
-
spec/spec_helper.rb
|
data/Rakefile
CHANGED
@@ -6,4 +6,4 @@ require 'config/hoe' # setup Hoe + all gem configuration
|
|
6
6
|
Dir['gem_tasks/**/*.rake'].each { |rake| load rake }
|
7
7
|
|
8
8
|
# Hoe gives us :default => :test, but we don't have Test::Unit tests.
|
9
|
-
Rake::Task[:default].clear_prerequisites
|
9
|
+
Rake::Task[:default].clear_prerequisites rescue nil # For some super weird reason this fails for some...
|
data/bin/cucumber
CHANGED
@@ -2,5 +2,5 @@
|
|
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/cli'
|
6
|
-
Cucumber::
|
5
|
+
require 'cucumber/cli/main'
|
6
|
+
Cucumber::Cli::Main.execute(ARGV.dup)
|
data/config/hoe.rb
CHANGED
@@ -5,7 +5,7 @@ AUTHOR = 'Aslak Hellesøy' # can also be an array of Authors
|
|
5
5
|
EMAIL = "aslak.hellesoy@gmail.com"
|
6
6
|
DESCRIPTION = "Executable Feature scenarios"
|
7
7
|
GEM_NAME = 'cucumber' # what ppl will type to install your gem
|
8
|
-
HOMEPATH = "http://
|
8
|
+
HOMEPATH = "http://cukes.info"
|
9
9
|
RUBYFORGE_PROJECT = 'rspec'
|
10
10
|
|
11
11
|
@config_file = "~/.rubyforge/user-config.yml"
|
@@ -58,7 +58,12 @@ $hoe = Hoe.new(GEM_NAME, VERS) do |p|
|
|
58
58
|
# == Optional
|
59
59
|
p.changes = p.paragraphs_of("History.txt", 0..1).join("\n\n")
|
60
60
|
#p.extra_deps = [] # An array of rubygem dependencies [name, version], e.g. [ ['active_support', '>= 1.3.1'] ]
|
61
|
-
p.extra_deps = [
|
61
|
+
p.extra_deps = [
|
62
|
+
['term-ansicolor', '>= 1.0.3'],
|
63
|
+
['treetop', '>= 1.2.4'],
|
64
|
+
['polyglot', '>= 0.2.4'], # Remove this when Treetop no longer loads polyglot by default.
|
65
|
+
['diff-lcs', '>= 1.1.2']
|
66
|
+
]
|
62
67
|
|
63
68
|
#p.spec_extras = {} # A hash of extra values to set in the gemspec.
|
64
69
|
|