aslakhellesoy-cucumber 0.1.99.3 → 0.1.99.4

Sign up to get free protection for your applications and to get access to all the features.
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