aslakhellesoy-cucumber 0.1.100.5 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
data/History.txt CHANGED
@@ -1,13 +1,12 @@
1
- == Git (0.2 alpha)
1
+ == 0.2.0 2009-03-18
2
2
 
3
- This is a major rewrite of Cucumber's internals. The rewrite was done to address technical
4
- debt and to have a code base that is easier to evolve and maintain. There are some major
5
- changes to the Gherkin language, so this release is not fully backwards compatible with the 0.1.x series.
6
- You may have to edit your feature files a little. Most importantly, "GivenScenario" and
7
- "More Examples" no longer exist. See the "Removed features" section below for more details
8
- on how to use alternatives.
3
+ This release sports a bunch of new and exciting features, as well a major rewrite of Cucumber's internals.
4
+ The rewrite was done to address technical debt and to have a code base that is easier to evolve and maintain.
5
+
6
+ There are some changes to the Gherkin language that breaks backwards compatible with the 0.1.x series.
7
+ Most importantly, "GivenScenario" and "More Examples" no longer exist. See the "Removed features" section
8
+ below for more details on how to use alternatives.
9
9
 
10
- **** CALL FOR TRANSLATORS ****
11
10
  Since the grammar has changed, there are some new keywords. We have to rely on the community
12
11
  to provide updated translations. This is much easier than before - just update languages.yml.
13
12
  There is no static code generation anymore. To list all languages:
@@ -18,44 +17,10 @@ And to list the keywords for a particular language:
18
17
 
19
18
  cucumber --lang en-lol help
20
19
 
21
- So just go ahead and list the language of your choice and send us updated translations.
22
-
23
20
  There are some really awesome new features in this release: Tagging, Autoformatting, automatic
24
- aliasing of keywords in all languages, much better Ruby 1.9 support and improved output
21
+ aliasing of keywords in all languages, full Ruby 1.9 support and improved output
25
22
  for multiline arguments are some of the highlights.
26
23
 
27
- This version also brings Cucumber even closer to Java. Although it has been possible to
28
- run Cucumber on JRuby since v0.1.11, it has required that step definitions be defined
29
- in Ruby code. This has been a barrier for many Java developers who don't know Ruby.
30
-
31
- With this version you can write step definitions in pure Java code! Java step definitions
32
- are implemented simply by subclassing org.jbehave.scenario.steps.Steps. Example:
33
-
34
- package super.duper;
35
-
36
- public class MyJavaSteps extends Steps {
37
- @Given("I have %count cucumbers in my belly")
38
- public void cucumbersInTheBelly(int count) {
39
- // talk to the Belly class
40
- }
41
-
42
- @Then("I should not be hungry for %n hours")
43
- public void shouldNotBeHungry(int n) {
44
- // Make assertions with JUnit or Hamcrest
45
- }
46
- }
47
-
48
- The only Ruby code you have to write is a little wiring in your env.rb file:
49
-
50
- require 'cucumber/jbehave'
51
- JBehave(super.duper.MyJavaSteps.new)
52
-
53
- You might be wondering what this brings over just using the whole JBehave tool
54
- standalone. Well, it gives you access to the Gherkin language in your features,
55
- which is a richer DSL than JBehave's language. -Over 20 spoken languages, Tables,
56
- Scenario Outlines, the rich command line, the nice output format and everything
57
- pure Ruby users have been enjoying for a while.
58
-
59
24
  == Bugfixes
60
25
  * New StepInvocation breaks console formatter for pending steps. (#241 Jacob Radford)
61
26
  * Within Scenario Outlines when replacing with a nil in a step name use empty string instead. (#237 Joseph Wilk)
@@ -85,21 +50,14 @@ pure Ruby users have been enjoying for a while.
85
50
  * Added Table#map_headers to to allow use of more readable headers (Rob Holland)
86
51
  * New -S/--step-definitions option. Useful (among other things) for tools that implement automcompletion. (#208 Aslak Hellesøy).
87
52
  * The cucumber.rake file defines a dummy :features task if Cucumber is not installed (#225 Josh Nichols)
88
- * Added map_column! to AST tables to ease casting of cell values into relevant types (#223 Rob Holland)
89
- Given /^an expense report for (.*) with the following posts:$/ do |date, posts_table|
90
- posts_table.map_column!('amount') { |a| a.to_i }
91
- posts_table.hashes.each do |post|
92
- # post['amount'] is a Fixnum, rather than a String
93
- end
94
- end
95
- Mapping a column which is not specified in the table will produce an error unless you explicitly pass a 2nd false argument. This is to allow different Scenarios to re-use the step definition with different table columns.
53
+ * Added Table#map_column! to ease casting of cell values into relevant types (#223 Rob Holland)
96
54
  * New --no-diff option (#218 Bryan Ash)
97
55
  * Rails generators supports testunit and rspec option, defaulting to rspec (#217 Josh Nichols)
98
56
  * Sinatra Example (#204 Rob Holland)
99
57
  * Keywords can be aliased in languages.yml. See English for an example (examples: Examples|Scenarios)
100
58
  * Adding support for Background (#153 Joseph Wilk)
101
59
  * Added Česky/Czech (Vojtech Salbaba)
102
- * New --no-multiline option to reduce noise. Useful if lots of features are failing.
60
+ * New --no-multiline option to reduce noise in output. Useful if lots of features are failing. (Aslak Hellesøy)
103
61
  * Added ability to pass URIs to cucumber in addition to files and directories. Useful for troubleshooting! (Aslak Hellesøy)
104
62
  * Groups of tabular scenarios (#57 Aslak Hellesøy)
105
63
  * Tagging scenarios and features. Pick the ones to run with --tags (#54 Aslak Hellesøy)
@@ -116,7 +74,7 @@ pure Ruby users have been enjoying for a while.
116
74
  * New --guess option tries to guess the best step definition match instead of raising Cucumber::Multiple. (Jake Howerton)
117
75
 
118
76
  === Removed features
119
- * "GivenScenario" is gone. Instead you can call Steps from Steps, or wait for "Background (#153)"
77
+ * "GivenScenario" is gone. Instead you can call Steps from Step Definitions, or use the new Background feature (#153)
120
78
  * "More Examples" is gone. "Scenario" + "More Examples" is no longer supported. Use "Scenario Outline" + "Examples" instead.
121
79
  * Pure Ruby features are no longer supported.
122
80
  * Remove --color option in autotest. Can be added manually in cucumber.yml (#215 Jean-Michel Garnier)
data/Manifest.txt CHANGED
@@ -133,7 +133,6 @@ examples/jbehave/src/main/java/cukes/jbehave/examples/trader/model/Stock.java
133
133
  examples/jbehave/src/main/java/cukes/jbehave/examples/trader/model/Trader.java
134
134
  examples/jbehave/src/main/java/cukes/jbehave/examples/trader/persistence/TraderPersister.java
135
135
  examples/jbehave/src/main/java/cukes/jbehave/examples/trader/scenarios/TraderSteps.java
136
- examples/jbehave/target/maven-archiver/pom.properties
137
136
  examples/selenium/Rakefile
138
137
  examples/selenium/features/search.feature
139
138
  examples/selenium/features/step_definitons/search_steps.rb
@@ -128,7 +128,15 @@ module Cucumber
128
128
  # Change how #hashes converts column values. The +column_name+ argument identifies the column
129
129
  # and +conversion_proc+ performs the conversion for each cell in that column. If +strict+ is
130
130
  # true, an error will be raised if the column named +column_name+ is not found. If +strict+
131
- # is false, no error will be raised.
131
+ # is false, no error will be raised. Example:
132
+ #
133
+ # Given /^an expense report for (.*) with the following posts:$/ do |table|
134
+ # posts_table.map_column!('amount') { |a| a.to_i }
135
+ # posts_table.hashes.each do |post|
136
+ # # post['amount'] is a Fixnum, rather than a String
137
+ # end
138
+ # end
139
+ #
132
140
  def map_column!(column_name, strict=true, &conversion_proc)
133
141
  verify_column(column_name) if strict
134
142
  @conversion_procs[column_name] = conversion_proc
@@ -1,9 +1,9 @@
1
1
  module Cucumber #:nodoc:
2
2
  class VERSION #:nodoc:
3
3
  MAJOR = 0
4
- MINOR = 1
5
- TINY = 100
6
- PATCH = 5 # Set to nil for official release
4
+ MINOR = 2
5
+ TINY = 0
6
+ PATCH = nil # Set to nil for official release
7
7
 
8
8
  STRING = [MAJOR, MINOR, TINY, PATCH].compact.join('.')
9
9
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aslakhellesoy-cucumber
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.100.5
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - "Aslak Helles\xC3\xB8y"
@@ -220,7 +220,6 @@ files:
220
220
  - examples/jbehave/src/main/java/cukes/jbehave/examples/trader/model/Trader.java
221
221
  - examples/jbehave/src/main/java/cukes/jbehave/examples/trader/persistence/TraderPersister.java
222
222
  - examples/jbehave/src/main/java/cukes/jbehave/examples/trader/scenarios/TraderSteps.java
223
- - examples/jbehave/target/maven-archiver/pom.properties
224
223
  - examples/selenium/Rakefile
225
224
  - examples/selenium/features/search.feature
226
225
  - examples/selenium/features/step_definitons/search_steps.rb