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
@@ -1,36 +0,0 @@
1
- Feature: Step Activated Event
2
-
3
- This event is fired when Cucumber finds a matching definition for a Gherkin step.
4
-
5
- See [the API documentation](http://www.rubydoc.info/github/cucumber/cucumber-ruby/Cucumber/Events/StepActivated)
6
- for more information about the data available on this event.
7
-
8
- Scenario: Activate a step
9
- Given a file named "features/step_definitions/steps.rb" with:
10
- """
11
- Given /a step/ do
12
- # automation goes here
13
- end
14
- """
15
- And a file named "features/test.feature" with:
16
- """
17
- Feature:
18
- Scenario:
19
- Given a step
20
- """
21
- And a file named "features/support/events.rb" with:
22
- """
23
- AfterConfiguration do |config|
24
- config.on_event :step_activated do |event|
25
- config.out_stream.puts "The step: #{event.test_step.location}"
26
- config.out_stream.puts "The step definition: #{event.step_match.location}"
27
- end
28
- end
29
- """
30
- When I run `cucumber`
31
- Then it should pass with:
32
- """
33
- The step: features/test.feature:3
34
- The step definition: features/step_definitions/steps.rb:1
35
- """
36
-
@@ -1,29 +0,0 @@
1
- Feature: Step definition registered
2
-
3
- This event is fired when Cucumber loads the user's step definitions. Typically, this is
4
- when the `Given /^my step$/ do` methods are called.
5
-
6
- See [the API documentation](http://www.rubydoc.info/github/cucumber/cucumber-ruby/Cucumber/Events/StepDefinitionRegistered) for more information about the data available on this event.
7
-
8
- Scenario: Register a new step definition
9
- Given the standard step definitions
10
- And a file named "features/step_definitions/steps.rb" with:
11
- """
12
- Given /a step/ do
13
- # automation goes here
14
- end
15
- """
16
- And a file named "features/support/events.rb" with:
17
- """
18
- AfterConfiguration do |config|
19
- config.on_event :step_definition_registered do |event|
20
- config.out_stream.puts "The step definition: #{event.step_definition.location}"
21
- end
22
- end
23
- """
24
- When I run `cucumber`
25
- Then it should pass with:
26
- """
27
- The step definition: features/step_definitions/steps.rb:1
28
- """
29
-
@@ -1,35 +0,0 @@
1
- Feature: Test Case Finished Event
2
-
3
- This event is fired after each scenario or examples table row (generally named a
4
- Test Case) has finished executing. You can use the event to learn about the
5
- result of the test case.
6
-
7
- See [the API documentation](http://www.rubydoc.info/github/cucumber/cucumber-ruby/Cucumber/Events/TestCaseFinished) for more information about the data available on this event.
8
-
9
- Scenario: Test case passes
10
- Given the standard step definitions
11
- And a file named "features/passing.feature" with:
12
- """
13
- Feature: A feature
14
- Scenario: A scenario
15
- Given this step passes
16
- """
17
- And a file named "features/support/events.rb" with:
18
- """
19
- AfterConfiguration do |config|
20
- config.on_event :test_case_finished do |event|
21
- config.out_stream.puts "Results"
22
- config.out_stream.puts "-------"
23
- config.out_stream.puts "Test case: #{event.test_case.name}"
24
- config.out_stream.puts "The result is: #{event.result}"
25
- end
26
- end
27
- """
28
- When I run `cucumber`
29
- Then it should pass with:
30
- """
31
- Results
32
- -------
33
- Test case: A scenario
34
- The result is: ✓
35
- """
@@ -1,54 +0,0 @@
1
- @wip
2
- Feature: Test Case Started Event
3
-
4
- This event is fired just before each scenario or scenario outline example row
5
- (generally named a Test Case) starts to be executed. This event is read-only.
6
-
7
- See [the API documentation](http://www.rubydoc.info/github/cucumber/cucumber-ruby/Cucumber/Events/TestCaseStarted) for more information about the data available on this event and the result object.
8
-
9
- Background:
10
- Given the standard step definitions
11
- And a file named "features/test.feature" with:
12
- """
13
- @feature
14
- Feature: A feature
15
-
16
- @scenario
17
- Scenario: A passing scenario
18
- Given this is a step
19
- """
20
- And a file named "features/support/events.rb" with:
21
- """
22
- stdout = nil
23
- AfterConfiguration do |config|
24
- stdout = config.out_stream # make sure all the `puts` calls can write to the same output
25
- config.on_event :test_case_started do |event|
26
- stdout.puts "before"
27
- stdout.puts event.test_case.tags.map(&:name)
28
- end
29
- config.on_event :test_case_finished do |event|
30
- stdout.puts "after"
31
- end
32
- end
33
-
34
- Given(/this is a step/) do
35
- end
36
-
37
- """
38
-
39
- Scenario: Run the test case
40
- When I run `cucumber -q`
41
- Then it should pass with:
42
- """
43
- before
44
- @feature
45
- @scenario
46
- @feature
47
- Feature: A feature
48
-
49
- @scenario
50
- Scenario: A passing scenario
51
- Given this is a step
52
- after
53
- """
54
-
@@ -1,40 +0,0 @@
1
- Feature: Test Run Finished
2
-
3
- This event is fired after all the test cases have been executed.
4
-
5
- Typically, a formatter would use this to print out summary information.
6
-
7
- At the moment this event contains no data, but it could be extended
8
- in the future to carry the summary information for the convenience
9
- of formatter authors.
10
-
11
- Background:
12
- Given the standard step definitions
13
- And a file named "features/test.feature" with:
14
- """
15
- Feature: A feature
16
-
17
- Scenario: A passing scenario
18
- Given this is a step
19
- """
20
- And a file named "features/support/events.rb" with:
21
- """
22
- class MyFormatter
23
- def initialize(config)
24
- config.on_event :test_case_finished do
25
- config.out_stream.puts "test case finished"
26
- end
27
- config.on_event :test_run_finished do
28
- config.out_stream.puts "the end"
29
- end
30
- end
31
- end
32
- """
33
-
34
- Scenario: Run the test case
35
- When I run `cucumber -q -f MyFormatter`
36
- Then it should pass with:
37
- """
38
- test case finished
39
- the end
40
- """
@@ -1,41 +0,0 @@
1
- Feature: Test Run Started Event
2
-
3
- This event is fired once all test cases have been filtered, just before
4
- the first one is executed.
5
-
6
- See [the API documentation](http://www.rubydoc.info/github/cucumber/cucumber-ruby/Cucumber/Events/TestRunStarted) for more information about the data available on this event.
7
-
8
- Background:
9
- Given the standard step definitions
10
- And a file named "features/foo.feature" with:
11
- """
12
- Feature: Foo
13
- Scenario:
14
- Given a passing step
15
- """
16
- And a file named "features/bar.feature" with:
17
- """
18
- Feature: Foo
19
- Scenario:
20
- Given a passing step
21
- """
22
- And a file named "features/support/events.rb" with:
23
- """
24
- AfterConfiguration do |config|
25
- config.on_event :test_run_started do |event|
26
- config.out_stream.puts "test run started"
27
- config.out_stream.puts event.test_cases.map(&:location)
28
- end
29
- end
30
- """
31
-
32
- @todo-windows
33
- Scenario: Run the test case
34
- When I run `cucumber -q`
35
- Then it should pass with:
36
- """
37
- test run started
38
- features/bar.feature:2
39
- features/foo.feature:2
40
- """
41
-
@@ -1,47 +0,0 @@
1
- Feature: Test Step Finished Event
2
-
3
- This event is fired after each step in a scenario or scenario outline example
4
- (generally named a Test Step) has finished executing. You can use the event to learn about the
5
- result of the test step.
6
-
7
- See [the API documentation](http://www.rubydoc.info/github/cucumber/cucumber-ruby/Cucumber/Events/TestStepFinished) for more information about the data available on this event and the result object.
8
-
9
- Background:
10
- Given the standard step definitions
11
- And a file named "features/test.feature" with:
12
- """
13
- Feature: A feature
14
-
15
- @pass
16
- Scenario: A passing scenario
17
- Given this step passes
18
-
19
- @fail
20
- Scenario: A failing scenario
21
- Given this step fails
22
- """
23
- And a file named "features/support/events.rb" with:
24
- """
25
- AfterConfiguration do |config|
26
- config.on_event :test_step_finished do |event|
27
- config.out_stream.puts "Test step: #{event.test_step}"
28
- config.out_stream.puts "The result is: #{event.result}"
29
- end
30
- end
31
- """
32
-
33
- Scenario: Test step passes
34
- When I run `cucumber --tags @pass`
35
- Then it should pass with:
36
- """
37
- Test step: this step passes
38
- The result is: ✓
39
- """
40
-
41
- Scenario: Test step fails
42
- When I run `cucumber --tags @fail`
43
- Then it should fail with:
44
- """
45
- Test step: this step fails
46
- The result is: ✗
47
- """
@@ -1,43 +0,0 @@
1
- Feature: Test Step Started Event
2
-
3
- This event is fired just before each step in a scenario or scenario outline example
4
- (generally named a Test Step) starts to be executed. This event is read-only, so there
5
- is no way to prevent the test step from running, but you can use it for logging or user
6
- notification.
7
-
8
- See [the API documentation](http://www.rubydoc.info/github/cucumber/cucumber-ruby/Cucumber/Events/TestStepStarted) for more information about the data available on this event and the result object.
9
-
10
- Background:
11
- Given the standard step definitions
12
- And a file named "features/test.feature" with:
13
- """
14
- Feature: A feature
15
-
16
- Scenario: A passing scenario
17
- Given this is a step
18
- """
19
- And a file named "features/support/events.rb" with:
20
- """
21
- stdout = nil
22
- AfterConfiguration do |config|
23
- stdout = config.out_stream # make sure all the `puts` calls can write to the same output
24
- config.on_event :test_step_started do |event|
25
- stdout.puts "before"
26
- end
27
- config.on_event :test_step_finished do |event|
28
- stdout.puts "after"
29
- end
30
- end
31
- Given(/this is a step/) do
32
- stdout.puts "during"
33
- end
34
- """
35
-
36
- Scenario: Test step passes
37
- When I run `cucumber`
38
- Then it should pass with:
39
- """
40
- before
41
- during
42
- after
43
- """
@@ -1,127 +0,0 @@
1
- Feature: Exception in After Block
2
- In order to use custom assertions at the end of each scenario
3
- As a developer
4
- I want exceptions raised in After blocks to be handled gracefully and reported by the formatters
5
-
6
- Background:
7
- Given the standard step definitions
8
- And a file named "features/step_definitions/naughty_steps.rb" with:
9
- """
10
- Given /^this step does something naughty$/ do x=1
11
- @naughty = true
12
- end
13
- """
14
- And a file named "features/support/env.rb" with:
15
- """
16
- class NaughtyScenarioException < Exception; end
17
- After do
18
- if @naughty
19
- raise NaughtyScenarioException.new("This scenario has been very very naughty")
20
- end
21
- end
22
- """
23
-
24
- @spawn @todo-windows
25
- Scenario: Handle Exception in standard scenario step and carry on
26
- Given a file named "features/naughty_step_in_scenario.feature" with:
27
- """
28
- Feature: Sample
29
-
30
- Scenario: Naughty Step
31
- Given this step does something naughty
32
-
33
- Scenario: Success
34
- Given this step passes
35
- """
36
- When I run `cucumber features`
37
- Then it should fail with:
38
- """
39
- Feature: Sample
40
-
41
- Scenario: Naughty Step # features/naughty_step_in_scenario.feature:3
42
- Given this step does something naughty # features/step_definitions/naughty_steps.rb:1
43
- This scenario has been very very naughty (NaughtyScenarioException)
44
- ./features/support/env.rb:4:in `After'
45
-
46
- Scenario: Success # features/naughty_step_in_scenario.feature:6
47
- Given this step passes # features/step_definitions/steps.rb:1
48
-
49
- Failing Scenarios:
50
- cucumber features/naughty_step_in_scenario.feature:3 # Scenario: Naughty Step
51
-
52
- 2 scenarios (1 failed, 1 passed)
53
- 2 steps (2 passed)
54
-
55
- """
56
-
57
- @spawn @todo-windows
58
- Scenario: Handle Exception in scenario outline table row and carry on
59
- Given a file named "features/naughty_step_in_scenario_outline.feature" with:
60
- """
61
- Feature: Sample
62
-
63
- Scenario Outline: Naughty Step
64
- Given this step <Might Work>
65
-
66
- Examples:
67
- | Might Work |
68
- | passes |
69
- | does something naughty |
70
- | passes |
71
-
72
- Scenario: Success
73
- Given this step passes
74
-
75
- """
76
- When I run `cucumber features -q`
77
- Then it should fail with:
78
- """
79
- Feature: Sample
80
-
81
- Scenario Outline: Naughty Step
82
- Given this step <Might Work>
83
-
84
- Examples:
85
- | Might Work |
86
- | passes |
87
- | does something naughty |
88
- This scenario has been very very naughty (NaughtyScenarioException)
89
- ./features/support/env.rb:4:in `After'
90
- | passes |
91
-
92
- Scenario: Success
93
- Given this step passes
94
-
95
- Failing Scenarios:
96
- cucumber features/naughty_step_in_scenario_outline.feature:9
97
-
98
- 4 scenarios (1 failed, 3 passed)
99
- 4 steps (4 passed)
100
-
101
- """
102
-
103
- @todo-windows
104
- Scenario: Handle Exception using the progress format
105
- Given a file named "features/naughty_step_in_scenario.feature" with:
106
- """
107
- Feature: Sample
108
-
109
- Scenario: Naughty Step
110
- Given this step does something naughty
111
-
112
- Scenario: Success
113
- Given this step passes
114
- """
115
- When I run `cucumber features --format progress`
116
- Then it should fail with:
117
- """
118
- .F.
119
-
120
- Failing Scenarios:
121
- cucumber features/naughty_step_in_scenario.feature:3 # Scenario: Naughty Step
122
-
123
- 2 scenarios (1 failed, 1 passed)
124
- 2 steps (2 passed)
125
-
126
- """
127
-
@@ -1,104 +0,0 @@
1
- Feature: Exception in AfterStep Block
2
- In order to use custom assertions at the end of each step
3
- As a developer
4
- I want exceptions raised in AfterStep blocks to be handled gracefully and reported by the formatters
5
-
6
- Background:
7
- Given the standard step definitions
8
- And a file named "features/step_definitions/naughty_steps.rb" with:
9
- """
10
- Given /^this step does something naughty$/ do x=1
11
- @naughty = true
12
- end
13
- """
14
- And a file named "features/support/env.rb" with:
15
- """
16
- class NaughtyStepException < Exception; end
17
- AfterStep do
18
- if @naughty
19
- raise NaughtyStepException.new("This step has been very very naughty")
20
- end
21
- end
22
- """
23
-
24
- @todo-windows
25
- Scenario: Handle Exception in standard scenario step and carry on
26
- Given a file named "features/naughty_step_in_scenario.feature" with:
27
- """
28
- Feature: Sample
29
-
30
- Scenario: Naughty Step
31
- Given this step does something naughty
32
-
33
- Scenario: Success
34
- Given this step passes
35
- """
36
- When I run `cucumber features`
37
- Then it should fail with:
38
- """
39
- Feature: Sample
40
-
41
- Scenario: Naughty Step # features/naughty_step_in_scenario.feature:3
42
- Given this step does something naughty # features/step_definitions/naughty_steps.rb:1
43
- This step has been very very naughty (NaughtyStepException)
44
- ./features/support/env.rb:4:in `AfterStep'
45
- features/naughty_step_in_scenario.feature:4:in `Given this step does something naughty'
46
-
47
- Scenario: Success # features/naughty_step_in_scenario.feature:6
48
- Given this step passes # features/step_definitions/steps.rb:1
49
-
50
- Failing Scenarios:
51
- cucumber features/naughty_step_in_scenario.feature:3 # Scenario: Naughty Step
52
-
53
- 2 scenarios (1 failed, 1 passed)
54
- 2 steps (2 passed)
55
-
56
- """
57
-
58
- @todo-windows
59
- Scenario: Handle Exception in scenario outline table row and carry on
60
- Given a file named "features/naughty_step_in_scenario_outline.feature" with:
61
- """
62
- Feature: Sample
63
-
64
- Scenario Outline: Naughty Step
65
- Given this step <Might Work>
66
-
67
- Examples:
68
- | Might Work |
69
- | passes |
70
- | does something naughty |
71
- | passes |
72
-
73
- Scenario: Success
74
- Given this step passes
75
-
76
- """
77
- When I run `cucumber features`
78
- Then it should fail with:
79
- """
80
- Feature: Sample
81
-
82
- Scenario Outline: Naughty Step # features/naughty_step_in_scenario_outline.feature:3
83
- Given this step <Might Work> # features/naughty_step_in_scenario_outline.feature:4
84
-
85
- Examples:
86
- | Might Work |
87
- | passes |
88
- | does something naughty |
89
- This step has been very very naughty (NaughtyStepException)
90
- ./features/support/env.rb:4:in `AfterStep'
91
- features/naughty_step_in_scenario_outline.feature:9:in `Given this step does something naughty'
92
- features/naughty_step_in_scenario_outline.feature:4:in `Given this step <Might Work>'
93
- | passes |
94
-
95
- Scenario: Success # features/naughty_step_in_scenario_outline.feature:12
96
- Given this step passes # features/step_definitions/steps.rb:1
97
-
98
- Failing Scenarios:
99
- cucumber features/naughty_step_in_scenario_outline.feature:9 # Scenario Outline: Naughty Step, Examples (#2)
100
-
101
- 4 scenarios (1 failed, 3 passed)
102
- 4 steps (4 passed)
103
-
104
- """
@@ -1,80 +0,0 @@
1
- Feature: Exceptions in Around Hooks
2
-
3
- Around hooks are awkward beasts to handle internally.
4
-
5
- Right now, if there's an error in your Around hook before you call `block.call`,
6
- we won't even print the steps for the scenario.
7
-
8
- This is because that `block.call` invokes all the logic that would tell Cucumber's
9
- UI about the steps in your scenario. If we never reach that code, we'll never be
10
- told about them.
11
-
12
- There's another scenario to consider, where the exception occurs after the steps
13
- have been run. How would we want to report in that case?
14
-
15
- @todo-windows
16
- Scenario: Exception before the test case is run
17
- Given the standard step definitions
18
- And a file named "features/support/env.rb" with:
19
- """
20
- Around do |scenario, block|
21
- fail "this should be reported"
22
- block.call
23
- end
24
- """
25
- And a file named "features/test.feature" with:
26
- """
27
- Feature:
28
- Scenario:
29
- Given this step passes
30
- """
31
- When I run `cucumber -q`
32
- Then it should fail with exactly:
33
- """
34
- Feature:
35
-
36
- Scenario:
37
- this should be reported (RuntimeError)
38
- ./features/support/env.rb:2:in `Around'
39
-
40
- Failing Scenarios:
41
- cucumber features/test.feature:2
42
-
43
- 1 scenario (1 failed)
44
- 0 steps
45
-
46
- """
47
-
48
- @todo-windows
49
- Scenario: Exception after the test case is run
50
- Given the standard step definitions
51
- And a file named "features/support/env.rb" with:
52
- """
53
- Around do |scenario, block|
54
- block.call
55
- fail "this should be reported"
56
- end
57
- """
58
- And a file named "features/test.feature" with:
59
- """
60
- Feature:
61
- Scenario:
62
- Given this step passes
63
- """
64
- When I run `cucumber -q`
65
- Then it should fail with exactly:
66
- """
67
- Feature:
68
-
69
- Scenario:
70
- Given this step passes
71
- this should be reported (RuntimeError)
72
- ./features/support/env.rb:3:in `Around'
73
-
74
- Failing Scenarios:
75
- cucumber features/test.feature:2
76
-
77
- 1 scenario (1 failed)
78
- 1 step (1 passed)
79
-
80
- """