aslakhellesoy-cucumber 0.1.99.3 → 0.1.99.4

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 (257) hide show
  1. data/Manifest.txt +6 -0
  2. metadata +1 -1
  3. data/cucumber.yml +0 -1
  4. data/examples/cs/README.textile +0 -1
  5. data/examples/cs/Rakefile +0 -12
  6. data/examples/cs/compile.bat +0 -1
  7. data/examples/cs/features/addition.feature +0 -16
  8. data/examples/cs/features/step_definitons/calculator_steps.rb +0 -19
  9. data/examples/cs/src/demo/Calculator.cs +0 -20
  10. data/examples/dos_line_endings/Rakefile +0 -6
  11. data/examples/dos_line_endings/features/dos_line_endings.feature +0 -9
  12. data/examples/i18n/README.textile +0 -18
  13. data/examples/i18n/Rakefile +0 -32
  14. data/examples/i18n/ar/Rakefile +0 -6
  15. data/examples/i18n/ar/features/addition.feature +0 -17
  16. data/examples/i18n/ar/features/step_definitons/calculator_steps.rb +0 -28
  17. data/examples/i18n/ar/lib/calculator.rb +0 -10
  18. data/examples/i18n/da/Rakefile +0 -6
  19. data/examples/i18n/da/features/step_definitons/kalkulator_steps.rb +0 -24
  20. data/examples/i18n/da/features/summering.feature +0 -17
  21. data/examples/i18n/da/lib/kalkulator.rb +0 -11
  22. data/examples/i18n/de/Rakefile +0 -6
  23. data/examples/i18n/de/features/addition.feature +0 -16
  24. data/examples/i18n/de/features/division.feature +0 -9
  25. data/examples/i18n/de/features/step_definitons/calculator_steps.rb +0 -24
  26. data/examples/i18n/de/lib/calculator.rb +0 -14
  27. data/examples/i18n/en/Rakefile +0 -6
  28. data/examples/i18n/en/features/addition.feature +0 -16
  29. data/examples/i18n/en/features/division.feature +0 -9
  30. data/examples/i18n/en/features/step_definitons/calculator_steps.rb +0 -24
  31. data/examples/i18n/en/lib/calculator.rb +0 -14
  32. data/examples/i18n/es/Rakefile +0 -6
  33. data/examples/i18n/es/features/adicion.feature +0 -17
  34. data/examples/i18n/es/features/step_definitons/calculador_steps.rb +0 -24
  35. data/examples/i18n/es/lib/calculador.rb +0 -11
  36. data/examples/i18n/et/Rakefile +0 -6
  37. data/examples/i18n/et/features/liitmine.feature +0 -17
  38. data/examples/i18n/et/features/step_definitions/kalkulaator_steps.rb +0 -24
  39. data/examples/i18n/et/lib/kalkulaator.rb +0 -10
  40. data/examples/i18n/fi/Rakefile +0 -6
  41. data/examples/i18n/fi/features/jakolasku.feature +0 -9
  42. data/examples/i18n/fi/features/step_definitons/laskin_steps.rb +0 -24
  43. data/examples/i18n/fi/features/yhteenlasku.feature +0 -16
  44. data/examples/i18n/fi/lib/laskin.rb +0 -14
  45. data/examples/i18n/fr/Rakefile +0 -6
  46. data/examples/i18n/fr/features/addition.feature +0 -15
  47. data/examples/i18n/fr/features/step_definitions/calculatrice_steps.rb +0 -27
  48. data/examples/i18n/fr/lib/calculatrice.rb +0 -10
  49. data/examples/i18n/id/Rakefile +0 -6
  50. data/examples/i18n/id/features/addition.feature +0 -16
  51. data/examples/i18n/id/features/division.feature +0 -9
  52. data/examples/i18n/id/features/step_definitons/calculator_steps.rb +0 -24
  53. data/examples/i18n/id/lib/calculator.rb +0 -14
  54. data/examples/i18n/it/Rakefile +0 -6
  55. data/examples/i18n/it/features/somma.feature +0 -10
  56. data/examples/i18n/it/features/step_definitons/calcolatrice_steps.rb +0 -24
  57. data/examples/i18n/it/lib/calcolatrice.rb +0 -11
  58. data/examples/i18n/ja/README.txt +0 -5
  59. data/examples/i18n/ja/Rakefile +0 -6
  60. data/examples/i18n/ja/features/addition.feature +0 -16
  61. data/examples/i18n/ja/features/division.feature +0 -9
  62. data/examples/i18n/ja/features/step_definitons/calculator_steps.rb +0 -24
  63. data/examples/i18n/ja/lib/calculator.rb +0 -14
  64. data/examples/i18n/ko/Rakefile +0 -6
  65. data/examples/i18n/ko/features/addition.feature +0 -16
  66. data/examples/i18n/ko/features/division.feature +0 -10
  67. data/examples/i18n/ko/features/step_definitons/calculator_steps.rb +0 -24
  68. data/examples/i18n/ko/lib/calculator.rb +0 -14
  69. data/examples/i18n/lt/Rakefile +0 -6
  70. data/examples/i18n/lt/features/addition.feature +0 -17
  71. data/examples/i18n/lt/features/division.feature +0 -9
  72. data/examples/i18n/lt/features/step_definitons/calculator_steps.rb +0 -24
  73. data/examples/i18n/lt/lib/calculator.rb +0 -14
  74. data/examples/i18n/no/Rakefile +0 -6
  75. data/examples/i18n/no/features/step_definitons/kalkulator_steps.rb +0 -24
  76. data/examples/i18n/no/features/summering.feature +0 -18
  77. data/examples/i18n/no/lib/kalkulator.rb +0 -11
  78. data/examples/i18n/pt/Rakefile +0 -6
  79. data/examples/i18n/pt/features/adicao.feature +0 -10
  80. data/examples/i18n/pt/features/step_definitions/calculadora_steps.rb +0 -24
  81. data/examples/i18n/pt/lib/calculadora.rb +0 -10
  82. data/examples/i18n/ro/Rakefile +0 -6
  83. data/examples/i18n/ro/features/step_definitons/calculator_steps.rb +0 -24
  84. data/examples/i18n/ro/features/suma.feature +0 -10
  85. data/examples/i18n/ro/lib/calculator.rb +0 -11
  86. data/examples/i18n/se/Rakefile +0 -6
  87. data/examples/i18n/se/features/step_definitons/kalkulator_steps.rb +0 -24
  88. data/examples/i18n/se/features/summering.feature +0 -17
  89. data/examples/i18n/se/lib/kalkulator.rb +0 -11
  90. data/examples/i18n/zh-CN/Rakefile +0 -6
  91. data/examples/i18n/zh-CN/features/addition.feature +0 -17
  92. data/examples/i18n/zh-CN/features/step_definitons/calculator_steps.rb +0 -26
  93. data/examples/i18n/zh-CN/lib/calculator.rb +0 -10
  94. data/examples/java/README.textile +0 -22
  95. data/examples/java/Rakefile +0 -12
  96. data/examples/java/features/hello.feature +0 -11
  97. data/examples/java/features/step_definitons/hello_steps.rb +0 -25
  98. data/examples/java/features/step_definitons/tree_steps.rb +0 -14
  99. data/examples/java/features/tree.feature +0 -9
  100. data/examples/jbehave/README.textile +0 -17
  101. data/examples/jbehave/features/support/env.rb +0 -7
  102. data/examples/jbehave/features/trading.feature +0 -24
  103. data/examples/jbehave/pom.xml +0 -48
  104. data/examples/selenium/Rakefile +0 -6
  105. data/examples/selenium/features/search.feature +0 -9
  106. data/examples/selenium/features/step_definitons/stories_steps.rb +0 -40
  107. data/examples/self_test/README.textile +0 -6
  108. data/examples/self_test/features/call_undefined_step_from_step_def.feature +0 -7
  109. data/examples/self_test/features/lots_of_undefined.feature +0 -8
  110. data/examples/self_test/features/outline_sample.feature +0 -12
  111. data/examples/self_test/features/sample.feature +0 -16
  112. data/examples/self_test/features/step_definitions/sample_steps.rb +0 -25
  113. data/examples/test_unit/Rakefile +0 -6
  114. data/examples/test_unit/features/step_definitions/test_unit_steps.rb +0 -26
  115. data/examples/test_unit/features/test_unit.feature +0 -9
  116. data/examples/tickets/Rakefile +0 -11
  117. data/examples/tickets/cucumber.yml +0 -2
  118. data/examples/tickets/features/lib/eatting_machine.rb +0 -18
  119. data/examples/tickets/features/lib/pantry.rb +0 -20
  120. data/examples/tickets/features/scenario_outline.feature +0 -90
  121. data/examples/tickets/features/step_definitons/scenario_outline_steps.rb +0 -42
  122. data/examples/tickets/features/step_definitons/tickets_steps.rb +0 -61
  123. data/examples/tickets/features/tickets.feature +0 -28
  124. data/examples/watir/README.textile +0 -16
  125. data/examples/watir/Rakefile +0 -6
  126. data/examples/watir/features/search.feature +0 -9
  127. data/examples/watir/features/step_definitons/search_steps.rb +0 -24
  128. data/examples/watir/features/support/env.rb +0 -32
  129. data/features/cucumber_cli.feature +0 -327
  130. data/features/cucumber_cli_outlines.feature +0 -81
  131. data/features/report_called_undefined_steps.feature +0 -32
  132. data/features/step_definitions/cucumber_steps.rb +0 -31
  133. data/features/step_definitions/extra_steps.rb +0 -2
  134. data/features/support/env.rb +0 -7
  135. data/gem_tasks/deployment.rake +0 -11
  136. data/gem_tasks/environment.rake +0 -7
  137. data/gem_tasks/features.rake +0 -6
  138. data/gem_tasks/fix_cr_lf.rake +0 -10
  139. data/gem_tasks/flog.rake +0 -4
  140. data/gem_tasks/gemspec.rake +0 -10
  141. data/gem_tasks/rspec.rake +0 -35
  142. data/gem_tasks/yard.rake +0 -8
  143. data/lib/autotest/cucumber.rb +0 -6
  144. data/lib/autotest/cucumber_mixin.rb +0 -124
  145. data/lib/autotest/cucumber_rails.rb +0 -6
  146. data/lib/autotest/cucumber_rails_rspec.rb +0 -6
  147. data/lib/autotest/cucumber_rspec.rb +0 -6
  148. data/lib/autotest/discover.rb +0 -9
  149. data/lib/cucumber/ast/comment.rb +0 -26
  150. data/lib/cucumber/ast/examples.rb +0 -22
  151. data/lib/cucumber/ast/feature.rb +0 -60
  152. data/lib/cucumber/ast/features.rb +0 -39
  153. data/lib/cucumber/ast/filter.rb +0 -22
  154. data/lib/cucumber/ast/outline_table.rb +0 -49
  155. data/lib/cucumber/ast/py_string.rb +0 -52
  156. data/lib/cucumber/ast/scenario.rb +0 -95
  157. data/lib/cucumber/ast/scenario_outline.rb +0 -83
  158. data/lib/cucumber/ast/step.rb +0 -139
  159. data/lib/cucumber/ast/table.rb +0 -214
  160. data/lib/cucumber/ast/tags.rb +0 -33
  161. data/lib/cucumber/ast/visitor.rb +0 -93
  162. data/lib/cucumber/ast.rb +0 -27
  163. data/lib/cucumber/broadcaster.rb +0 -15
  164. data/lib/cucumber/cli.rb +0 -410
  165. data/lib/cucumber/core_ext/exception.rb +0 -53
  166. data/lib/cucumber/core_ext/instance_exec.rb +0 -54
  167. data/lib/cucumber/core_ext/proc.rb +0 -33
  168. data/lib/cucumber/core_ext/string.rb +0 -48
  169. data/lib/cucumber/formatter/ansicolor.rb +0 -106
  170. data/lib/cucumber/formatter/console.rb +0 -116
  171. data/lib/cucumber/formatter/pretty.rb +0 -158
  172. data/lib/cucumber/formatter/profile.rb +0 -77
  173. data/lib/cucumber/formatter/progress.rb +0 -68
  174. data/lib/cucumber/formatter/rerun.rb +0 -35
  175. data/lib/cucumber/formatter.rb +0 -1
  176. data/lib/cucumber/formatters/autotest_formatter.rb +0 -21
  177. data/lib/cucumber/formatters/cucumber.css +0 -132
  178. data/lib/cucumber/formatters/cucumber.js +0 -11
  179. data/lib/cucumber/formatters/html_formatter.rb +0 -152
  180. data/lib/cucumber/formatters/jquery.js +0 -32
  181. data/lib/cucumber/formatters/pretty_formatter.rb +0 -285
  182. data/lib/cucumber/formatters/unicode.rb +0 -35
  183. data/lib/cucumber/jbehave.rb +0 -104
  184. data/lib/cucumber/languages.yml +0 -314
  185. data/lib/cucumber/parser/basic.rb +0 -0
  186. data/lib/cucumber/parser/feature.rb +0 -1315
  187. data/lib/cucumber/parser/feature.tt +0 -160
  188. data/lib/cucumber/parser/i18n.tt +0 -27
  189. data/lib/cucumber/parser/table.rb +0 -396
  190. data/lib/cucumber/parser/table.tt +0 -53
  191. data/lib/cucumber/parser/treetop_ext.rb +0 -67
  192. data/lib/cucumber/parser.rb +0 -24
  193. data/lib/cucumber/platform.rb +0 -18
  194. data/lib/cucumber/rails/rspec.rb +0 -5
  195. data/lib/cucumber/rails/world.rb +0 -73
  196. data/lib/cucumber/rake/task.rb +0 -106
  197. data/lib/cucumber/step_definition.rb +0 -87
  198. data/lib/cucumber/step_mother.rb +0 -164
  199. data/lib/cucumber/treetop_parser/feature_fi.rb +0 -1951
  200. data/lib/cucumber/version.rb +0 -10
  201. data/lib/cucumber.rb +0 -72
  202. data/pretty.txt +0 -486
  203. data/rails_generators/cucumber/USAGE +0 -11
  204. data/rails_generators/cucumber/cucumber_generator.rb +0 -31
  205. data/rails_generators/cucumber/templates/cucumber +0 -8
  206. data/rails_generators/cucumber/templates/cucumber.rake +0 -7
  207. data/rails_generators/cucumber/templates/env.rb +0 -16
  208. data/rails_generators/cucumber/templates/paths.rb +0 -12
  209. data/rails_generators/cucumber/templates/webrat_steps.rb +0 -99
  210. data/rails_generators/feature/USAGE +0 -12
  211. data/rails_generators/feature/feature_generator.rb +0 -36
  212. data/rails_generators/feature/templates/feature.erb +0 -31
  213. data/rails_generators/feature/templates/steps.erb +0 -24
  214. data/spec/cucumber/ast/feature_factory.rb +0 -54
  215. data/spec/cucumber/ast/feature_spec.rb +0 -60
  216. data/spec/cucumber/ast/py_string_spec.rb +0 -40
  217. data/spec/cucumber/ast/scenario_outline_spec.rb +0 -64
  218. data/spec/cucumber/ast/scenario_spec.rb +0 -82
  219. data/spec/cucumber/ast/step_spec.rb +0 -45
  220. data/spec/cucumber/ast/table_spec.rb +0 -81
  221. data/spec/cucumber/broadcaster_spec.rb +0 -14
  222. data/spec/cucumber/cli_spec.rb +0 -416
  223. data/spec/cucumber/core_ext/proc_spec.rb +0 -37
  224. data/spec/cucumber/core_ext/string_spec.rb +0 -42
  225. data/spec/cucumber/formatter/ansicolor_spec.rb +0 -35
  226. data/spec/cucumber/formatter/html/cucumber.css +0 -37
  227. data/spec/cucumber/formatter/html/cucumber.js +0 -11
  228. data/spec/cucumber/formatter/html/index.html +0 -45
  229. data/spec/cucumber/formatter/html/jquery-1.3.min.js +0 -19
  230. data/spec/cucumber/formatter/html/jquery.uitableedit.js +0 -100
  231. data/spec/cucumber/formatters/autotest_formatter_spec.rb +0 -27
  232. data/spec/cucumber/formatters/features.html +0 -269
  233. data/spec/cucumber/formatters/profile_formatter_spec.rb +0 -198
  234. data/spec/cucumber/parser/feature_parser_spec.rb +0 -247
  235. data/spec/cucumber/parser/table_parser_spec.rb +0 -48
  236. data/spec/cucumber/rails/stubs/mini_rails.rb +0 -18
  237. data/spec/cucumber/rails/stubs/test_help.rb +0 -1
  238. data/spec/cucumber/rails/world_spec.rb +0 -11
  239. data/spec/cucumber/sell_cucumbers.feature +0 -19
  240. data/spec/cucumber/step_definition_spec.rb +0 -62
  241. data/spec/cucumber/step_mom_spec.rb +0 -49
  242. data/spec/cucumber/treetop_parser/empty_feature.feature +0 -4
  243. data/spec/cucumber/treetop_parser/empty_scenario.feature +0 -9
  244. data/spec/cucumber/treetop_parser/empty_scenario_outline.feature +0 -3
  245. data/spec/cucumber/treetop_parser/fit_scenario.feature +0 -8
  246. data/spec/cucumber/treetop_parser/given_scenario.feature +0 -9
  247. data/spec/cucumber/treetop_parser/invalid_scenario_outlines.feature +0 -7
  248. data/spec/cucumber/treetop_parser/multiline_steps.feature +0 -17
  249. data/spec/cucumber/treetop_parser/multiple_tables.feature +0 -27
  250. data/spec/cucumber/treetop_parser/scenario_outline.feature +0 -16
  251. data/spec/cucumber/treetop_parser/spaces.feature +0 -12
  252. data/spec/cucumber/treetop_parser/test_dos.feature +0 -25
  253. data/spec/cucumber/treetop_parser/with_comments.feature +0 -10
  254. data/spec/cucumber/treetop_parser/with_tags.feature +0 -18
  255. data/spec/cucumber/world/pending_spec.rb +0 -47
  256. data/spec/spec.opts +0 -2
  257. data/spec/spec_helper.rb +0 -21
@@ -1,42 +0,0 @@
1
- Given /^there are (\d+) (\w+)$/ do |count, fruit|
2
- @eattingMachine = EattingMachine.new(fruit, count)
3
- end
4
-
5
- Given "the belly space is < 12 and > 6" do
6
- end
7
-
8
- Given "I have the following fruits in my pantry" do |pantry_table|
9
- @pantry = Pantry.new
10
- pantry_table.hashes.each do |item|
11
- @pantry.add(item['name'].downcase, item['quantity'])
12
- end
13
- end
14
-
15
- Given "my shopping list" do |list|
16
- @shopping_list = list
17
- end
18
-
19
- When /^I eat (\d+) (\w+)$/ do |count, fruit|
20
- @eattingMachine.eat(count)
21
- @eattingMachine.belly_count = count.to_i
22
- end
23
-
24
- When /^I eat (\d+) (\w+) from the pantry$/ do |count, fruit|
25
- @pantry.remove(fruit, count.to_i)
26
- end
27
-
28
- Then /^I should have (\d+) (\w+)$/ do |count, fruit|
29
- @eattingMachine.fruit_total.should == count.to_i
30
- end
31
-
32
- Then /^I should have (\d+) (\w+) in my belly$/ do |count, fruit|
33
- @eattingMachine.belly_count.should == count.to_i
34
- end
35
-
36
- Then /^I should have (\d+) (\w+) in the pantry$/ do |count, fruit|
37
- @pantry.count(fruit).should == count.to_i
38
- end
39
-
40
- Then /^my shopping list should equal$/ do |list|
41
- @shopping_list.should == list
42
- end
@@ -1,61 +0,0 @@
1
- require 'spec/expectations'
2
-
3
- World do
4
- Object.new
5
- end
6
-
7
- After do |scenario|
8
- if scenario.status.index(:failed)
9
- # Call the BDD police
10
- end
11
- end
12
-
13
- Given "be_empty" do
14
- [1,2].should_not be_empty
15
- end
16
-
17
- Given "nested step is called" do
18
- Given "I like mushroom", Cucumber::Ast::Table.new([
19
- %w{sponge bob},
20
- %w{is cool}
21
- ])
22
- end
23
-
24
- Given 'nested step is called using text table' do
25
- pending
26
- Given "I like mushroom", table(%{
27
- | sponge | bob |
28
- | is | cool |
29
- })
30
-
31
- # Alternative syntax (file and line will be reported on parse error)
32
- # Given "I like mushroom", table(<<-EOT, __FILE__, __LINE__)
33
- # | sponge | bob |
34
- # | is | cool
35
- # EOT
36
- end
37
-
38
- Given "I like $what" do |what, table|
39
- @magic = what
40
- @tool = table.raw[0][0]
41
- end
42
-
43
- Then "nested step should be executed" do
44
- @magic.should == 'mushroom'
45
- @tool.should == 'sponge'
46
- end
47
-
48
- Given /^the following table$/ do |table|
49
- @table = table
50
- end
51
-
52
- Then /^I should be (\w+) in (\w+)$/ do |key, value|
53
- hash = @table.hashes[0]
54
- hash[key].should == value
55
- end
56
-
57
- Then /^I shoule see a multiline string like$/ do |s|
58
- s.should == %{A string
59
- that spans
60
- several lines}
61
- end
@@ -1,28 +0,0 @@
1
- Feature: Cucumber
2
- In order to have a happy user base
3
- As a Cucumber user
4
- I don't want no stinkin bugs
5
-
6
- Scenario: RSpec be_*
7
- Given be_empty
8
-
9
- Scenario: Call step from step
10
- Given nested step is called
11
- Then nested step should be executed
12
-
13
- Scenario: Call step from step using text table
14
- Given nested step is called using text table
15
- Then nested step should be executed
16
-
17
- Scenario: Reading a table
18
- Given the following table
19
- | born | working |
20
- | Oslo | London |
21
- Then I should be working in London
22
- And I should be born in Oslo
23
- And I shoule see a multiline string like
24
- """
25
- A string
26
- that spans
27
- several lines
28
- """
@@ -1,16 +0,0 @@
1
- Here you'll find examples for Watir, FireWatir, SafariWatir and Celerity.
2
- All of these browser libraries have the same API, so the example code will
3
- work with all of them.
4
-
5
- Just run with:
6
-
7
- rake features
8
-
9
- This will use Watir/IE if you're on Windows, and SafariWatir/Safari if you're on OS X.
10
- You can force the use of FireWatir/Firefox on any platform like this:
11
-
12
- rake features FIREWATIR=true
13
-
14
- And finally, you can use Celerity by running in JRuby:
15
-
16
- jruby -S rake features
@@ -1,6 +0,0 @@
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
@@ -1,9 +0,0 @@
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 "cucumber github"
9
- Then I should see a link to "Ruby on Rails — cucumber — GitHub":http://github.com/aslakhellesoy/cucumber/wikis/ruby-on-rails
@@ -1,24 +0,0 @@
1
- # Full Watir API: http://wtr.rubyforge.org/rdoc/
2
- # Full RSpec API: http://rspec.rubyforge.org/
3
-
4
- Given 'I am on the Google search page' do
5
- @browser.goto 'http://www.google.com/'
6
- end
7
-
8
- When /I search for "(.*)"/ do |query|
9
- @browser.text_field(:name, 'q').set(query)
10
- @browser.button(:name, 'btnG').click
11
- end
12
-
13
- Then /I should see a link to "(.*)":(.*)/ do |text, url|
14
- link = @browser.link(:url, url)
15
- link.should_not == nil
16
- link.text.should == text
17
- end
18
-
19
- # To avoid step definitions that are tightly coupled to your user interface,
20
- # consider creating classes for your pages - such as this:
21
- # http://github.com/aslakhellesoy/cucumber/tree/v0.1.15/examples/watir/features/step_definitons/search_steps.rb
22
- #
23
- # You may keep the page classes along your steps, or even better, put them in separate files, e.g.
24
- # support/pages/google_search.rb
@@ -1,32 +0,0 @@
1
- require 'spec/expectations'
2
-
3
- if ENV['FIREWATIR']
4
- require 'firewatir'
5
- Browser = FireWatir::Firefox
6
- else
7
- case RUBY_PLATFORM
8
- when /darwin/
9
- require 'safariwatir'
10
- Browser = Watir::Safari
11
- when /win32|mingw/
12
- require 'watir'
13
- Browser = Watir::IE
14
- when /java/
15
- require 'celerity'
16
- Browser = Celerity::Browser
17
- else
18
- raise "This platform is not supported (#{PLATFORM})"
19
- end
20
- end
21
-
22
- # "before all"
23
- browser = Browser.new
24
-
25
- Before do
26
- @browser = browser
27
- end
28
-
29
- # "after all"
30
- at_exit do
31
- browser.close
32
- end
@@ -1,327 +0,0 @@
1
- Feature: Cucumber command line
2
- In order to write better software
3
- Developers should be able to execute requirements as tests
4
-
5
- Scenario: Run single scenario with missing step definition
6
- When I run cucumber -q features/sample.feature:5
7
- Then it should pass with
8
- """
9
- @one
10
- Feature: Sample
11
-
12
- @two @three
13
- Scenario: Missing
14
- Given missing
15
-
16
- 1 scenario
17
- 1 undefined step
18
-
19
- """
20
-
21
- Scenario: Fail with --strict
22
- When I run cucumber -q features/sample.feature:5 --strict
23
- Then it should fail with
24
- """
25
- @one
26
- Feature: Sample
27
-
28
- @two @three
29
- Scenario: Missing
30
- Given missing
31
- Undefined step: "missing" (Cucumber::StepMother::Undefined)
32
- features/sample.feature:6:in `Given missing'
33
-
34
- 1 scenario
35
- 1 failed step
36
-
37
- """
38
-
39
- Scenario: Specify 2 line numbers where one is a tag
40
- When I run cucumber -q features/sample.feature:5:14
41
- Then it should fail with
42
- """
43
- @one
44
- Feature: Sample
45
-
46
- @two @three
47
- Scenario: Missing
48
- Given missing
49
-
50
- @four
51
- Scenario: Failing
52
- Given failing
53
- FAIL (RuntimeError)
54
- ./features/step_definitions/sample_steps.rb:2:in `flunker'
55
- ./features/step_definitions/sample_steps.rb:9:in `/^failing$/'
56
- features/sample.feature:16:in `Given failing'
57
-
58
- 2 scenarios
59
- 1 failed step
60
- 1 undefined step
61
-
62
- """
63
-
64
- Scenario: Require missing step definition from elsewhere
65
- When I run cucumber -q -r ../../features/step_definitions/extra_steps.rb features/sample.feature:5
66
- Then it should pass with
67
- """
68
- @one
69
- Feature: Sample
70
-
71
- @two @three
72
- Scenario: Missing
73
- Given missing
74
-
75
- 1 scenario
76
- 1 passed step
77
-
78
- """
79
-
80
- Scenario: Specify the line number of a row
81
- When I run cucumber -q features/sample.feature:12
82
- Then it should pass with
83
- """
84
- @one
85
- Feature: Sample
86
-
87
- @three
88
- Scenario: Passing
89
- Given passing
90
- | a | b |
91
- | c | d |
92
-
93
- 1 scenario
94
- 1 passed step
95
-
96
- """
97
-
98
- Scenario: Run all with progress formatter
99
- When I run cucumber -q --format progress features/sample.feature
100
- Then it should fail with
101
- """
102
- U.F
103
-
104
- (::) failed steps (::)
105
-
106
- FAIL (RuntimeError)
107
- ./features/step_definitions/sample_steps.rb:2:in `flunker'
108
- ./features/step_definitions/sample_steps.rb:9:in `/^failing$/'
109
- features/sample.feature:16:in `Given failing'
110
-
111
- 3 scenarios
112
- 1 failed step
113
- 1 undefined step
114
- 1 passed step
115
-
116
- """
117
-
118
- Scenario: Run Norwegian
119
- Given I am in i18n/no
120
- When I run cucumber -q --language no features
121
- Then it should pass with
122
- """
123
- Egenskap: Summering
124
- For å slippe å gjøre dumme feil
125
- Som en regnskapsfører
126
- Vil jeg kunne legge sammen
127
-
128
- Scenario: to tall
129
- Gitt at jeg har tastet inn 5
130
- Og at jeg har tastet inn 7
131
- Når jeg summerer
132
- Så skal resultatet være 12
133
-
134
- @iterasjon3
135
- Scenario: tre tall
136
- Gitt at jeg har tastet inn 5
137
- Og at jeg har tastet inn 7
138
- Og at jeg har tastet inn 1
139
- Når jeg summerer
140
- Så skal resultatet være 13
141
-
142
- 2 scenarios
143
- 9 passed steps
144
-
145
- """
146
-
147
- Scenario: --dry-run
148
- When I run cucumber --dry-run --no-snippets features
149
- Then it should pass with
150
- """
151
- Feature: Calling undefined step
152
-
153
- Scenario: Call directly
154
- Given a step definition that calls an undefined step
155
-
156
- Scenario: Call via another
157
- Given call step "a step definition that calls an undefined step"
158
-
159
- Feature: Lots of undefined
160
-
161
- Scenario: Implement me
162
- Given it snows in Sahara
163
- Given it's 40 degrees in Norway
164
- And it's 40 degrees in Norway
165
- When I stop procrastinating
166
- And there is world peace
167
-
168
- Feature: Outline Sample
169
-
170
- Scenario: I have no steps
171
-
172
- Scenario Outline: Test state
173
- Given <state> without a table
174
- Given <other_state> without a table
175
-
176
- Examples:
177
- | state | other_state |
178
- | missing | passing |
179
- | passing | passing |
180
- | failing | passing |
181
-
182
- @one
183
- Feature: Sample
184
-
185
- @two @three
186
- Scenario: Missing
187
- Given missing
188
-
189
- @three
190
- Scenario: Passing
191
- Given passing
192
- | a | b |
193
- | c | d |
194
-
195
- @four
196
- Scenario: Failing
197
- Given failing
198
-
199
- 10 scenarios
200
- 9 skipped steps
201
- 7 undefined steps
202
-
203
- """
204
-
205
- Scenario: Multiple formatters and outputs
206
- When I run cucumber --format progress --out tmp/progress.txt --format pretty --out tmp/pretty.txt --dry-run features/lots_of_undefined.feature
207
- And examples/self_test/tmp/progress.txt should contain
208
- """
209
- UUUUU
210
-
211
- 1 scenario
212
- 5 undefined steps
213
-
214
- """
215
- And examples/self_test/tmp/pretty.txt should match
216
- """
217
- Feature: Lots of undefined
218
-
219
- Scenario: Implement me
220
- Given it snows in Sahara
221
- Given it's 40 degrees in Norway
222
- And it's 40 degrees in Norway
223
- When I stop procrastinating
224
- And there is world peace
225
-
226
- 1 scenario
227
- 5 undefined steps
228
-
229
- """
230
-
231
- Scenario: Run scenario specified by name using --scenario
232
- When I run cucumber --scenario Passing -q features
233
- Then it should pass with
234
- """
235
- @one
236
- Feature: Sample
237
-
238
- @three
239
- Scenario: Passing
240
- Given passing
241
- | a | b |
242
- | c | d |
243
-
244
- 1 scenario
245
- 1 passed step
246
-
247
- """
248
-
249
- Scenario: Run with a tag that exists on 2 scenarios
250
- When I run cucumber -q features --tags three
251
- Then it should pass with
252
- """
253
- @one
254
- Feature: Sample
255
-
256
- @two @three
257
- Scenario: Missing
258
- Given missing
259
-
260
- @three
261
- Scenario: Passing
262
- Given passing
263
- | a | b |
264
- | c | d |
265
-
266
- 2 scenarios
267
- 1 undefined step
268
- 1 passed step
269
-
270
- """
271
-
272
- Scenario: Run with a tag that exists on 1 feature
273
- When I run cucumber -q features --tags one
274
- Then it should fail with
275
- """
276
- @one
277
- Feature: Sample
278
-
279
- @two @three
280
- Scenario: Missing
281
- Given missing
282
-
283
- @three
284
- Scenario: Passing
285
- Given passing
286
- | a | b |
287
- | c | d |
288
-
289
- @four
290
- Scenario: Failing
291
- Given failing
292
- FAIL (RuntimeError)
293
- ./features/step_definitions/sample_steps.rb:2:in `flunker'
294
- ./features/step_definitions/sample_steps.rb:9:in `/^failing$/'
295
- features/sample.feature:16:in `Given failing'
296
-
297
- 3 scenarios
298
- 1 failed step
299
- 1 undefined step
300
- 1 passed step
301
-
302
- """
303
-
304
- Scenario: Reformat files with --autoformat
305
- When I run cucumber --autoformat tmp/formatted features
306
- Then examples/self_test/tmp/formatted/features/sample.feature should contain
307
- """
308
- @one
309
- Feature: Sample
310
-
311
- @two @three
312
- Scenario: Missing
313
- Given missing
314
-
315
- @three
316
- Scenario: Passing
317
- Given passing
318
- | a | b |
319
- | c | d |
320
-
321
- @four
322
- Scenario: Failing
323
- Given failing
324
-
325
-
326
- """
327
-
@@ -1,81 +0,0 @@
1
- Feature: Cucumber command line
2
- In order to write better software
3
- Developers should be able to execute requirements as tests
4
-
5
- Scenario: Run scenario outline steps only
6
- When I run cucumber -q features/outline_sample.feature:7
7
- Then it should fail with
8
- """
9
- Feature: Outline Sample
10
-
11
- Scenario Outline: Test state
12
- Given <state> without a table
13
- Given <other_state> without a table
14
-
15
- Examples:
16
- | state | other_state |
17
- | missing | passing |
18
- | passing | passing |
19
- | failing | passing |
20
- FAIL (RuntimeError)
21
- ./features/step_definitions/sample_steps.rb:2:in `flunker'
22
- ./features/step_definitions/sample_steps.rb:16:in `/^failing without a table$/'
23
- features/outline_sample.feature:12:in `Given failing without a table'
24
-
25
- 3 scenarios
26
- 1 failed step
27
- 2 skipped steps
28
- 1 undefined step
29
- 2 passed steps
30
-
31
- """
32
-
33
- Scenario: Run single failing scenario outline table row
34
- When I run cucumber features/outline_sample.feature:12
35
- Then it should fail with
36
- """
37
- Feature: Outline Sample
38
-
39
- Scenario Outline: Test state # features/outline_sample.feature:5
40
- Given <state> without a table
41
- Given <other_state> without a table
42
-
43
- Examples:
44
- | state | other_state |
45
- | failing | passing |
46
- FAIL (RuntimeError)
47
- ./features/step_definitions/sample_steps.rb:2:in `flunker'
48
- ./features/step_definitions/sample_steps.rb:16:in `/^failing without a table$/'
49
- features/outline_sample.feature:12:in `Given failing without a table'
50
-
51
- 1 scenario
52
- 1 failed step
53
- 1 skipped step
54
-
55
- """
56
-
57
- Scenario: Run all with progress formatter
58
- When I run cucumber -q --format progress features/outline_sample.feature
59
- Then it should fail with
60
- """
61
- UUS..FS
62
-
63
- (::) undefined scenarios (::)
64
-
65
- features/outline_sample.feature:3:in `Scenario: I have no steps'
66
-
67
- (::) failed steps (::)
68
-
69
- FAIL (RuntimeError)
70
- ./features/step_definitions/sample_steps.rb:2:in `flunker'
71
- ./features/step_definitions/sample_steps.rb:16:in `/^failing without a table$/'
72
- features/outline_sample.feature:12:in `Given failing without a table'
73
-
74
- 4 scenarios
75
- 1 failed step
76
- 2 skipped steps
77
- 1 undefined step
78
- 2 passed steps
79
-
80
- """
81
-
@@ -1,32 +0,0 @@
1
- Feature: Cucumber command line
2
- In order to find out what step definitions need to be implemented
3
- Developers should always see what step definition is missing
4
-
5
- Scenario: Get info at arbitrary levels of nesting
6
- When I run cucumber features/call_undefined_step_from_step_def.feature
7
- Then it should pass with
8
- """
9
- Feature: Calling undefined step
10
-
11
- Scenario: Call directly # features/call_undefined_step_from_step_def.feature:3
12
- Given a step definition that calls an undefined step # features/step_definitions/sample_steps.rb:19
13
- Undefined step: "this does not exist" (Cucumber::StepMother::Undefined)
14
- ./features/step_definitions/sample_steps.rb:20:in `/^a step definition that calls an undefined step$/'
15
-
16
- Scenario: Call via another # features/call_undefined_step_from_step_def.feature:6
17
- Given call step "a step definition that calls an undefined step" # features/step_definitions/sample_steps.rb:23
18
- Undefined step: "this does not exist" (Cucumber::StepMother::Undefined)
19
- ./features/step_definitions/sample_steps.rb:20:in `/^a step definition that calls an undefined step$/'
20
-
21
- 2 scenarios
22
- 2 undefined steps
23
-
24
- You can implement step definitions for missing steps with these snippets:
25
-
26
- Given /^this does not exist$/ do
27
- pending
28
- end
29
-
30
-
31
- """
32
-
@@ -1,31 +0,0 @@
1
- Given /^I am in (.*)$/ do |dir|
2
- @dir = dir
3
- end
4
-
5
- When /^I run cucumber (.*)$/ do |cmd|
6
- @dir ||= 'self_test'
7
- full_dir ||= File.expand_path(File.dirname(__FILE__) + "/../../examples/#{@dir}")
8
- Dir.chdir(full_dir) do
9
- @full_cmd = "#{Cucumber::RUBY_BINARY} #{Cucumber::BINARY} --no-color #{cmd}"
10
- @out = `#{@full_cmd}`
11
- @status = $?.exitstatus
12
- end
13
- end
14
-
15
- Then /^it should (fail|pass) with$/ do |success, output|
16
- #puts @out
17
- @out.should == output
18
- if success == 'fail'
19
- @status.should_not == 0
20
- else
21
- @status.should == 0
22
- end
23
- end
24
-
25
- Then /^(.*) should contain$/ do |file, text|
26
- IO.read(file).should == text
27
- end
28
-
29
- Then /^(.*) should match$/ do |file, text|
30
- IO.read(file).should =~ Regexp.new(text)
31
- end
@@ -1,2 +0,0 @@
1
- Given /^missing$/ do
2
- end