cucumber 3.0.0 → 3.1.0

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 (429) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +53 -3
  3. data/CONTRIBUTING.md +2 -4
  4. data/README.md +6 -5
  5. data/lib/cucumber/cli/options.rb +3 -1
  6. data/lib/cucumber/errors.rb +1 -1
  7. data/lib/cucumber/events/test_step_finished.rb +0 -2
  8. data/lib/cucumber/events/test_step_started.rb +0 -2
  9. data/lib/cucumber/events.rb +0 -1
  10. data/lib/cucumber/filters/quit.rb +0 -1
  11. data/lib/cucumber/formatter/html.rb +1 -1
  12. data/lib/cucumber/formatter/html_builder.rb +1 -1
  13. data/lib/cucumber/formatter/ignore_missing_messages.rb +0 -1
  14. data/lib/cucumber/formatter/json.rb +1 -1
  15. data/lib/cucumber/formatter/json_pretty.rb +0 -1
  16. data/lib/cucumber/formatter/junit.rb +6 -2
  17. data/lib/cucumber/formatter/rerun.rb +1 -1
  18. data/lib/cucumber/formatter/summary.rb +0 -1
  19. data/lib/cucumber/glue/dsl.rb +6 -2
  20. data/lib/cucumber/glue/proto_world.rb +2 -0
  21. data/lib/cucumber/glue/step_definition.rb +1 -1
  22. data/lib/cucumber/glue/world_factory.rb +1 -1
  23. data/lib/cucumber/hooks.rb +12 -0
  24. data/lib/cucumber/multiline_argument/data_table/diff_matrices.rb +0 -1
  25. data/lib/cucumber/multiline_argument/data_table.rb +6 -10
  26. data/lib/cucumber/multiline_argument.rb +1 -1
  27. data/lib/cucumber/step_definitions.rb +1 -1
  28. data/lib/cucumber/step_match.rb +4 -1
  29. data/lib/cucumber/step_match_search.rb +1 -1
  30. data/lib/cucumber/version +1 -1
  31. metadata +32 -571
  32. data/.coveralls.yml +0 -1
  33. data/.cucumberproignore +0 -6
  34. data/.gitattributes +0 -32
  35. data/.github/ISSUE_TEMPLATE.md +0 -48
  36. data/.github/PULL_REQUEST_TEMPLATE.md +0 -40
  37. data/.rspec +0 -1
  38. data/.rubocop.yml +0 -13
  39. data/.rubocop_todo.yml +0 -991
  40. data/.ruby-gemset +0 -1
  41. data/.travis.yml +0 -69
  42. data/.yardopts +0 -1
  43. data/Gemfile +0 -28
  44. data/Rakefile +0 -32
  45. data/appveyor.yml +0 -27
  46. data/cucumber.gemspec +0 -52
  47. data/cucumber.yml +0 -19
  48. data/examples/i18n/README.textile +0 -3
  49. data/examples/i18n/Rakefile +0 -33
  50. data/examples/i18n/ar/Rakefile +0 -6
  51. data/examples/i18n/ar/features/addition.feature +0 -17
  52. data/examples/i18n/ar/features/step_definitions/calculator_steps.rb +0 -29
  53. data/examples/i18n/ar/lib/calculator.rb +0 -11
  54. data/examples/i18n/bg/Rakefile +0 -6
  55. data/examples/i18n/bg/features/addition.feature +0 -12
  56. data/examples/i18n/bg/features/consecutive_calculations.feature +0 -19
  57. data/examples/i18n/bg/features/division.feature +0 -17
  58. data/examples/i18n/bg/features/step_definitions/calculator_steps.rb +0 -24
  59. data/examples/i18n/bg/features/support/env.rb +0 -10
  60. data/examples/i18n/bg/features/support/world.rb +0 -8
  61. data/examples/i18n/bg/lib/calculator.rb +0 -25
  62. data/examples/i18n/ca/Rakefile +0 -6
  63. data/examples/i18n/ca/features/step_definitions/calculator_steps.rb +0 -26
  64. data/examples/i18n/ca/features/suma.feature +0 -17
  65. data/examples/i18n/ca/lib/calculadora.rb +0 -16
  66. data/examples/i18n/cs/Rakefile +0 -6
  67. data/examples/i18n/cs/features/addition.feature +0 -17
  68. data/examples/i18n/cs/features/division.feature +0 -11
  69. data/examples/i18n/cs/features/step_definitions/calculator_steps.rb +0 -29
  70. data/examples/i18n/cs/lib/calculator.rb +0 -14
  71. data/examples/i18n/da/Rakefile +0 -6
  72. data/examples/i18n/da/features/sammenlaegning.feature +0 -18
  73. data/examples/i18n/da/features/step_definitions/lommeregner_steps.rb +0 -29
  74. data/examples/i18n/da/lib/lommeregner.rb +0 -11
  75. data/examples/i18n/de/Rakefile +0 -6
  76. data/examples/i18n/de/features/addition.feature +0 -17
  77. data/examples/i18n/de/features/division.feature +0 -10
  78. data/examples/i18n/de/features/step_definitions/calculator_steps.rb +0 -29
  79. data/examples/i18n/de/lib/calculator.rb +0 -14
  80. data/examples/i18n/el/Rakefile +0 -6
  81. data/examples/i18n/el/features/addition.feature +0 -17
  82. data/examples/i18n/el/features/division.feature +0 -10
  83. data/examples/i18n/el/features/step_definitions/calculator_steps.rb +0 -29
  84. data/examples/i18n/el/lib/calculator.rb +0 -14
  85. data/examples/i18n/en/Rakefile +0 -6
  86. data/examples/i18n/en/features/addition.feature +0 -17
  87. data/examples/i18n/en/features/division.feature +0 -10
  88. data/examples/i18n/en/features/step_definitions/calculator_steps.rb +0 -29
  89. data/examples/i18n/en/lib/calculator.rb +0 -14
  90. data/examples/i18n/en-lol/Rakefile +0 -4
  91. data/examples/i18n/en-lol/features/step_definitions/cucumbrz_steps.rb +0 -16
  92. data/examples/i18n/en-lol/features/stuffing.feature +0 -8
  93. data/examples/i18n/en-lol/features/support/env.rb +0 -11
  94. data/examples/i18n/en-lol/lib/basket.rb +0 -12
  95. data/examples/i18n/en-lol/lib/belly.rb +0 -11
  96. data/examples/i18n/eo/Rakefile +0 -6
  97. data/examples/i18n/eo/features/adicio.feature +0 -17
  98. data/examples/i18n/eo/features/divido.feature +0 -10
  99. data/examples/i18n/eo/features/step_definitions/calculator_steps.rb +0 -29
  100. data/examples/i18n/eo/lib/calculator.rb +0 -14
  101. data/examples/i18n/es/Rakefile +0 -6
  102. data/examples/i18n/es/features/adicion.feature +0 -17
  103. data/examples/i18n/es/features/step_definitions/calculador_steps.rb +0 -26
  104. data/examples/i18n/es/lib/calculador.rb +0 -14
  105. data/examples/i18n/et/Rakefile +0 -6
  106. data/examples/i18n/et/features/jagamine.feature +0 -10
  107. data/examples/i18n/et/features/liitmine.feature +0 -17
  108. data/examples/i18n/et/features/step_definitions/kalkulaator_steps.rb +0 -29
  109. data/examples/i18n/et/lib/kalkulaator.rb +0 -14
  110. data/examples/i18n/fi/Rakefile +0 -6
  111. data/examples/i18n/fi/features/jakolasku.feature +0 -10
  112. data/examples/i18n/fi/features/step_definitions/laskin_steps.rb +0 -29
  113. data/examples/i18n/fi/features/yhteenlasku.feature +0 -17
  114. data/examples/i18n/fi/lib/laskin.rb +0 -14
  115. data/examples/i18n/fr/Rakefile +0 -8
  116. data/examples/i18n/fr/features/addition.feature +0 -18
  117. data/examples/i18n/fr/features/addition2.feature +0 -17
  118. data/examples/i18n/fr/features/step_definitions/calculatrice_steps.rb +0 -32
  119. data/examples/i18n/fr/features/support/env.rb +0 -10
  120. data/examples/i18n/fr/lib/calculatrice.rb +0 -10
  121. data/examples/i18n/he/Rakefile +0 -6
  122. data/examples/i18n/he/features/addition.feature +0 -17
  123. data/examples/i18n/he/features/division.feature +0 -10
  124. data/examples/i18n/he/features/step_definitions/calculator_steps.rb +0 -29
  125. data/examples/i18n/he/lib/calculator.rb +0 -15
  126. data/examples/i18n/hi/Rakefile +0 -6
  127. data/examples/i18n/hi/features/addition.feature +0 -16
  128. data/examples/i18n/hi/features/division.feature +0 -10
  129. data/examples/i18n/hi/features/step_definitions/calculator_steps.rb +0 -29
  130. data/examples/i18n/hi/lib/calculator.rb +0 -15
  131. data/examples/i18n/ht/Rakefile +0 -6
  132. data/examples/i18n/ht/features/adisyon.feature +0 -17
  133. data/examples/i18n/ht/features/divizyon.feature +0 -10
  134. data/examples/i18n/ht/features/step_definitions/kalkilatris_steps.rb +0 -29
  135. data/examples/i18n/ht/lib/kalkilatris.rb +0 -14
  136. data/examples/i18n/hu/Rakefile +0 -6
  137. data/examples/i18n/hu/features/osszeadas.feature +0 -17
  138. data/examples/i18n/hu/features/osztas.feature +0 -10
  139. data/examples/i18n/hu/features/step_definitions/calculator_steps.rb +0 -30
  140. data/examples/i18n/hu/lib/calculator.rb +0 -14
  141. data/examples/i18n/id/Rakefile +0 -6
  142. data/examples/i18n/id/features/addition.feature +0 -17
  143. data/examples/i18n/id/features/division.feature +0 -10
  144. data/examples/i18n/id/features/step_definitions/calculator_steps.rb +0 -29
  145. data/examples/i18n/id/lib/calculator.rb +0 -14
  146. data/examples/i18n/it/Rakefile +0 -6
  147. data/examples/i18n/it/features/somma.feature +0 -11
  148. data/examples/i18n/it/features/step_definitions/calcolatrice_steps.rb +0 -29
  149. data/examples/i18n/it/lib/calcolatrice.rb +0 -11
  150. data/examples/i18n/ja/Rakefile +0 -6
  151. data/examples/i18n/ja/features/addition.feature +0 -17
  152. data/examples/i18n/ja/features/division.feature +0 -10
  153. data/examples/i18n/ja/features/step_definitions/calculator_steps.rb +0 -19
  154. data/examples/i18n/ja/features/support/env.rb +0 -10
  155. data/examples/i18n/ja/lib/calculator.rb +0 -14
  156. data/examples/i18n/ko/Rakefile +0 -6
  157. data/examples/i18n/ko/features/addition.feature +0 -17
  158. data/examples/i18n/ko/features/division.feature +0 -11
  159. data/examples/i18n/ko/features/step_definitions/calculator_steps.rb +0 -29
  160. data/examples/i18n/ko/lib/calculator.rb +0 -14
  161. data/examples/i18n/lt/Rakefile +0 -6
  162. data/examples/i18n/lt/features/addition.feature +0 -17
  163. data/examples/i18n/lt/features/division.feature +0 -10
  164. data/examples/i18n/lt/features/step_definitions/calculator_steps.rb +0 -29
  165. data/examples/i18n/lt/lib/calculator.rb +0 -14
  166. data/examples/i18n/lv/Rakefile +0 -6
  167. data/examples/i18n/lv/features/addition.feature +0 -17
  168. data/examples/i18n/lv/features/division.feature +0 -10
  169. data/examples/i18n/lv/features/step_definitions/calculator_steps.rb +0 -29
  170. data/examples/i18n/lv/lib/calculator.rb +0 -14
  171. data/examples/i18n/no/Rakefile +0 -6
  172. data/examples/i18n/no/features/step_definitions/kalkulator_steps.rb +0 -17
  173. data/examples/i18n/no/features/summering.feature +0 -19
  174. data/examples/i18n/no/features/support/env.rb +0 -11
  175. data/examples/i18n/no/lib/kalkulator.rb +0 -11
  176. data/examples/i18n/pl/Rakefile +0 -6
  177. data/examples/i18n/pl/features/addition.feature +0 -17
  178. data/examples/i18n/pl/features/division.feature +0 -10
  179. data/examples/i18n/pl/features/step_definitions/calculator_steps.rb +0 -29
  180. data/examples/i18n/pl/features/support/env.rb +0 -10
  181. data/examples/i18n/pl/lib/calculator.rb +0 -14
  182. data/examples/i18n/pt/Rakefile +0 -6
  183. data/examples/i18n/pt/features/adicao.feature +0 -11
  184. data/examples/i18n/pt/features/step_definitions/calculadora_steps.rb +0 -20
  185. data/examples/i18n/pt/features/support/env.rb +0 -10
  186. data/examples/i18n/pt/lib/calculadora.rb +0 -10
  187. data/examples/i18n/ro/Rakefile +0 -6
  188. data/examples/i18n/ro/features/adunare.feature +0 -12
  189. data/examples/i18n/ro/features/step_definitions/calculator_steps.rb +0 -26
  190. data/examples/i18n/ro/lib/calculator.rb +0 -11
  191. data/examples/i18n/ru/Rakefile +0 -6
  192. data/examples/i18n/ru/features/addition.feature +0 -11
  193. data/examples/i18n/ru/features/consecutive_calculations.feature +0 -17
  194. data/examples/i18n/ru/features/division.feature +0 -16
  195. data/examples/i18n/ru/features/step_definitions/calculator_steps.rb +0 -19
  196. data/examples/i18n/ru/features/support/env.rb +0 -10
  197. data/examples/i18n/ru/features/support/world.rb +0 -8
  198. data/examples/i18n/ru/lib/calculator.rb +0 -25
  199. data/examples/i18n/sk/Rakefile +0 -6
  200. data/examples/i18n/sk/features/addition.feature +0 -17
  201. data/examples/i18n/sk/features/division.feature +0 -10
  202. data/examples/i18n/sk/features/step_definitions/calculator_steps.rb +0 -29
  203. data/examples/i18n/sk/lib/calculator.rb +0 -14
  204. data/examples/i18n/sr-Cyrl/Rakefile +0 -6
  205. data/examples/i18n/sr-Cyrl/features/sabiranje.feature +0 -18
  206. data/examples/i18n/sr-Cyrl/features/step_definitions/calculator_steps.rb +0 -20
  207. data/examples/i18n/sr-Cyrl/features/support/env.rb +0 -10
  208. data/examples/i18n/sr-Cyrl/lib/calculator.rb +0 -12
  209. data/examples/i18n/sr-Latn/Rakefile +0 -6
  210. data/examples/i18n/sr-Latn/features/sabiranje.feature +0 -18
  211. data/examples/i18n/sr-Latn/features/step_definitions/calculator_steps.rb +0 -29
  212. data/examples/i18n/sr-Latn/lib/calculator.rb +0 -12
  213. data/examples/i18n/sv/Rakefile +0 -6
  214. data/examples/i18n/sv/features/step_definitions/kalkulator_steps.rb +0 -29
  215. data/examples/i18n/sv/features/summering.feature +0 -18
  216. data/examples/i18n/sv/lib/kalkulator.rb +0 -11
  217. data/examples/i18n/tr/Rakefile +0 -6
  218. data/examples/i18n/tr/features/bolme.feature +0 -10
  219. data/examples/i18n/tr/features/step_definitions/hesap_makinesi_adimlari.rb +0 -29
  220. data/examples/i18n/tr/features/toplama.feature +0 -18
  221. data/examples/i18n/tr/lib/hesap_makinesi.rb +0 -15
  222. data/examples/i18n/uk/Rakefile +0 -6
  223. data/examples/i18n/uk/features/addition.feature +0 -11
  224. data/examples/i18n/uk/features/consecutive_calculations.feature +0 -17
  225. data/examples/i18n/uk/features/division.feature +0 -16
  226. data/examples/i18n/uk/features/step_definitions/calculator_steps.rb +0 -19
  227. data/examples/i18n/uk/features/support/env.rb +0 -10
  228. data/examples/i18n/uk/features/support/world.rb +0 -8
  229. data/examples/i18n/uk/lib/calculator.rb +0 -25
  230. data/examples/i18n/uz/Rakefile +0 -6
  231. data/examples/i18n/uz/features/addition.feature +0 -10
  232. data/examples/i18n/uz/features/consecutive_calculations.feature +0 -17
  233. data/examples/i18n/uz/features/division.feature +0 -17
  234. data/examples/i18n/uz/features/step_definitions/calculator_steps.rb +0 -19
  235. data/examples/i18n/uz/features/support/env.rb +0 -10
  236. data/examples/i18n/uz/features/support/world.rb +0 -8
  237. data/examples/i18n/uz/lib/calculator.rb +0 -25
  238. data/examples/i18n/zh-CN/Rakefile +0 -4
  239. data/examples/i18n/zh-CN/features/addition.feature +0 -18
  240. data/examples/i18n/zh-CN/features/step_definitions/calculator_steps.rb +0 -31
  241. data/examples/i18n/zh-CN/lib/calculator.rb +0 -10
  242. data/examples/i18n/zh-TW/Rakefile +0 -4
  243. data/examples/i18n/zh-TW/features/addition.feature +0 -17
  244. data/examples/i18n/zh-TW/features/division.feature +0 -11
  245. data/examples/i18n/zh-TW/features/step_definitions/calculator_steps.rb +0 -29
  246. data/examples/i18n/zh-TW/lib/calculator.rb +0 -14
  247. data/examples/rspec_doubles/Rakefile +0 -4
  248. data/examples/rspec_doubles/features/mocking.feature +0 -9
  249. data/examples/rspec_doubles/features/step_definitions/calvin_steps.rb +0 -19
  250. data/examples/rspec_doubles/features/support/env.rb +0 -12
  251. data/examples/sinatra/README.textile +0 -13
  252. data/examples/sinatra/Rakefile +0 -6
  253. data/examples/sinatra/app.rb +0 -14
  254. data/examples/sinatra/features/add.feature +0 -11
  255. data/examples/sinatra/features/step_definitions/add_steps.rb +0 -15
  256. data/examples/sinatra/features/support/env.rb +0 -15
  257. data/examples/sinatra/views/add.erb +0 -7
  258. data/examples/sinatra/views/layout.erb +0 -8
  259. data/examples/tcl/README.textile +0 -11
  260. data/examples/tcl/Rakefile +0 -6
  261. data/examples/tcl/features/fibonnacci.feature +0 -17
  262. data/examples/tcl/features/step_definitions/fib_steps.rb +0 -7
  263. data/examples/tcl/features/support/env.rb +0 -7
  264. data/examples/tcl/src/fib.tcl +0 -3
  265. data/examples/test_unit/Gemfile +0 -4
  266. data/examples/test_unit/Rakefile +0 -6
  267. data/examples/test_unit/features/step_definitions/test_unit_steps.rb +0 -20
  268. data/examples/test_unit/features/test_unit.feature +0 -9
  269. data/examples/watir/README.textile +0 -16
  270. data/examples/watir/Rakefile +0 -12
  271. data/examples/watir/cucumber.yml +0 -1
  272. data/examples/watir/features/search.feature +0 -12
  273. data/examples/watir/features/step_definitions/search_steps.rb +0 -27
  274. data/examples/watir/features/support/env.rb +0 -39
  275. data/examples/watir/features/support/screenshots.rb +0 -47
  276. data/features/docs/api/list_step_defs_as_json.feature +0 -64
  277. data/features/docs/api/listen_for_events.feature +0 -59
  278. data/features/docs/api/run_cli_main_with_existing_runtime.feature +0 -27
  279. data/features/docs/cli/backtraces.feature +0 -36
  280. data/features/docs/cli/dry_run.feature +0 -73
  281. data/features/docs/cli/exclude_files.feature +0 -18
  282. data/features/docs/cli/execute_with_tag_filter.feature +0 -119
  283. data/features/docs/cli/fail_fast.feature +0 -48
  284. data/features/docs/cli/finding_steps.feature +0 -28
  285. data/features/docs/cli/help.feature +0 -8
  286. data/features/docs/cli/i18n.feature +0 -42
  287. data/features/docs/cli/randomize.feature +0 -140
  288. data/features/docs/cli/require.feature +0 -27
  289. data/features/docs/cli/retry_failing_tests.feature +0 -92
  290. data/features/docs/cli/run_scenarios_matching_name.feature +0 -105
  291. data/features/docs/cli/run_specific_scenarios.feature +0 -77
  292. data/features/docs/cli/showing_differences.feature +0 -43
  293. data/features/docs/cli/specifying_multiple_formatters.feature +0 -68
  294. data/features/docs/cli/strict_mode.feature +0 -70
  295. data/features/docs/defining_steps/ambiguous_steps.feature +0 -89
  296. data/features/docs/defining_steps/nested_steps.feature +0 -181
  297. data/features/docs/defining_steps/nested_steps_i18n.feature +0 -37
  298. data/features/docs/defining_steps/nested_steps_with_second_arg.feature +0 -56
  299. data/features/docs/defining_steps/one_line_step_definitions.feature +0 -65
  300. data/features/docs/defining_steps/printing_messages.feature +0 -147
  301. data/features/docs/defining_steps/skip_scenario.feature +0 -31
  302. data/features/docs/defining_steps/snippets.feature +0 -56
  303. data/features/docs/defining_steps/table_diffing.feature +0 -50
  304. data/features/docs/events/gherkin_source_read_event.feature +0 -43
  305. data/features/docs/events/step_activated_event.feature +0 -36
  306. data/features/docs/events/step_definition_registered_event.feature +0 -29
  307. data/features/docs/events/test_case_finished_event.feature +0 -35
  308. data/features/docs/events/test_case_started_event.feature +0 -54
  309. data/features/docs/events/test_run_finished_event.feature +0 -40
  310. data/features/docs/events/test_run_started_event.feature +0 -41
  311. data/features/docs/events/test_step_finished_event.feature +0 -47
  312. data/features/docs/events/test_step_started_event.feature +0 -43
  313. data/features/docs/exception_in_after_hook.feature +0 -127
  314. data/features/docs/exception_in_after_step_hook.feature +0 -104
  315. data/features/docs/exception_in_around_hook.feature +0 -80
  316. data/features/docs/exception_in_before_hook.feature +0 -98
  317. data/features/docs/extending_cucumber/custom_filter.feature +0 -29
  318. data/features/docs/extending_cucumber/custom_formatter.feature +0 -94
  319. data/features/docs/formatters/api_methods.feature +0 -37
  320. data/features/docs/formatters/html_formatter.feature +0 -91
  321. data/features/docs/formatters/json_formatter.feature +0 -767
  322. data/features/docs/formatters/junit_formatter.feature +0 -455
  323. data/features/docs/formatters/pretty_formatter.feature +0 -74
  324. data/features/docs/formatters/progress_formatter.feature +0 -32
  325. data/features/docs/formatters/rerun_formatter.feature +0 -190
  326. data/features/docs/formatters/summary_formatter.feature +0 -35
  327. data/features/docs/formatters/usage_formatter.feature +0 -101
  328. data/features/docs/getting_started.feature +0 -28
  329. data/features/docs/gherkin/background.feature +0 -548
  330. data/features/docs/gherkin/doc_strings.feature +0 -76
  331. data/features/docs/gherkin/expand_option_for_outlines.feature +0 -47
  332. data/features/docs/gherkin/language_from_header.feature +0 -32
  333. data/features/docs/gherkin/outlines.feature +0 -158
  334. data/features/docs/gherkin/unicode_table.feature +0 -33
  335. data/features/docs/gherkin/using_descriptions.feature +0 -83
  336. data/features/docs/gherkin/using_star_notation.feature +0 -37
  337. data/features/docs/iso-8859-1.feature +0 -6
  338. data/features/docs/post_configuration_hook.feature +0 -33
  339. data/features/docs/profiles.feature +0 -120
  340. data/features/docs/rake_task.feature +0 -146
  341. data/features/docs/raketask.feature +0 -46
  342. data/features/docs/work_in_progress.feature +0 -157
  343. data/features/docs/writing_support_code/after_hooks.feature +0 -102
  344. data/features/docs/writing_support_code/after_step_hooks.feature +0 -55
  345. data/features/docs/writing_support_code/around_hooks.feature +0 -266
  346. data/features/docs/writing_support_code/before_hook.feature +0 -66
  347. data/features/docs/writing_support_code/hook_order.feature +0 -63
  348. data/features/docs/writing_support_code/load_path.feature +0 -17
  349. data/features/docs/writing_support_code/parameter_types.feature +0 -53
  350. data/features/docs/writing_support_code/state.feature +0 -32
  351. data/features/docs/writing_support_code/tagged_hooks.feature +0 -95
  352. data/features/docs/writing_support_code/world.feature +0 -129
  353. data/features/lib/step_definitions/aruba_steps.rb +0 -21
  354. data/features/lib/step_definitions/cli_steps.rb +0 -4
  355. data/features/lib/step_definitions/cucumber_steps.rb +0 -75
  356. data/features/lib/step_definitions/iso-8859-1_steps.rb +0 -16
  357. data/features/lib/step_definitions/json_steps.rb +0 -8
  358. data/features/lib/step_definitions/junit_steps.rb +0 -14
  359. data/features/lib/step_definitions/language_steps.rb +0 -9
  360. data/features/lib/step_definitions/profile_steps.rb +0 -16
  361. data/features/lib/step_definitions/retry_steps.rb +0 -55
  362. data/features/lib/step_definitions/ruby_steps.rb +0 -4
  363. data/features/lib/support/env.rb +0 -22
  364. data/features/lib/support/fake_wire_server.rb +0 -94
  365. data/features/lib/support/feature_factory.rb +0 -68
  366. data/features/lib/support/normalise_output.rb +0 -52
  367. data/features/lib/support/parameter_types.rb +0 -5
  368. data/gem_tasks/contributors.rake +0 -19
  369. data/gem_tasks/cov.rake +0 -6
  370. data/gem_tasks/downloads.rb +0 -8
  371. data/gem_tasks/environment.rake +0 -4
  372. data/gem_tasks/examples.rake +0 -12
  373. data/gem_tasks/fix_cr_lf.rake +0 -22
  374. data/gem_tasks/flog.rake +0 -5
  375. data/gem_tasks/rspec.rake +0 -7
  376. data/gem_tasks/sass.rake +0 -5
  377. data/gem_tasks/stats +0 -16
  378. data/gem_tasks/versions.txt +0 -74
  379. data/scripts/invite-collaborator +0 -40
  380. data/scripts/update-changelog +0 -86
  381. data/spec/cucumber/cli/configuration_spec.rb +0 -446
  382. data/spec/cucumber/cli/main_spec.rb +0 -84
  383. data/spec/cucumber/cli/options_spec.rb +0 -445
  384. data/spec/cucumber/cli/profile_loader_spec.rb +0 -66
  385. data/spec/cucumber/cli/rerun_spec.rb +0 -86
  386. data/spec/cucumber/configuration_spec.rb +0 -148
  387. data/spec/cucumber/constantize_spec.rb +0 -20
  388. data/spec/cucumber/events_spec.rb +0 -9
  389. data/spec/cucumber/file_specs_spec.rb +0 -61
  390. data/spec/cucumber/filters/activate_steps_spec.rb +0 -152
  391. data/spec/cucumber/filters/gated_receiver_spec.rb +0 -48
  392. data/spec/cucumber/filters/retry_spec.rb +0 -98
  393. data/spec/cucumber/filters/tag_limits/test_case_index_spec.rb +0 -39
  394. data/spec/cucumber/filters/tag_limits/verifier_spec.rb +0 -58
  395. data/spec/cucumber/filters/tag_limits_spec.rb +0 -60
  396. data/spec/cucumber/formatter/ansicolor_spec.rb +0 -33
  397. data/spec/cucumber/formatter/backtrace_filter_spec.rb +0 -32
  398. data/spec/cucumber/formatter/console_counts_spec.rb +0 -14
  399. data/spec/cucumber/formatter/duration_spec.rb +0 -23
  400. data/spec/cucumber/formatter/fail_fast_spec.rb +0 -88
  401. data/spec/cucumber/formatter/html_spec.rb +0 -543
  402. data/spec/cucumber/formatter/interceptor_spec.rb +0 -137
  403. data/spec/cucumber/formatter/json_spec.rb +0 -815
  404. data/spec/cucumber/formatter/junit_spec.rb +0 -251
  405. data/spec/cucumber/formatter/legacy_api/adapter_spec.rb +0 -2175
  406. data/spec/cucumber/formatter/pretty_spec.rb +0 -907
  407. data/spec/cucumber/formatter/progress_spec.rb +0 -170
  408. data/spec/cucumber/formatter/rerun_spec.rb +0 -97
  409. data/spec/cucumber/formatter/spec_helper.rb +0 -84
  410. data/spec/cucumber/glue/proto_world_spec.rb +0 -63
  411. data/spec/cucumber/glue/registry_and_more_spec.rb +0 -213
  412. data/spec/cucumber/glue/snippet_spec.rb +0 -174
  413. data/spec/cucumber/glue/step_definition_spec.rb +0 -207
  414. data/spec/cucumber/hooks_spec.rb +0 -31
  415. data/spec/cucumber/multiline_argument/data_table_spec.rb +0 -653
  416. data/spec/cucumber/project_initializer_spec.rb +0 -88
  417. data/spec/cucumber/rake/forked_spec.rb +0 -58
  418. data/spec/cucumber/rake/task_spec.rb +0 -86
  419. data/spec/cucumber/running_test_case_spec.rb +0 -140
  420. data/spec/cucumber/runtime/for_programming_languages_spec.rb +0 -8
  421. data/spec/cucumber/runtime/support_code_spec.rb +0 -17
  422. data/spec/cucumber/runtime_spec.rb +0 -21
  423. data/spec/cucumber/sell_cucumbers.feature +0 -19
  424. data/spec/cucumber/step_argument_spec.rb +0 -19
  425. data/spec/cucumber/step_match_search_spec.rb +0 -113
  426. data/spec/cucumber/step_match_spec.rb +0 -86
  427. data/spec/cucumber/world/pending_spec.rb +0 -48
  428. data/spec/spec_helper.rb +0 -30
  429. data/spec/support/standard_step_actions.rb +0 -19
data/.ruby-gemset DELETED
@@ -1 +0,0 @@
1
- cucumber
data/.travis.yml DELETED
@@ -1,69 +0,0 @@
1
- sudo: false
2
-
3
- matrix:
4
- include:
5
- - rvm: ruby-head
6
- os: linux
7
- - rvm: ruby-head
8
- os: osx
9
- - rvm: 2.4.1
10
- os: linux
11
- # TravisCI OSX doesn't work with Ruby 2.4.1 yet (https://github.com/travis-ci/travis-ci/issues/7848)
12
- - rvm: 2.4.0
13
- os: osx
14
- - rvm: 2.3.4
15
- os: linux
16
- - rvm: 2.3.4
17
- os: osx
18
- - rvm: 2.2
19
- os: linux
20
- - rvm: 2.2
21
- os: osx
22
- - rvm: 2.1
23
- os: linux
24
- - rvm: 2.1
25
- os: osx
26
- - rvm: jruby-9.1.13.0
27
- os: linux
28
- env:
29
- # Travis by default also have "-Dcext.enabled=false" set in
30
- # JRUBY_OPTS, but JRuby 9 does not support C extensions at all
31
- # so it issues warning that will mess up the sterr checks.
32
- - JRUBY_OPTS="--server -Xcompile.invokedynamic=false"
33
- # Somehow a "ASCII-8BIT to UTF-8 conversion error" appears for
34
- # JRuby 9
35
- - LC_ALL=en_US.UTF-8
36
- - LANG=en_US.UTF-8
37
- - LANGUAGE=en_US.UTF-8
38
- - rvm: jruby-9.1.13.0
39
- os: osx
40
- env:
41
- # Travis by default also have "-Dcext.enabled=false" set in
42
- # JRUBY_OPTS, but JRuby 9 does not support C extensions at all
43
- # so it issues warning that will mess up the sterr checks.
44
- - JRUBY_OPTS="--server -Xcompile.invokedynamic=false"
45
- # Somehow a "ASCII-8BIT to UTF-8 conversion error" appears for
46
- # JRuby 9
47
- - LC_ALL=en_US.UTF-8
48
- - LANG=en_US.UTF-8
49
- - LANGUAGE=en_US.UTF-8
50
- allow_failures:
51
- - rvm: ruby-head
52
- fast_finish: true
53
-
54
- # whitelist
55
- branches:
56
- only:
57
- - master
58
- - v1.3.x-bugfix
59
- - expanded_ci
60
-
61
- before_install:
62
- - gem update --system
63
- - gem update bundler
64
-
65
- notifications:
66
- webhooks:
67
- urls: # gitter
68
- - https://webhooks.gitter.im/e/dc010332f9d40fcc21c4
69
- slack: cucumberbdd:oQFVhzsx4R94KWmjlejAJYnM
data/.yardopts DELETED
@@ -1 +0,0 @@
1
- --no-private
data/Gemfile DELETED
@@ -1,28 +0,0 @@
1
- gem 'cucumber-pro', '0.0.13', :group => :test
2
- source 'https://rubygems.org'
3
- gemspec
4
- load File.expand_path('../Gemfile.local', __FILE__) if File.file? File.expand_path('../Gemfile.local', __FILE__)
5
-
6
- unless ENV['CUCUMBER_USE_RELEASED_CORE']
7
- core_path = File.expand_path('../../cucumber-ruby-core', __FILE__)
8
- wire_path = File.expand_path('../../cucumber-ruby-wire', __FILE__)
9
- if File.exist?(core_path) && !ENV['CUCUMBER_USE_GIT_CORE']
10
- gem 'cucumber-core', :path => core_path
11
- else
12
- gem 'cucumber-core', :git => 'https://github.com/cucumber/cucumber-ruby-core.git'
13
- end
14
-
15
- if File.exist?(wire_path) && !ENV['CUCUMBER_USE_GIT_WIRE']
16
- gem 'cucumber-wire', :path => wire_path
17
- else
18
- gem 'cucumber-wire', :git => 'https://github.com/cucumber/cucumber-ruby-wire.git'
19
- end
20
-
21
- if ENV['CUCUMBER_EXPRESSIONS']
22
- gem 'cucumber-expressions', :path => ENV['CUCUMBER_EXPRESSIONS']
23
- else
24
- gem 'cucumber-expressions', :git => 'https://github.com/cucumber/cucumber-expressions-ruby.git'
25
- end
26
- end
27
-
28
- gem 'mime-types', '~>2.99'
data/Rakefile DELETED
@@ -1,32 +0,0 @@
1
- # encoding: utf-8
2
- require 'rubygems'
3
- require 'bundler'
4
- Bundler::GemHelper.install_tasks
5
-
6
- $:.unshift(File.dirname(__FILE__) + '/lib')
7
- Dir['gem_tasks/**/*.rake'].each { |rake| load rake }
8
-
9
- require 'rubocop/rake_task'
10
- RuboCop::RakeTask.new
11
-
12
- require 'cucumber/rake/task'
13
- Cucumber::Rake::Task.new do |t|
14
- t.profile = 'ruby' if Cucumber::RUBY
15
- end
16
-
17
- default_tasks = [:spec, :rubocop, :cucumber]
18
-
19
- if ENV['TRAVIS']
20
- ENV['SIMPLECOV'] = 'ci'
21
- ENV['JRUBY_OPTS'] = [ENV['JRUBY_OPTS'], '--debug'].compact.join(' ')
22
-
23
- require 'coveralls/rake/task'
24
- Coveralls::RakeTask.new
25
-
26
- default_tasks << 'coveralls:push'
27
- end
28
-
29
- task :default => default_tasks
30
-
31
- require 'rake/clean'
32
- CLEAN.include %w(**/*.{log,pyc,rbc,tgz} doc)
data/appveyor.yml DELETED
@@ -1,27 +0,0 @@
1
- version: '1.0.{build}'
2
-
3
- environment:
4
- matrix:
5
- - RUBY_VERSION: 23
6
- - RUBY_VERSION: 23-x64
7
-
8
-
9
- install:
10
- - set PATH=C:\Ruby%RUBY_VERSION%\bin;%PATH%
11
- - bundle install
12
-
13
- build: off
14
-
15
- before_test:
16
- - ruby -v
17
- - gem -v
18
- - bundle -v
19
-
20
- test_script:
21
- - bundle exec rake
22
-
23
- notifications:
24
- - provider: Slack
25
- incoming_webhook:
26
- secure: Zj2V5eXlqH4jMNvdzMBmdLA+lr658qwlJO+o7yfvUc1TMRSLNQaId9rpVWX+FsEH6DsQxYr46BRWU0bymATBe7rf7KSkomCgsAdupvKYciI=
27
-
data/cucumber.gemspec DELETED
@@ -1,52 +0,0 @@
1
- # -*- encoding: utf-8 -*-
2
- Gem::Specification.new do |s|
3
- s.name = 'cucumber'
4
- s.version = File.read(File.expand_path('../lib/cucumber/version', __FILE__))
5
- s.authors = ["Aslak Hellesøy", 'Matt Wynne', 'Steve Tooke']
6
- s.description = 'Behaviour Driven Development with elegance and joy'
7
- s.summary = "cucumber-#{s.version}"
8
- s.email = 'cukes@googlegroups.com'
9
- s.license = 'MIT'
10
- s.homepage = 'https://cucumber.io/'
11
- s.platform = Gem::Platform::RUBY
12
- s.required_ruby_version = '>= 1.9.3'
13
- s.add_dependency 'cucumber-core', '~> 3.0.0'
14
- s.add_dependency 'builder', '>= 2.1.2'
15
- s.add_dependency 'diff-lcs', '~> 1.3'
16
- s.add_dependency 'gherkin', '~> 4.0'
17
- s.add_dependency 'multi_json', '>= 1.7.5', '< 2.0'
18
- s.add_dependency 'multi_test', '>= 0.1.2'
19
- s.add_dependency 'cucumber-wire', '~> 0.0.1'
20
- s.add_dependency 'cucumber-expressions', '~> 4.0.3'
21
-
22
- s.add_development_dependency 'aruba', '~> 0.6.1'
23
- s.add_development_dependency 'json', '~> 1.8.6'
24
- s.add_development_dependency 'nokogiri', '~> 1.5'
25
- s.add_development_dependency 'rake', '>= 0.9.2'
26
- s.add_development_dependency 'rspec', '>= 3.0'
27
- s.add_development_dependency 'simplecov', '>= 0.6.2'
28
- s.add_development_dependency 'coveralls', '~> 0.7'
29
- s.add_development_dependency 'syntax', '>= 1.0.0'
30
- s.add_development_dependency 'pry'
31
- s.add_development_dependency 'rubocop', '~> 0.40.0'
32
-
33
- # For maintainer scripts
34
- s.add_development_dependency 'octokit'
35
-
36
- # For Documentation:
37
- s.add_development_dependency 'bcat', '~> 0.6.2'
38
- s.add_development_dependency 'kramdown', '~> 0.14'
39
- s.add_development_dependency 'yard', '~> 0.8.0'
40
-
41
- # Needed for examples (rake examples)
42
- s.add_development_dependency 'capybara', '>= 2.1'
43
- s.add_development_dependency 'rack-test', '>= 0.6.1'
44
- s.add_development_dependency 'sinatra', '>= 1.3.2'
45
-
46
- s.rubygems_version = '>= 1.6.1'
47
- s.files = `git ls-files`.split("\n").reject {|path| path =~ /\.gitignore$/ }
48
- s.test_files = `git ls-files -- {spec,features}/*`.split("\n")
49
- s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
50
- s.rdoc_options = ['--charset=UTF-8']
51
- s.require_path = 'lib'
52
- end
data/cucumber.yml DELETED
@@ -1,19 +0,0 @@
1
- <%
2
- cucumber_pro_opts = ENV['ENABLE_CUCUMBER_PRO'] ? "--format Cucumber::Pro --out /dev/null" : ""
3
- rerun = File.file?('rerun.txt') ? IO.read('rerun.txt') : ""
4
- rerun_opts = rerun.to_s.strip.empty? ? "--format progress features" : "--format pretty #{rerun}"
5
- std_opts = "--format progress features -r features --strict #{cucumber_pro_opts}"
6
- std_opts << " --tags ~@wip-jruby" if defined?(JRUBY_VERSION)
7
-
8
- wip_opts = "--color -r features"
9
- wip_opts << " --tags @wip" if !defined?(JRUBY_VERSION)
10
- wip_opts << " --tags @wip,@wip-jruby" if defined?(JRUBY_VERSION)
11
- %>
12
- default: <%= std_opts %> --tags "not @jruby"
13
- jruby: <%= std_opts %> --tags "not @wire"
14
- jruby_win: <%= std_opts %> --tags "not @wire" CUCUMBER_FORWARD_SLASH_PATHS=true
15
- windows_mri: <%= std_opts %> --tags "not @jruby" --tags "not @wire" --tags "not @needs-many-fonts" --tags "not @todo-windows" CUCUMBER_FORWARD_SLASH_PATHS=true
16
- ruby: <%= std_opts %> --tags "not @todo-windows" --tags "not @jruby"
17
- wip: --wip <%= wip_opts %> features <%= cucumber_pro_opts %>
18
- none: --format pretty --format Cucumber::Pro --out /dev/null
19
- rerun: <%= rerun_opts %> --format rerun --out rerun.txt --strict --tags "not @wip-new-core" <%= cucumber_pro_opts %>
@@ -1,3 +0,0 @@
1
- h1. Internationalisation (i18n) examples
2
-
3
- Visit the "wiki":https://github.com/cucumber/cucumber/wiki/Spoken-languages for instructions on how to use Cucumber on different languages.
@@ -1,33 +0,0 @@
1
- desc 'Run features for all languages'
2
- task :cucumber do
3
- dir = File.dirname(__FILE__)
4
- Dir["#{dir}/*"].each do |f|
5
- if File.directory?(f)
6
- lang = f[dir.length+1..-1]
7
- if examples_working?(lang)
8
- Dir.chdir(f) do
9
- puts "DIR: #{f}"
10
- rake('cucumber')
11
- end
12
- else
13
- STDERR.puts %{
14
- !!!!!
15
- !!!!!
16
- !!!!! SKIPPING #{lang} (The examples are out of date - please help update them)
17
- !!!!!
18
- !!!!!
19
- }
20
- end
21
- end
22
- end
23
- end
24
-
25
- task :default => :cucumber
26
-
27
- def examples_working?(lang)
28
- !%w{}.index(lang)
29
- end
30
-
31
- def rake(args)
32
- ruby($0, args)
33
- end
@@ -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 = %w{--format pretty}
6
- end
@@ -1,17 +0,0 @@
1
- # language: ar
2
- خاصية: الجمع
3
- من اجل تجنب الأخطاء السخيفة
4
- كشخص غبي في الرياضيات
5
- اريد معرفة ناتج جمع عددين
6
-
7
- سيناريو مخطط: جمع عددين
8
- بفرض كتابة <input_1> في الآلة الحاسبة
9
- و كتابة <input_2> في الآلة الحاسبة
10
- متى يتم الضغط على <button>
11
- اذاً يظهر <output> على الشاشة
12
-
13
- امثلة:
14
- | input_1 | input_2 | button | output |
15
- | 20 | 30 | جمع | 50 |
16
- | 2 | 5 | جمع | 7 |
17
- | 0 | 40 | جمع | 40 |
@@ -1,29 +0,0 @@
1
- # encoding: utf-8
2
- begin
3
- require 'rspec/expectations'
4
- rescue LoadError
5
- require 'spec/expectations'
6
- end
7
-
8
- require 'cucumber/formatter/unicode'
9
- $:.unshift(File.dirname(__FILE__) + '/../../lib')
10
- require 'calculator'
11
-
12
- Before do
13
- @calc = Calculator.new
14
- end
15
-
16
- After do
17
- end
18
-
19
- Given "كتابة $n في الآلة الحاسبة" do |n|
20
- @calc.push n.to_i
21
- end
22
-
23
- When(/يتم الضغط على (.+)/) do |op|
24
- @result = @calc.send op
25
- end
26
-
27
- Then(/يظهر (.*) على الشاشة/) do |result|
28
- @result.should == result.to_f
29
- end
@@ -1,11 +0,0 @@
1
- # encoding: utf-8
2
- class Calculator
3
- def push(n)
4
- @args ||= []
5
- @args << n
6
- end
7
-
8
- def جمع
9
- @args.inject(0){|n,sum| sum + n}
10
- end
11
- end
@@ -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 = %w{--format pretty}
6
- end
@@ -1,12 +0,0 @@
1
- # language: bg
2
- Функционалност: Събиране на числа
3
- За да не го правят наум
4
- Потребителите
5
- Трябва да могат да събират числа с калкулатора
6
-
7
- Сценарий: Събиране на две цели числа
8
- Дадено е че съм въвел 50
9
- И съм въвел 70
10
- Когато натисна "+"
11
- То резултата трябва да е равен на 120
12
-
@@ -1,19 +0,0 @@
1
- # language: bg
2
- Функционалност: Последователни изчисления
3
- За да не го правят наум
4
- Потребителите
5
- Трябва да могат да извършват последователни изчисления с калкулатора
6
-
7
- Предистория:
8
- Дадено е че съм събрал 3 и 5
9
-
10
- Сценарий: събиране с резултата от последната операция
11
- Когато въведа 4
12
- И натисна "+"
13
- То резултата трябва да е равен на 12
14
-
15
- Сценарий: делене с резултата от последната операция
16
- Когато въведа 2
17
- И натисна "/"
18
- То резултата трябва да е равен на 4
19
-
@@ -1,17 +0,0 @@
1
- # language: bg
2
- Функционалност: Делене на числа
3
- За да не го правят наум
4
- Потребителите
5
- Трябва да могат да разделят числа с калкулатора
6
-
7
- Рамка на сценарий: Делене на цели числа
8
- Дадено е че съм въвел <делимо>
9
- И е че съм въвел <делител>
10
- Когато натисна "/"
11
- То резултата трябва да е равен на <частно>
12
-
13
- Примери:
14
- | делимо | делител | частно |
15
- | 100 | 2 | 50 |
16
- | 28 | 7 | 4 |
17
- | 0 | 5 | 0 |
@@ -1,24 +0,0 @@
1
- # encoding: utf-8
2
-
3
- Дадено(/въвел (\d+)/) do |x|
4
- calc.push x.to_i
5
- end
6
-
7
- Когато(/^въведа (\d+)/) do |x|
8
- calc.push x.to_i
9
- end
10
-
11
- Когато(/натисна "(.*)"/) do |op|
12
- calc.send op
13
- end
14
-
15
- То(/резултата трябва да е равен на (\d+)/) do |result|
16
- calc.result.should == result.to_f
17
- end
18
-
19
- Дадено(/събрал (\d+) и (\d+)/) do |x, y|
20
- Дадено %{въвел #{x}}
21
- Дадено %{въвел #{y}}
22
- Дадено %{натисна "+"}
23
- end
24
-
@@ -1,10 +0,0 @@
1
- # encoding: utf-8
2
- begin
3
- require 'rspec/expectations'
4
- rescue LoadError
5
- require 'spec/expectations'
6
- end
7
-
8
- require 'cucumber/formatter/unicode'
9
- $:.unshift(File.dirname(__FILE__) + '/../../lib')
10
- require 'calculator'
@@ -1,8 +0,0 @@
1
- # encoding: utf-8
2
- module LazyCalc
3
- def calc
4
- @calc ||= Calculator.new
5
- end
6
- end
7
-
8
- World(LazyCalc)
@@ -1,25 +0,0 @@
1
- # encoding: utf-8
2
-
3
- class Calculator
4
- def initialize
5
- @stack = []
6
- end
7
-
8
- def push(arg)
9
- @stack.push arg
10
- end
11
-
12
- def result
13
- @stack.last
14
- end
15
-
16
- def +
17
- @stack.push @stack.pop + @stack.pop
18
- end
19
-
20
- def /
21
- divisor, dividend = [@stack.pop, @stack.pop]
22
- # Hm, @stack.pop(2) doesn't work
23
- @stack.push dividend / divisor
24
- end
25
- end
@@ -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 = %w{--format pretty}
6
- end
@@ -1,26 +0,0 @@
1
- # encoding: utf-8
2
- begin
3
- require 'rspec/expectations'
4
- rescue LoadError
5
- require 'spec/expectations'
6
- end
7
-
8
- require 'cucumber/formatter/unicode'
9
- $:.unshift(File.dirname(__FILE__) + '/../../lib')
10
- require 'calculadora'
11
-
12
- Before do
13
- @calc = Calculadora.new
14
- end
15
-
16
- Donat(/que he introduït (\d+) a la calculadora/) do |n|
17
- @calc.push n.to_i
18
- end
19
-
20
- Quan(/premo el (\w+)/) do |op|
21
- @result = @calc.send op
22
- end
23
-
24
- Aleshores(/el resultat ha de ser (\d+) a la pantalla/) do |result|
25
- @result.should == result.to_f
26
- end
@@ -1,17 +0,0 @@
1
- # language: ca
2
- Característica: Suma
3
- Per evitar fer errors tontos
4
- Com un matemàtic idiota
5
- Vull saber la suma dels números
6
-
7
- Esquema de l'escenari: Sumar dos números
8
- Donat que he introduït <entrada_1> a la calculadora
9
- I que he introduït <entrada_2> a la calculadora
10
- Quan premo el <botó>
11
- Aleshores el resultat ha de ser <resultat> a la pantalla
12
-
13
- Exemples:
14
- | entrada_1 | entrada_2 | botó | resultat |
15
- | 20 | 30 | add | 50 |
16
- | 2 | 5 | add | 7 |
17
- | 0 | 40 | add | 40 |
@@ -1,16 +0,0 @@
1
- class Calculadora
2
-
3
- def push(n)
4
- @args ||= []
5
- @args << n
6
- end
7
-
8
- def add
9
- @args.inject(0){|n,sum| sum + n}
10
- end
11
-
12
- def divide
13
- @args[0].to_f / @args[1].to_f
14
- end
15
-
16
- end
@@ -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 = %w{--format pretty}
6
- end
@@ -1,17 +0,0 @@
1
- # language: cs
2
- Požadavek: Sčítání
3
- Jako matematický idiot
4
- Abych se vyhnul hloupým chybám
5
- Chci vědět jak sečíst dvě čísla
6
-
7
- Náčrt Scénáře: Sčítaní dvou čísel
8
- Pokud Zadám číslo <vstup_1> do kalkulačky
9
- A Zadám číslo <vstup_2> do kalkulačky
10
- Když Stisknu <tlačítko>
11
- Pak Výsledek by měl být <výstup>
12
-
13
- Příklady:
14
- | vstup_1 | vstup_2 | tlačítko | výstup |
15
- | 20 | 30 | add | 50 |
16
- | 2 | 5 | add | 7 |
17
- | 0 | 40 | add | 40 |
@@ -1,11 +0,0 @@
1
- # language: cs
2
- Požadavek: Dělení
3
- Jako matematický idiot
4
- Abych se vyhnul hloupým chybám
5
- Chci vědět jak vydělit dvě čísla
6
-
7
- Scénář: Přirozená čísla
8
- Pokud Zadám číslo 3 do kalkulačky
9
- A Zadám číslo 2 do kalkulačky
10
- Když stisknu divide
11
- Pak výsledek by měl být 1.5
@@ -1,29 +0,0 @@
1
- # encoding: utf-8
2
- begin
3
- require 'rspec/expectations'
4
- rescue LoadError
5
- require 'spec/expectations'
6
- end
7
-
8
- require 'cucumber/formatter/unicode'
9
- $:.unshift(File.dirname(__FILE__) + '/../../lib')
10
- require 'calculator'
11
-
12
- Before do
13
- @calc = Calculator.new
14
- end
15
-
16
- After do
17
- end
18
-
19
- Given(/Zadám číslo (\d+) do kalkulačky/) do |n|
20
- @calc.push n.to_i
21
- end
22
-
23
- When(/Stisknu (\w+)/) do |op|
24
- @result = @calc.send op
25
- end
26
-
27
- Then(/Výsledek by měl být (.*)/) do |result|
28
- @result.should == result.to_f
29
- end
@@ -1,14 +0,0 @@
1
- class Calculator
2
- def push(n)
3
- @args ||= []
4
- @args << n
5
- end
6
-
7
- def add
8
- @args.inject(0){|n,sum| sum + n}
9
- end
10
-
11
- def divide
12
- @args[0].to_f / @args[1].to_f
13
- end
14
- end
@@ -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 = %w{--format pretty}
6
- end
@@ -1,18 +0,0 @@
1
- # language: da
2
- Egenskab: Sammenlægning
3
- For at slippe for at lave dumme fejl
4
- Som bogholder
5
- Vil jeg kunne lægge sammen
6
-
7
- Scenarie: to tal
8
- Givet at jeg har indtastet 5
9
- Og at jeg har indtastet 7
10
- Når jeg lægger sammen
11
- Så skal resultatet være 12
12
-
13
- Scenarie: tre tal
14
- Givet at jeg har indtastet 5
15
- Og at jeg har indtastet 7
16
- Og at jeg har indtastet 1
17
- Når jeg lægger sammen
18
- Så skal resultatet være 13