kosmas58-cucumber 0.1.99.23 → 0.1.100.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.
Files changed (100) hide show
  1. data/History.txt +8 -23
  2. data/Manifest.txt +14 -2
  3. data/examples/i18n/en-lol/Rakefile +6 -0
  4. data/examples/i18n/en-lol/features/step_definitions/cucumbrz_steps.rb +16 -0
  5. data/examples/i18n/en-lol/features/stuffing.feature +8 -0
  6. data/examples/i18n/en-lol/features/support/env.rb +8 -0
  7. data/examples/i18n/en-lol/lib/basket.rb +12 -0
  8. data/examples/i18n/en-lol/lib/belly.rb +11 -0
  9. data/examples/i18n/et/features/jagamine.feature +9 -0
  10. data/examples/jbehave/README.textile +4 -1
  11. data/examples/jbehave/features/trading.feature +4 -0
  12. data/examples/jbehave/pom.xml +5 -0
  13. data/examples/jbehave/src/main/java/cukes/jbehave/examples/trader/scenarios/TraderSteps.java +6 -1
  14. data/examples/selenium/features/step_definitons/search_steps.rb +13 -0
  15. data/examples/selenium/features/support/env.rb +19 -0
  16. data/examples/selenium_webrat/Rakefile +6 -0
  17. data/examples/selenium_webrat/features/search.feature +9 -0
  18. data/examples/selenium_webrat/features/step_definitons/search_steps.rb +13 -0
  19. data/examples/selenium_webrat/features/support/env.rb +41 -0
  20. data/examples/self_test/Rakefile +1 -1
  21. data/examples/self_test/features/background/failing_background.feature +1 -0
  22. data/examples/self_test/features/step_definitions/sample_steps.rb +1 -1
  23. data/examples/self_test/features/support/tag_count_formatter.rb +1 -1
  24. data/examples/tickets/Rakefile +13 -8
  25. data/examples/tickets/cucumber.yml +2 -1
  26. data/examples/tickets/features/236.feature +13 -0
  27. data/examples/tickets/features/241.feature +13 -0
  28. data/examples/tickets/features/step_definitons/tickets_steps.rb +17 -4
  29. data/examples/tickets/features/tickets.feature +1 -1
  30. data/features/background.feature +9 -11
  31. data/features/cucumber_cli.feature +24 -1
  32. data/features/cucumber_cli_outlines.feature +10 -19
  33. data/features/report_called_undefined_steps.feature +2 -0
  34. data/gem_tasks/rspec.rake +3 -2
  35. data/lib/cucumber.rb +7 -15
  36. data/lib/cucumber/ast.rb +3 -3
  37. data/lib/cucumber/ast/background.rb +28 -66
  38. data/lib/cucumber/ast/examples.rb +15 -3
  39. data/lib/cucumber/ast/feature.rb +20 -24
  40. data/lib/cucumber/ast/feature_element.rb +46 -0
  41. data/lib/cucumber/ast/features.rb +2 -21
  42. data/lib/cucumber/ast/outline_table.rb +46 -14
  43. data/lib/cucumber/ast/py_string.rb +9 -3
  44. data/lib/cucumber/ast/scenario.rb +34 -73
  45. data/lib/cucumber/ast/scenario_outline.rb +40 -42
  46. data/lib/cucumber/ast/step.rb +51 -90
  47. data/lib/cucumber/ast/step_collection.rb +66 -0
  48. data/lib/cucumber/ast/step_invocation.rb +110 -0
  49. data/lib/cucumber/ast/table.rb +41 -21
  50. data/lib/cucumber/ast/tags.rb +4 -11
  51. data/lib/cucumber/ast/visitor.rb +35 -19
  52. data/lib/cucumber/broadcaster.rb +1 -3
  53. data/lib/cucumber/cli/configuration.rb +25 -17
  54. data/lib/cucumber/cli/language_help_formatter.rb +4 -4
  55. data/lib/cucumber/cli/main.rb +6 -4
  56. data/lib/cucumber/core_ext/proc.rb +2 -2
  57. data/lib/cucumber/formatter/ansicolor.rb +0 -1
  58. data/lib/cucumber/formatter/console.rb +24 -34
  59. data/lib/cucumber/formatter/html.rb +18 -11
  60. data/lib/cucumber/formatter/pretty.rb +48 -36
  61. data/lib/cucumber/formatter/profile.rb +6 -6
  62. data/lib/cucumber/formatter/progress.rb +14 -22
  63. data/lib/cucumber/formatter/rerun.rb +6 -6
  64. data/lib/cucumber/jbehave.rb +21 -26
  65. data/lib/cucumber/languages.yml +17 -2
  66. data/lib/cucumber/parser/feature.rb +26 -29
  67. data/lib/cucumber/parser/feature.tt +17 -12
  68. data/lib/cucumber/parser/treetop_ext.rb +13 -13
  69. data/lib/cucumber/platform.rb +0 -1
  70. data/lib/cucumber/rails/world.rb +2 -2
  71. data/lib/cucumber/rake/task.rb +1 -2
  72. data/lib/cucumber/step_definition.rb +21 -12
  73. data/lib/cucumber/step_match.rb +49 -0
  74. data/lib/cucumber/step_mother.rb +100 -80
  75. data/lib/cucumber/version.rb +2 -2
  76. data/lib/cucumber/world.rb +53 -0
  77. data/rails_generators/cucumber/templates/paths.rb +1 -1
  78. data/rails_generators/cucumber/templates/webrat_steps.rb +17 -17
  79. data/rails_generators/feature/feature_generator.rb +5 -1
  80. data/rails_generators/feature/templates/steps.erb +0 -4
  81. data/spec/cucumber/ast/background_spec.rb +32 -41
  82. data/spec/cucumber/ast/feature_factory.rb +10 -1
  83. data/spec/cucumber/ast/feature_spec.rb +7 -30
  84. data/spec/cucumber/ast/py_string_spec.rb +7 -0
  85. data/spec/cucumber/ast/scenario_outline_spec.rb +3 -0
  86. data/spec/cucumber/ast/scenario_spec.rb +8 -25
  87. data/spec/cucumber/ast/step_collection_spec.rb +8 -0
  88. data/spec/cucumber/ast/step_spec.rb +49 -28
  89. data/spec/cucumber/ast/table_spec.rb +13 -3
  90. data/spec/cucumber/ast/tags_spec.rb +2 -18
  91. data/spec/cucumber/broadcaster_spec.rb +6 -5
  92. data/spec/cucumber/cli/configuration_spec.rb +7 -0
  93. data/spec/cucumber/cli/main_spec.rb +1 -1
  94. data/spec/cucumber/parser/feature_parser_spec.rb +6 -5
  95. data/spec/cucumber/step_definition_spec.rb +16 -5
  96. data/spec/cucumber/step_mother_spec.rb +6 -6
  97. data/spec/cucumber/world/pending_spec.rb +1 -1
  98. metadata +24 -5
  99. data/lib/cucumber/ast/filter.rb +0 -22
  100. data/lib/cucumber/ast/steps.rb +0 -13
data/History.txt CHANGED
@@ -56,29 +56,12 @@ which is a richer DSL than JBehave's language. -Over 20 spoken languages, Tables
56
56
  Scenario Outlines, the rich command line, the nice output format and everything
57
57
  pure Ruby users have been enjoying for a while.
58
58
 
59
- == TODO Before 0.2 release
60
- * Make sure all features and specs pass on Windows, JRuby and Ruby 1.9
61
- * Tighten up and simplify the grammar. More edge case features/specs.
62
- * Reintroduce StepInvocation. Reduce some of the redundant calls to StepDefinition/StepMother. Align with JBehave.
63
- * Make some class diagrams.
64
- * Implement at least a basic HTML formatter
65
- * Run a single cucumber feature from rake "rake features FEATURE=/path/to/feature:line"
66
- * Wiki page about running subsets
67
- ** file:line
68
- *** scenario (or step within)
69
- *** scenario outline
70
- *** scenario outline examples
71
- *** line in an example table
72
- *** background (same as whole file)
73
- *** fix bugs in any of those cases (there are some)
74
- ** --tags
75
- *** Link to page about tags
76
- * Tags with arguments
77
- * cucumber.jar + examples
78
- ** Remove need for -S cucumber
79
- ** Full jar and simple jar
80
-
81
59
  == Bugfixes
60
+ * New StepInvocation breaks console formatter for pending steps. (#241 Jacob Radford)
61
+ * Within Scenario Outlines when replacing with a nil in a step name use empty string instead. (#237 Joseph Wilk)
62
+ * Fixed bug with Scenario Outlines incorrectly replacing values in step tables with nil. (#237 Joseph Wilk)
63
+ * Within Scenario Outlines when replacing with a nil in multiline strings use empty string instead. (#238 Joseph Wilk)
64
+ * Re-structure the ast: Feature -> Background -> (Scenario|ScenarioOutline)*. Fixes bug with background being called outside transactions. (#181 Joseph Wilk)
82
65
  * --strict always exits with status 1 (#230 Tim Cuthbertson)
83
66
  * Fix error with nil values in tables raising an exception (#227 Joseph Wilk)
84
67
  * Add support for using << in formatters to ensure the html formatter works (#210 Joseph Wilk)
@@ -96,6 +79,8 @@ pure Ruby users have been enjoying for a while.
96
79
  * Pending steps in > steps called from steps (#65 Aslak Hellesøy)
97
80
 
98
81
  === New features
82
+ * Australian translation (Josh Graham)
83
+ * Added World#announce(announcment) which lets you output text to the formatted output (#222 Rob Kaufmann)
99
84
  * Added Table#transpose to to allow use of vertically aligned table keys (Torbjørn Vatn, Aslak Hellesøy)
100
85
  * Added Table#map_headers to to allow use of more readable headers (Rob Holland)
101
86
  * New -S/--step-definitions option. Useful (among other things) for tools that implement automcompletion. (#208 Aslak Hellesøy).
@@ -136,7 +121,7 @@ pure Ruby users have been enjoying for a while.
136
121
  * Pure Ruby features are no longer supported.
137
122
  * Remove --color option in autotest. Can be added manually in cucumber.yml (#215 Jean-Michel Garnier)
138
123
 
139
- == (0.16.4 aslakhellesoy-webrat gem on GitHub)
124
+ == (0.16.4 aslakhellesoy-cucumber gem on GitHub)
140
125
 
141
126
  Bugfix release.
142
127
 
data/Manifest.txt CHANGED
@@ -30,6 +30,12 @@ examples/i18n/de/features/addition.feature
30
30
  examples/i18n/de/features/division.feature
31
31
  examples/i18n/de/features/step_definitons/calculator_steps.rb
32
32
  examples/i18n/de/lib/calculator.rb
33
+ examples/i18n/en-lol/Rakefile
34
+ examples/i18n/en-lol/features/step_definitions/cucumbrz_steps.rb
35
+ examples/i18n/en-lol/features/stuffing.feature
36
+ examples/i18n/en-lol/features/support/env.rb
37
+ examples/i18n/en-lol/lib/basket.rb
38
+ examples/i18n/en-lol/lib/belly.rb
33
39
  examples/i18n/en/Rakefile
34
40
  examples/i18n/en/features/addition.feature
35
41
  examples/i18n/en/features/division.feature
@@ -169,6 +175,8 @@ examples/tickets/features/177/1.feature
169
175
  examples/tickets/features/177/2.feature
170
176
  examples/tickets/features/177/3.feature
171
177
  examples/tickets/features/180.feature
178
+ examples/tickets/features/236.feature
179
+ examples/tickets/features/241.feature
172
180
  examples/tickets/features/lib/eatting_machine.rb
173
181
  examples/tickets/features/lib/pantry.rb
174
182
  examples/tickets/features/scenario_outline.feature
@@ -210,14 +218,15 @@ lib/cucumber/ast/background.rb
210
218
  lib/cucumber/ast/comment.rb
211
219
  lib/cucumber/ast/examples.rb
212
220
  lib/cucumber/ast/feature.rb
221
+ lib/cucumber/ast/feature_element.rb
213
222
  lib/cucumber/ast/features.rb
214
- lib/cucumber/ast/filter.rb
215
223
  lib/cucumber/ast/outline_table.rb
216
224
  lib/cucumber/ast/py_string.rb
217
225
  lib/cucumber/ast/scenario.rb
218
226
  lib/cucumber/ast/scenario_outline.rb
219
227
  lib/cucumber/ast/step.rb
220
- lib/cucumber/ast/steps.rb
228
+ lib/cucumber/ast/step_collection.rb
229
+ lib/cucumber/ast/step_invocation.rb
221
230
  lib/cucumber/ast/table.rb
222
231
  lib/cucumber/ast/tags.rb
223
232
  lib/cucumber/ast/visitor.rb
@@ -257,8 +266,10 @@ lib/cucumber/rails/rspec.rb
257
266
  lib/cucumber/rails/world.rb
258
267
  lib/cucumber/rake/task.rb
259
268
  lib/cucumber/step_definition.rb
269
+ lib/cucumber/step_match.rb
260
270
  lib/cucumber/step_mother.rb
261
271
  lib/cucumber/version.rb
272
+ lib/cucumber/world.rb
262
273
  rails_generators/cucumber/USAGE
263
274
  rails_generators/cucumber/cucumber_generator.rb
264
275
  rails_generators/cucumber/templates/cucumber
@@ -280,6 +291,7 @@ spec/cucumber/ast/feature_spec.rb
280
291
  spec/cucumber/ast/py_string_spec.rb
281
292
  spec/cucumber/ast/scenario_outline_spec.rb
282
293
  spec/cucumber/ast/scenario_spec.rb
294
+ spec/cucumber/ast/step_collection_spec.rb
283
295
  spec/cucumber/ast/step_spec.rb
284
296
  spec/cucumber/ast/table_spec.rb
285
297
  spec/cucumber/ast/tags_spec.rb
@@ -0,0 +1,6 @@
1
+ $:.unshift(File.dirname(__FILE__) + '/../../../lib')
2
+ require 'cucumber/rake/task'
3
+
4
+ Cucumber::Rake::Task.new do |t|
5
+ t.cucumber_opts = "--language en-lol"
6
+ end
@@ -0,0 +1,16 @@
1
+ ICANHAZ /^IN TEH BEGINNIN (\d+) CUCUMBRZ$/ do |n|
2
+ @basket = Basket.new(n.to_i)
3
+ end
4
+
5
+ WEN /^I EAT (\d+) CUCUMBRZ$/ do |n|
6
+ @belly = Belly.new
7
+ @belly.eat(@basket.take(n.to_i))
8
+ end
9
+
10
+ DEN /^I HAS (\d+) CUCUMBERZ IN MAH BELLY$/ do |n|
11
+ @belly.cukes.should == n.to_i
12
+ end
13
+
14
+ AN /^IN TEH END (\d+) CUCUMBRZ KTHXBAI$/ do |n|
15
+ @basket.cukes.should == n.to_i
16
+ end
@@ -0,0 +1,8 @@
1
+ # stuffing.feature
2
+ OH HAI: STUFFING
3
+
4
+ MISHUN: CUCUMBR
5
+ I CAN HAZ IN TEH BEGINNIN 3 CUCUMBRZ
6
+ WEN I EAT 2 CUCUMBRZ
7
+ DEN I HAS 2 CUCUMBERZ IN MAH BELLY
8
+ AN IN TEH END 1 CUCUMBRZ KTHXBAI
@@ -0,0 +1,8 @@
1
+ # encoding: utf-8
2
+ $KCODE='u' unless Cucumber::RUBY_1_9
3
+ require 'cucumber/formatter/unicode'
4
+ require 'spec/expectations'
5
+
6
+ $:.unshift(File.dirname(__FILE__) + '/../../lib')
7
+ require 'basket'
8
+ require 'belly'
@@ -0,0 +1,12 @@
1
+ class Basket
2
+ attr_reader :cukes
3
+
4
+ def initialize(cukes)
5
+ @cukes = cukes
6
+ end
7
+
8
+ def take(cukes)
9
+ @cukes -= cukes
10
+ cukes
11
+ end
12
+ end
@@ -0,0 +1,11 @@
1
+ class Belly
2
+ attr_reader :cukes
3
+
4
+ def initialize
5
+ @cukes = 0
6
+ end
7
+
8
+ def eat(cukes)
9
+ @cukes += cukes
10
+ end
11
+ end
@@ -0,0 +1,9 @@
1
+ Omadus: Jagamine
2
+ Rumalate vigade vältimiseks
3
+ Peavad kassapidajad saama arvutada murdudes
4
+
5
+ Stsenaarium: Tavalised numrbid
6
+ Eeldades et olen sisestanud kalkulaatorisse numbri 3
7
+ Ja olen sisestanud kalkulaatorisse numbri 2
8
+ Kui ma vajutan jaga
9
+ Siis vastuseks peab ekraanil kuvatama 1.5
@@ -8,7 +8,10 @@ First, compile the java code (and JBehave steps)
8
8
 
9
9
  <code>mvn compile jar:jar</code>
10
10
 
11
- Second, run Cucumber:
11
+ Second, set your CLASSPATH
12
+ <code>export CLASSPATH=~/.m2/repository/cucumber/cucumber-support/0.2/cucumber-support-0.2.jar:~/.m2/repository/org/jbehave/jbehave-core/2.1.1/jbehave-core-2.1.1.jar:~/.m2/repository/org/hamcrest/hamcrest-all/1.1/hamcrest-all-1.1.jar:~/.m2/repository/junit/junit/4.4/junit-4.4.jar</code>
13
+
14
+ Third, run Cucumber:
12
15
 
13
16
  <code>jruby -S cucumber features</code>
14
17
 
@@ -17,6 +17,10 @@ Feature: Trading
17
17
  Then the alert status should be OFF
18
18
 
19
19
  Scenario: Trader sells all stocks
20
+ # Given the following table
21
+ # | a | b |
22
+ # | 1 | 2 |
23
+ # | 3 | 4 |
20
24
  Given a trader of name Mauro
21
25
  Given a stock of prices 0.5,1.0 and a threshold of 1.5
22
26
  When the stock is traded at 2.0
@@ -18,6 +18,11 @@
18
18
  </repositories>
19
19
 
20
20
  <dependencies>
21
+ <dependency>
22
+ <groupId>cucumber</groupId>
23
+ <artifactId>cucumber-support</artifactId>
24
+ <version>0.2</version>
25
+ </dependency>
21
26
  <dependency>
22
27
  <groupId>org.jbehave</groupId>
23
28
  <artifactId>jbehave-core</artifactId>
@@ -18,6 +18,7 @@ import org.jbehave.scenario.steps.ParameterConverters;
18
18
  import org.jbehave.scenario.steps.SilentStepMonitor;
19
19
  import org.jbehave.scenario.steps.Steps;
20
20
  import org.jbehave.scenario.steps.StepsConfiguration;
21
+ import cucumber.ast.Table;
21
22
 
22
23
  public class TraderSteps extends Steps {
23
24
 
@@ -46,6 +47,11 @@ public class TraderSteps extends Steps {
46
47
  stock = new Stock(prices, threshold);
47
48
  }
48
49
 
50
+ @Given("the following table")
51
+ public void theFollowingTable(Table table) {
52
+ System.out.println("My table:" + table);
53
+ }
54
+
49
55
  @When("the stock is traded at %price")
50
56
  public void theStockIsTradedAt(double price) {
51
57
  stock.tradeAt(price);
@@ -61,5 +67,4 @@ public class TraderSteps extends Steps {
61
67
  trader.sellAllStocks();
62
68
  ensureThat(trader.getStocks().size(), equalTo(0));
63
69
  }
64
-
65
70
  }
@@ -0,0 +1,13 @@
1
+ Given 'I am on the Google search page' do
2
+ @browser.open('http://www.google.com/')
3
+ end
4
+
5
+ When /I search for "(.*)"/ do |query|
6
+ @browser.type('q', query)
7
+ @browser.click 'btnG'
8
+ @browser.wait_for_page_to_load
9
+ end
10
+
11
+ Then /I should see a link to (.*)/ do |expected_url|
12
+ @browser.is_element_present("css=a[href='#{expected_url}']").should be_true
13
+ end
@@ -0,0 +1,19 @@
1
+ require 'spec/expectations'
2
+ require 'selenium'
3
+
4
+ # "before all"
5
+ browser = Selenium::SeleniumDriver.new("localhost", 4444, "*chrome", "http://localhost", 15000)
6
+
7
+ Before do
8
+ @browser = browser
9
+ @browser.start
10
+ end
11
+
12
+ After do
13
+ @browser.stop
14
+ end
15
+
16
+ # "after all"
17
+ at_exit do
18
+ browser.close rescue nil
19
+ end
@@ -0,0 +1,6 @@
1
+ $:.unshift(File.dirname(__FILE__) + '/../../lib')
2
+ require 'cucumber/rake/task'
3
+
4
+ Cucumber::Rake::Task.new do |t|
5
+ t.cucumber_opts = "--format pretty"
6
+ end
@@ -0,0 +1,9 @@
1
+ Feature: Search
2
+ In order to learn more
3
+ As an information seeker
4
+ I want to find more information
5
+
6
+ Scenario: Find what I'm looking for
7
+ Given I am on the Google search page
8
+ When I search for "rspec"
9
+ Then I should see a link to http://rspec.info/
@@ -0,0 +1,13 @@
1
+ Given 'I am on the Google search page' do
2
+ visit('http://www.google.com/')
3
+ end
4
+
5
+ When /I search for "(.*)"/ do |query|
6
+ fill_in('q', :with => query)
7
+ click_button('btnG')
8
+ selenium.wait_for_page_to_load
9
+ end
10
+
11
+ Then /I should see a link to (.*)/ do |expected_url|
12
+ click_link(expected_url)
13
+ end
@@ -0,0 +1,41 @@
1
+ require 'spec/expectations'
2
+
3
+ # START HACK
4
+ # Webrat's Selenium wrongly assumes Rails in available. # We'll just fool it...
5
+ module ActionController
6
+ class IntegrationTest
7
+ end
8
+ end
9
+
10
+ def silence_stream(*args)
11
+ yield if block_given?
12
+ end
13
+ # END HACK
14
+
15
+ # RSpec
16
+ require 'spec/expectations'
17
+
18
+ # Webrat
19
+ require 'webrat'
20
+ Webrat.configure do |config|
21
+ config.mode = :selenium
22
+ end
23
+
24
+ World do
25
+ session = Webrat::SeleniumSession.new
26
+ session.extend(Webrat::Methods)
27
+ session.extend(Webrat::Selenium::Methods)
28
+ session.extend(Webrat::Selenium::Matchers)
29
+ session
30
+ end
31
+
32
+ # START HACK
33
+ # Disable Rails-specific code
34
+ module Webrat
35
+ def self.start_app_server
36
+ end
37
+
38
+ def self.stop_app_server
39
+ end
40
+ end
41
+ # END HACK
@@ -1,6 +1,6 @@
1
1
  $:.unshift(File.dirname(__FILE__) + '/../../lib')
2
2
  require 'cucumber/rake/task'
3
3
 
4
- Cucumber::Rake::Task.new
4
+ Cucumber::Rake::Task.new(:features)
5
5
 
6
6
  task :default => :features
@@ -2,6 +2,7 @@ Feature: Failing background sample
2
2
 
3
3
  Background:
4
4
  Given failing without a table
5
+ And '10' cukes
5
6
 
6
7
  Scenario: failing background
7
8
  Then I should have '10' cukes
@@ -34,7 +34,7 @@ end
34
34
 
35
35
  Given /^'(.+)' global cukes$/ do |cukes|
36
36
  $scenario_runs ||= 0
37
- flunker if $scenario_runs > 0
37
+ flunker if $scenario_runs >= 1
38
38
  $cukes = cukes
39
39
  $scenario_runs += 1
40
40
  end
@@ -19,7 +19,7 @@ module Tag
19
19
  def print_summary
20
20
  matrix = @counts.to_a.sort{|paira, pairb| paira[0] <=> pairb[0]}.transpose
21
21
  table = Cucumber::Ast::Table.new(matrix)
22
- Cucumber::Formatter::Pretty.new(@step_mother, @io, {}).visit_multiline_arg(table, :tag)
22
+ Cucumber::Formatter::Pretty.new(@step_mother, @io, {}).visit_multiline_arg(table)
23
23
  end
24
24
  end
25
25
  end
@@ -1,11 +1,16 @@
1
1
  $:.unshift(File.dirname(__FILE__) + '/../../lib')
2
2
  require 'cucumber/rake/task'
3
3
 
4
- # Try these:
5
- #
6
- # rake features
7
- # rake features PROFILE=html
8
- Cucumber::Rake::Task.new do |t|
9
- profile = ENV['PROFILE'] || 'default'
10
- t.cucumber_opts = "--profile #{profile}"
11
- end
4
+ Cucumber::Rake::Task.new(:pretty) do |t|
5
+ t.cucumber_opts = "--format pretty"
6
+ end
7
+
8
+ Cucumber::Rake::Task.new(:html) do |t|
9
+ t.cucumber_opts = "--format html --out features.html"
10
+ end
11
+
12
+ Cucumber::Rake::Task.new(:progress) do |t|
13
+ t.cucumber_opts = "--format progress -i -n"
14
+ end
15
+
16
+ task :default => [:pretty, :html, :progress]
@@ -1,2 +1,3 @@
1
1
  default: --format pretty
2
- html: --format html --out features.html
2
+ html: --format html --out features.html
3
+ progress: --format progress -i -n
@@ -0,0 +1,13 @@
1
+ Feature: Unsubstituted argument placeholder
2
+
3
+ Scenario Outline: See Annual Leave Details (as Management & Human Resource)
4
+ Given the following users exist in the system
5
+ | name | email | role_assignments | group_memberships |
6
+ | Jane | jane@fmail.com | <role> | Sales (manager) |
7
+ | Max | max@fmail.com | | Sales (member) |
8
+ | Carol | carol@fmail.com | | Sales (member) |
9
+ | Cat | cat@fmail.com | | |
10
+
11
+ Examples:
12
+ | role |
13
+ | HUMAN RESOURCE |