kbaum-cucumber 0.4.5.pre

Sign up to get free protection for your applications and to get access to all the features.
Files changed (511) hide show
  1. data/.gitattributes +1 -0
  2. data/.gitignore +18 -0
  3. data/Caliper.yml +5 -0
  4. data/History.txt +1292 -0
  5. data/LICENSE +22 -0
  6. data/README.rdoc +26 -0
  7. data/Rakefile +63 -0
  8. data/VERSION.yml +5 -0
  9. data/bin/cucumber +16 -0
  10. data/cucumber.gemspec +741 -0
  11. data/cucumber.yml +10 -0
  12. data/examples/dos_line_endings/Rakefile +6 -0
  13. data/examples/dos_line_endings/features/dos_line_endings.feature +9 -0
  14. data/examples/i18n/README.textile +18 -0
  15. data/examples/i18n/Rakefile +32 -0
  16. data/examples/i18n/ar/Rakefile +6 -0
  17. data/examples/i18n/ar/features/addition.feature +17 -0
  18. data/examples/i18n/ar/features/step_definitons/calculator_steps.rb +24 -0
  19. data/examples/i18n/ar/lib/calculator.rb +11 -0
  20. data/examples/i18n/bg/Rakefile +6 -0
  21. data/examples/i18n/bg/features/addition.feature +12 -0
  22. data/examples/i18n/bg/features/consecutive_calculations.feature +19 -0
  23. data/examples/i18n/bg/features/division.feature +17 -0
  24. data/examples/i18n/bg/features/step_definitons/calculator_steps.rb +24 -0
  25. data/examples/i18n/bg/features/support/env.rb +6 -0
  26. data/examples/i18n/bg/features/support/world.rb +8 -0
  27. data/examples/i18n/bg/lib/calculator.rb +24 -0
  28. data/examples/i18n/cat/Rakefile +6 -0
  29. data/examples/i18n/cat/features/step_definitons/calculator_steps.rb +21 -0
  30. data/examples/i18n/cat/features/suma.feature +17 -0
  31. data/examples/i18n/cat/lib/calculadora.rb +16 -0
  32. data/examples/i18n/da/Rakefile +6 -0
  33. data/examples/i18n/da/features/sammenlaegning.feature +18 -0
  34. data/examples/i18n/da/features/step_definitons/lommeregner_steps.rb +24 -0
  35. data/examples/i18n/da/lib/lommeregner.rb +11 -0
  36. data/examples/i18n/de/.gitignore +1 -0
  37. data/examples/i18n/de/Rakefile +6 -0
  38. data/examples/i18n/de/features/addition.feature +17 -0
  39. data/examples/i18n/de/features/division.feature +10 -0
  40. data/examples/i18n/de/features/step_definitons/calculator_steps.rb +24 -0
  41. data/examples/i18n/de/lib/calculator.rb +14 -0
  42. data/examples/i18n/en-lol/Rakefile +4 -0
  43. data/examples/i18n/en-lol/features/step_definitions/cucumbrz_steps.rb +16 -0
  44. data/examples/i18n/en-lol/features/stuffing.feature +8 -0
  45. data/examples/i18n/en-lol/features/support/env.rb +8 -0
  46. data/examples/i18n/en-lol/lib/basket.rb +12 -0
  47. data/examples/i18n/en-lol/lib/belly.rb +11 -0
  48. data/examples/i18n/en/.gitignore +1 -0
  49. data/examples/i18n/en/Rakefile +6 -0
  50. data/examples/i18n/en/features/addition.feature +17 -0
  51. data/examples/i18n/en/features/division.feature +10 -0
  52. data/examples/i18n/en/features/step_definitons/calculator_steps.rb +24 -0
  53. data/examples/i18n/en/lib/calculator.rb +14 -0
  54. data/examples/i18n/es/Rakefile +6 -0
  55. data/examples/i18n/es/features/adicion.feature +17 -0
  56. data/examples/i18n/es/features/step_definitons/calculador_steps.rb +21 -0
  57. data/examples/i18n/es/lib/calculador.rb +14 -0
  58. data/examples/i18n/et/Rakefile +6 -0
  59. data/examples/i18n/et/features/jagamine.feature +10 -0
  60. data/examples/i18n/et/features/liitmine.feature +17 -0
  61. data/examples/i18n/et/features/step_definitions/kalkulaator_steps.rb +24 -0
  62. data/examples/i18n/et/lib/kalkulaator.rb +14 -0
  63. data/examples/i18n/fi/.gitignore +1 -0
  64. data/examples/i18n/fi/Rakefile +6 -0
  65. data/examples/i18n/fi/features/jakolasku.feature +10 -0
  66. data/examples/i18n/fi/features/step_definitons/laskin_steps.rb +24 -0
  67. data/examples/i18n/fi/features/yhteenlasku.feature +17 -0
  68. data/examples/i18n/fi/lib/laskin.rb +14 -0
  69. data/examples/i18n/fr/Rakefile +6 -0
  70. data/examples/i18n/fr/features/addition.feature +18 -0
  71. data/examples/i18n/fr/features/addition2.feature +17 -0
  72. data/examples/i18n/fr/features/step_definitions/calculatrice_steps.rb +38 -0
  73. data/examples/i18n/fr/lib/calculatrice.rb +10 -0
  74. data/examples/i18n/he/Rakefile +6 -0
  75. data/examples/i18n/he/features/addition.feature +17 -0
  76. data/examples/i18n/he/features/division.feature +10 -0
  77. data/examples/i18n/he/features/step_definitons/calculator_steps.rb +24 -0
  78. data/examples/i18n/he/lib/calculator.rb +14 -0
  79. data/examples/i18n/hu/.gitignore +1 -0
  80. data/examples/i18n/hu/Rakefile +6 -0
  81. data/examples/i18n/hu/features/addition.feature +17 -0
  82. data/examples/i18n/hu/features/division.feature +10 -0
  83. data/examples/i18n/hu/features/step_definitons/calculator_steps.rb +25 -0
  84. data/examples/i18n/hu/lib/calculator.rb +14 -0
  85. data/examples/i18n/id/.gitignore +1 -0
  86. data/examples/i18n/id/Rakefile +6 -0
  87. data/examples/i18n/id/features/addition.feature +17 -0
  88. data/examples/i18n/id/features/division.feature +10 -0
  89. data/examples/i18n/id/features/step_definitons/calculator_steps.rb +24 -0
  90. data/examples/i18n/id/lib/calculator.rb +14 -0
  91. data/examples/i18n/it/Rakefile +6 -0
  92. data/examples/i18n/it/features/somma.feature +11 -0
  93. data/examples/i18n/it/features/step_definitons/calcolatrice_steps.rb +24 -0
  94. data/examples/i18n/it/lib/calcolatrice.rb +11 -0
  95. data/examples/i18n/ja/.gitignore +1 -0
  96. data/examples/i18n/ja/Rakefile +6 -0
  97. data/examples/i18n/ja/features/addition.feature +17 -0
  98. data/examples/i18n/ja/features/division.feature +10 -0
  99. data/examples/i18n/ja/features/step_definitons/calculator_steps.rb +24 -0
  100. data/examples/i18n/ja/lib/calculator.rb +14 -0
  101. data/examples/i18n/ko/.gitignore +1 -0
  102. data/examples/i18n/ko/Rakefile +6 -0
  103. data/examples/i18n/ko/features/addition.feature +17 -0
  104. data/examples/i18n/ko/features/division.feature +11 -0
  105. data/examples/i18n/ko/features/step_definitons/calculator_steps.rb +24 -0
  106. data/examples/i18n/ko/lib/calculator.rb +14 -0
  107. data/examples/i18n/lt/.gitignore +1 -0
  108. data/examples/i18n/lt/Rakefile +6 -0
  109. data/examples/i18n/lt/features/addition.feature +17 -0
  110. data/examples/i18n/lt/features/division.feature +10 -0
  111. data/examples/i18n/lt/features/step_definitons/calculator_steps.rb +24 -0
  112. data/examples/i18n/lt/lib/calculator.rb +14 -0
  113. data/examples/i18n/lv/Rakefile +6 -0
  114. data/examples/i18n/lv/features/addition.feature +17 -0
  115. data/examples/i18n/lv/features/division.feature +10 -0
  116. data/examples/i18n/lv/features/step_definitons/calculator_steps.rb +24 -0
  117. data/examples/i18n/lv/lib/calculator.rb +14 -0
  118. data/examples/i18n/no/Rakefile +6 -0
  119. data/examples/i18n/no/features/step_definitons/kalkulator_steps.rb +17 -0
  120. data/examples/i18n/no/features/summering.feature +19 -0
  121. data/examples/i18n/no/features/support/env.rb +6 -0
  122. data/examples/i18n/no/lib/kalkulator.rb +11 -0
  123. data/examples/i18n/pl/.gitignore +1 -0
  124. data/examples/i18n/pl/Rakefile +6 -0
  125. data/examples/i18n/pl/features/addition.feature +17 -0
  126. data/examples/i18n/pl/features/division.feature +10 -0
  127. data/examples/i18n/pl/features/step_definitons/calculator_steps.rb +24 -0
  128. data/examples/i18n/pl/features/support/env.rb +6 -0
  129. data/examples/i18n/pl/lib/calculator.rb +14 -0
  130. data/examples/i18n/pt/Rakefile +6 -0
  131. data/examples/i18n/pt/features/adicao.feature +11 -0
  132. data/examples/i18n/pt/features/step_definitions/calculadora_steps.rb +20 -0
  133. data/examples/i18n/pt/features/support/env.rb +6 -0
  134. data/examples/i18n/pt/lib/calculadora.rb +10 -0
  135. data/examples/i18n/ro/Rakefile +6 -0
  136. data/examples/i18n/ro/features/step_definitons/calculator_steps.rb +24 -0
  137. data/examples/i18n/ro/features/suma.feature +11 -0
  138. data/examples/i18n/ro/lib/calculator.rb +11 -0
  139. data/examples/i18n/ru/Rakefile +6 -0
  140. data/examples/i18n/ru/features/addition.feature +11 -0
  141. data/examples/i18n/ru/features/consecutive_calculations.feature +17 -0
  142. data/examples/i18n/ru/features/division.feature +16 -0
  143. data/examples/i18n/ru/features/step_definitons/calculator_steps.rb +19 -0
  144. data/examples/i18n/ru/features/support/env.rb +6 -0
  145. data/examples/i18n/ru/features/support/world.rb +8 -0
  146. data/examples/i18n/ru/lib/calculator.rb +24 -0
  147. data/examples/i18n/se/Rakefile +6 -0
  148. data/examples/i18n/se/features/step_definitons/kalkulator_steps.rb +24 -0
  149. data/examples/i18n/se/features/summering.feature +18 -0
  150. data/examples/i18n/se/lib/kalkulator.rb +11 -0
  151. data/examples/i18n/sk/.gitignore +1 -0
  152. data/examples/i18n/sk/Rakefile +6 -0
  153. data/examples/i18n/sk/features/addition.feature +17 -0
  154. data/examples/i18n/sk/features/division.feature +10 -0
  155. data/examples/i18n/sk/features/step_definitons/calculator_steps.rb +24 -0
  156. data/examples/i18n/sk/lib/calculator.rb +14 -0
  157. data/examples/i18n/sr-latn/Rakefile +6 -0
  158. data/examples/i18n/sr-latn/features/sabiranje.feature +18 -0
  159. data/examples/i18n/sr-latn/features/step_definitons/calculator_steps.rb +24 -0
  160. data/examples/i18n/sr-latn/lib/calculator.rb +12 -0
  161. data/examples/i18n/sr/Rakefile +6 -0
  162. data/examples/i18n/sr/features/sabiranje.feature +18 -0
  163. data/examples/i18n/sr/features/step_definitons/calculator_steps.rb +24 -0
  164. data/examples/i18n/sr/lib/calculator.rb +12 -0
  165. data/examples/i18n/tr/.gitignore +1 -0
  166. data/examples/i18n/tr/Rakefile +6 -0
  167. data/examples/i18n/tr/features/bolme.feature +10 -0
  168. data/examples/i18n/tr/features/step_definitons/hesap_makinesi_adimlari.rb +24 -0
  169. data/examples/i18n/tr/features/toplama.feature +18 -0
  170. data/examples/i18n/tr/lib/hesap_makinesi.rb +15 -0
  171. data/examples/i18n/uz/Rakefile +6 -0
  172. data/examples/i18n/uz/features/addition.feature +10 -0
  173. data/examples/i18n/uz/features/consecutive_calculations.feature +17 -0
  174. data/examples/i18n/uz/features/division.feature +17 -0
  175. data/examples/i18n/uz/features/step_definitons/calculator_steps.rb +19 -0
  176. data/examples/i18n/uz/features/support/env.rb +6 -0
  177. data/examples/i18n/uz/features/support/world.rb +8 -0
  178. data/examples/i18n/uz/lib/calculator.rb +24 -0
  179. data/examples/i18n/zh-CN/Rakefile +4 -0
  180. data/examples/i18n/zh-CN/features/addition.feature +18 -0
  181. data/examples/i18n/zh-CN/features/step_definitons/calculator_steps.rb +26 -0
  182. data/examples/i18n/zh-CN/lib/calculator.rb +10 -0
  183. data/examples/i18n/zh-TW/.gitignore +1 -0
  184. data/examples/i18n/zh-TW/Rakefile +4 -0
  185. data/examples/i18n/zh-TW/features/addition.feature +17 -0
  186. data/examples/i18n/zh-TW/features/division.feature +11 -0
  187. data/examples/i18n/zh-TW/features/step_definitons/calculator_steps.rb +24 -0
  188. data/examples/i18n/zh-TW/lib/calculator.rb +14 -0
  189. data/examples/junit/features/one_passing_one_failing.feature +8 -0
  190. data/examples/junit/features/pending.feature +5 -0
  191. data/examples/junit/features/step_definitions/steps.rb +11 -0
  192. data/examples/python/features/fibonacci.feature +19 -0
  193. data/examples/python/features/step_definitions/fib_steps.py +11 -0
  194. data/examples/python/lib/.gitignore +1 -0
  195. data/examples/python/lib/fib.py +7 -0
  196. data/examples/ramaze/README.textile +7 -0
  197. data/examples/ramaze/Rakefile +6 -0
  198. data/examples/ramaze/app.rb +21 -0
  199. data/examples/ramaze/features/add.feature +11 -0
  200. data/examples/ramaze/features/step_definitions/add_steps.rb +15 -0
  201. data/examples/ramaze/features/support/env.rb +32 -0
  202. data/examples/ramaze/layout/default.html.erb +8 -0
  203. data/examples/ramaze/view/index.html.erb +5 -0
  204. data/examples/ruby2python/features/fibonacci.feature +19 -0
  205. data/examples/ruby2python/features/step_definitions/fib_steps.rb +7 -0
  206. data/examples/ruby2python/features/support/env.rb +21 -0
  207. data/examples/ruby2python/lib/.gitignore +1 -0
  208. data/examples/ruby2python/lib/fib.py +7 -0
  209. data/examples/selenium/Rakefile +6 -0
  210. data/examples/selenium/features/search.feature +9 -0
  211. data/examples/selenium/features/step_definitons/search_steps.rb +13 -0
  212. data/examples/selenium/features/support/env.rb +19 -0
  213. data/examples/selenium_webrat/Rakefile +6 -0
  214. data/examples/selenium_webrat/config.ru +0 -0
  215. data/examples/selenium_webrat/features/search.feature +9 -0
  216. data/examples/selenium_webrat/features/step_definitons/search_steps.rb +13 -0
  217. data/examples/selenium_webrat/features/support/env.rb +45 -0
  218. data/examples/self_test/.gitignore +1 -0
  219. data/examples/self_test/README.textile +6 -0
  220. data/examples/self_test/Rakefile +6 -0
  221. data/examples/self_test/features/background/background_tagged_before_on_outline.feature +12 -0
  222. data/examples/self_test/features/background/background_with_name.feature +7 -0
  223. data/examples/self_test/features/background/failing_background.feature +12 -0
  224. data/examples/self_test/features/background/failing_background_after_success.feature +11 -0
  225. data/examples/self_test/features/background/multiline_args_background.feature +32 -0
  226. data/examples/self_test/features/background/passing_background.feature +10 -0
  227. data/examples/self_test/features/background/pending_background.feature +10 -0
  228. data/examples/self_test/features/background/scenario_outline_failing_background.feature +16 -0
  229. data/examples/self_test/features/background/scenario_outline_passing_background.feature +16 -0
  230. data/examples/self_test/features/call_undefined_step_from_step_def.feature +7 -0
  231. data/examples/self_test/features/failing_expectation.feature +4 -0
  232. data/examples/self_test/features/lots_of_undefined.feature +8 -0
  233. data/examples/self_test/features/multiline_name.feature +27 -0
  234. data/examples/self_test/features/outline_sample.feature +15 -0
  235. data/examples/self_test/features/sample.feature +21 -0
  236. data/examples/self_test/features/search_sample.feature +32 -0
  237. data/examples/self_test/features/step_definitions/sample_steps.rb +81 -0
  238. data/examples/self_test/features/support/env.rb +18 -0
  239. data/examples/self_test/features/tags_sample.feature +17 -0
  240. data/examples/self_test/features/tons_of_cukes.feature +52 -0
  241. data/examples/self_test/features/undefined_multiline_args.feature +12 -0
  242. data/examples/self_test/list-of-features.txt +1 -0
  243. data/examples/sinatra/README.textile +13 -0
  244. data/examples/sinatra/Rakefile +6 -0
  245. data/examples/sinatra/app.rb +14 -0
  246. data/examples/sinatra/features/add.feature +11 -0
  247. data/examples/sinatra/features/step_definitions/add_steps.rb +15 -0
  248. data/examples/sinatra/features/support/env.rb +30 -0
  249. data/examples/sinatra/views/add.erb +5 -0
  250. data/examples/sinatra/views/layout.erb +8 -0
  251. data/examples/steps_library/features/step_definitions/steps_lib1.rb +8 -0
  252. data/examples/steps_library/features/step_definitions/steps_lib2.rb +8 -0
  253. data/examples/tcl/README.textile +11 -0
  254. data/examples/tcl/Rakefile +6 -0
  255. data/examples/tcl/features/fibonnacci.feature +17 -0
  256. data/examples/tcl/features/step_definitions/fib_steps.rb +7 -0
  257. data/examples/tcl/features/support/env.rb +6 -0
  258. data/examples/tcl/src/fib.tcl +3 -0
  259. data/examples/test_unit/Rakefile +6 -0
  260. data/examples/test_unit/features/step_definitions/test_unit_steps.rb +23 -0
  261. data/examples/test_unit/features/test_unit.feature +9 -0
  262. data/examples/tickets/Rakefile +20 -0
  263. data/examples/tickets/features.html +138 -0
  264. data/examples/tickets/features/172.feature +28 -0
  265. data/examples/tickets/features/177/1.feature +28 -0
  266. data/examples/tickets/features/177/2.feature +20 -0
  267. data/examples/tickets/features/177/3.feature +18 -0
  268. data/examples/tickets/features/180.feature +7 -0
  269. data/examples/tickets/features/229/tagged_hooks.feature +8 -0
  270. data/examples/tickets/features/229/tagged_hooks.rb +14 -0
  271. data/examples/tickets/features/236.feature +13 -0
  272. data/examples/tickets/features/241.feature +12 -0
  273. data/examples/tickets/features/246.feature +4 -0
  274. data/examples/tickets/features/248.feature +11 -0
  275. data/examples/tickets/features/270/back.feature +14 -0
  276. data/examples/tickets/features/270/back.steps.rb +14 -0
  277. data/examples/tickets/features/272/hooks.feature +26 -0
  278. data/examples/tickets/features/272/hooks_steps.rb +53 -0
  279. data/examples/tickets/features/279/py_string_indent.feature +25 -0
  280. data/examples/tickets/features/279/py_string_indent.steps.rb +12 -0
  281. data/examples/tickets/features/279/wrong.feature_ +11 -0
  282. data/examples/tickets/features/301/filter_background_tagged_hooks.feature +6 -0
  283. data/examples/tickets/features/301/filter_background_tagged_hooks_steps.rb +12 -0
  284. data/examples/tickets/features/306/only_background.feature +4 -0
  285. data/examples/tickets/features/lib/eatting_machine.rb +18 -0
  286. data/examples/tickets/features/lib/pantry.rb +20 -0
  287. data/examples/tickets/features/scenario_outline.feature +95 -0
  288. data/examples/tickets/features/step_definitons/246_steps.rb +3 -0
  289. data/examples/tickets/features/step_definitons/248_steps.rb +15 -0
  290. data/examples/tickets/features/step_definitons/scenario_outline_steps.rb +42 -0
  291. data/examples/tickets/features/step_definitons/tickets_steps.rb +81 -0
  292. data/examples/tickets/features/table_diffing.feature +13 -0
  293. data/examples/tickets/features/tickets.feature +28 -0
  294. data/examples/watir/README.textile +16 -0
  295. data/examples/watir/Rakefile +10 -0
  296. data/examples/watir/features/search.feature +12 -0
  297. data/examples/watir/features/step_definitions/search_steps.rb +26 -0
  298. data/examples/watir/features/support/env.rb +32 -0
  299. data/examples/watir/features/support/screenshots.rb +44 -0
  300. data/examples/webrat/features/search.feature +12 -0
  301. data/examples/webrat/features/step_definitions/kvasir_steps.rb +14 -0
  302. data/examples/webrat/features/support/env.rb +17 -0
  303. data/features/announce.feature +122 -0
  304. data/features/background.feature +308 -0
  305. data/features/bug_371.feature +32 -0
  306. data/features/bug_464.feature +16 -0
  307. data/features/bug_475.feature +43 -0
  308. data/features/call_many_steps.feature +124 -0
  309. data/features/cucumber_cli.feature +654 -0
  310. data/features/cucumber_cli_diff_disabled.feature +52 -0
  311. data/features/cucumber_cli_outlines.feature +105 -0
  312. data/features/custom_formatter.feature +47 -0
  313. data/features/default_snippets.feature +42 -0
  314. data/features/drb_server_integration.feature +174 -0
  315. data/features/exception_in_after_block.feature +100 -0
  316. data/features/exception_in_after_step_block.feature +102 -0
  317. data/features/exception_in_before_block.feature +78 -0
  318. data/features/exclude_files.feature +20 -0
  319. data/features/expand.feature +60 -0
  320. data/features/html_formatter.feature +7 -0
  321. data/features/html_formatter/a.html +400 -0
  322. data/features/junit_formatter.feature +88 -0
  323. data/features/language_from_header.feature +30 -0
  324. data/features/language_help.feature +68 -0
  325. data/features/listener_debugger_formatter.feature +41 -0
  326. data/features/multiline_names.feature +43 -0
  327. data/features/negative_tagged_hooks.feature +61 -0
  328. data/features/post_configuration_hook.feature +37 -0
  329. data/features/profiles.feature +112 -0
  330. data/features/rake_task.feature +152 -0
  331. data/features/report_called_undefined_steps.feature +34 -0
  332. data/features/simplest.feature +11 -0
  333. data/features/snippet.feature +22 -0
  334. data/features/step_definitions/cucumber_steps.rb +154 -0
  335. data/features/step_definitions/extra_steps.rb +2 -0
  336. data/features/step_definitions/simplest_steps.rb +3 -0
  337. data/features/step_definitions/wire_steps.rb +14 -0
  338. data/features/support/env.rb +141 -0
  339. data/features/support/env.rb.simplest +7 -0
  340. data/features/support/fake_wire_server.rb +63 -0
  341. data/features/table_diffing.feature +45 -0
  342. data/features/table_mapping.feature +35 -0
  343. data/features/tag_logic.feature +258 -0
  344. data/features/transform.feature +245 -0
  345. data/features/unicode_table.feature +35 -0
  346. data/features/usage_and_stepdefs_formatter.feature +169 -0
  347. data/features/wire_protocol.feature +177 -0
  348. data/features/work_in_progress.feature +156 -0
  349. data/gem_tasks/contributors.rake +13 -0
  350. data/gem_tasks/environment.rake +7 -0
  351. data/gem_tasks/features.rake +18 -0
  352. data/gem_tasks/fix_cr_lf.rake +10 -0
  353. data/gem_tasks/flog.rake +4 -0
  354. data/gem_tasks/rspec.rake +15 -0
  355. data/gem_tasks/sass.rake +4 -0
  356. data/gem_tasks/sdoc.rake +12 -0
  357. data/lib/README.rdoc +12 -0
  358. data/lib/autotest/cucumber.rb +6 -0
  359. data/lib/autotest/cucumber_mixin.rb +131 -0
  360. data/lib/autotest/cucumber_rails.rb +6 -0
  361. data/lib/autotest/cucumber_rails_rspec.rb +6 -0
  362. data/lib/autotest/cucumber_rspec.rb +6 -0
  363. data/lib/autotest/discover.rb +9 -0
  364. data/lib/cucumber.rb +15 -0
  365. data/lib/cucumber/ast.rb +30 -0
  366. data/lib/cucumber/ast/background.rb +75 -0
  367. data/lib/cucumber/ast/comment.rb +31 -0
  368. data/lib/cucumber/ast/examples.rb +36 -0
  369. data/lib/cucumber/ast/feature.rb +85 -0
  370. data/lib/cucumber/ast/feature_element.rb +68 -0
  371. data/lib/cucumber/ast/features.rb +40 -0
  372. data/lib/cucumber/ast/outline_table.rb +166 -0
  373. data/lib/cucumber/ast/py_string.rb +59 -0
  374. data/lib/cucumber/ast/scenario.rb +111 -0
  375. data/lib/cucumber/ast/scenario_outline.rb +100 -0
  376. data/lib/cucumber/ast/step.rb +121 -0
  377. data/lib/cucumber/ast/step_collection.rb +76 -0
  378. data/lib/cucumber/ast/step_invocation.rb +190 -0
  379. data/lib/cucumber/ast/table.rb +655 -0
  380. data/lib/cucumber/ast/tags.rb +122 -0
  381. data/lib/cucumber/ast/tree_walker.rb +201 -0
  382. data/lib/cucumber/ast/visitor.rb +11 -0
  383. data/lib/cucumber/broadcaster.rb +13 -0
  384. data/lib/cucumber/cli/configuration.rb +180 -0
  385. data/lib/cucumber/cli/drb_client.rb +32 -0
  386. data/lib/cucumber/cli/language_help_formatter.rb +72 -0
  387. data/lib/cucumber/cli/main.rb +121 -0
  388. data/lib/cucumber/cli/options.rb +404 -0
  389. data/lib/cucumber/cli/profile_loader.rb +82 -0
  390. data/lib/cucumber/constantize.rb +34 -0
  391. data/lib/cucumber/core_ext/instance_exec.rb +98 -0
  392. data/lib/cucumber/core_ext/proc.rb +30 -0
  393. data/lib/cucumber/core_ext/string.rb +16 -0
  394. data/lib/cucumber/feature_file.rb +54 -0
  395. data/lib/cucumber/filter.rb +41 -0
  396. data/lib/cucumber/formatter/ansicolor.rb +157 -0
  397. data/lib/cucumber/formatter/color_io.rb +23 -0
  398. data/lib/cucumber/formatter/console.rb +205 -0
  399. data/lib/cucumber/formatter/cucumber.css +248 -0
  400. data/lib/cucumber/formatter/cucumber.sass +241 -0
  401. data/lib/cucumber/formatter/debug.rb +33 -0
  402. data/lib/cucumber/formatter/duration.rb +13 -0
  403. data/lib/cucumber/formatter/html.rb +545 -0
  404. data/lib/cucumber/formatter/io.rb +33 -0
  405. data/lib/cucumber/formatter/junit.rb +149 -0
  406. data/lib/cucumber/formatter/ordered_xml_markup.rb +24 -0
  407. data/lib/cucumber/formatter/pdf.rb +234 -0
  408. data/lib/cucumber/formatter/pretty.rb +237 -0
  409. data/lib/cucumber/formatter/progress.rb +75 -0
  410. data/lib/cucumber/formatter/rerun.rb +50 -0
  411. data/lib/cucumber/formatter/stepdefs.rb +14 -0
  412. data/lib/cucumber/formatter/steps.rb +49 -0
  413. data/lib/cucumber/formatter/summary.rb +35 -0
  414. data/lib/cucumber/formatter/tag_cloud.rb +34 -0
  415. data/lib/cucumber/formatter/unicode.rb +35 -0
  416. data/lib/cucumber/formatter/usage.rb +127 -0
  417. data/lib/cucumber/language_support.rb +30 -0
  418. data/lib/cucumber/language_support/language_methods.rb +110 -0
  419. data/lib/cucumber/languages.yml +535 -0
  420. data/lib/cucumber/parser.rb +8 -0
  421. data/lib/cucumber/parser/common.rb +170 -0
  422. data/lib/cucumber/parser/common.tt +21 -0
  423. data/lib/cucumber/parser/feature.rb +1783 -0
  424. data/lib/cucumber/parser/feature.tt +317 -0
  425. data/lib/cucumber/parser/i18n.tt +34 -0
  426. data/lib/cucumber/parser/natural_language.rb +108 -0
  427. data/lib/cucumber/parser/py_string.rb +276 -0
  428. data/lib/cucumber/parser/py_string.tt +45 -0
  429. data/lib/cucumber/parser/table.rb +305 -0
  430. data/lib/cucumber/parser/table.tt +60 -0
  431. data/lib/cucumber/parser/treetop_ext.rb +53 -0
  432. data/lib/cucumber/platform.rb +31 -0
  433. data/lib/cucumber/py_support/py_dsl.py +10 -0
  434. data/lib/cucumber/py_support/py_language.py +10 -0
  435. data/lib/cucumber/py_support/py_language.rb +81 -0
  436. data/lib/cucumber/rake/task.rb +166 -0
  437. data/lib/cucumber/rb_support/rb_dsl.rb +102 -0
  438. data/lib/cucumber/rb_support/rb_hook.rb +19 -0
  439. data/lib/cucumber/rb_support/rb_language.rb +179 -0
  440. data/lib/cucumber/rb_support/rb_step_definition.rb +75 -0
  441. data/lib/cucumber/rb_support/rb_transform.rb +37 -0
  442. data/lib/cucumber/rb_support/rb_world.rb +81 -0
  443. data/lib/cucumber/rb_support/regexp_argument_matcher.rb +21 -0
  444. data/lib/cucumber/rspec_neuter.rb +23 -0
  445. data/lib/cucumber/step_argument.rb +9 -0
  446. data/lib/cucumber/step_definition_light.rb +20 -0
  447. data/lib/cucumber/step_match.rb +107 -0
  448. data/lib/cucumber/step_mother.rb +350 -0
  449. data/lib/cucumber/webrat/element_locator.rb +93 -0
  450. data/lib/cucumber/webrat/table_locator.rb +1 -0
  451. data/lib/cucumber/wire_support/connection.rb +42 -0
  452. data/lib/cucumber/wire_support/request_handler.rb +19 -0
  453. data/lib/cucumber/wire_support/wire_exception.rb +10 -0
  454. data/lib/cucumber/wire_support/wire_language.rb +52 -0
  455. data/lib/cucumber/wire_support/wire_packet.rb +34 -0
  456. data/lib/cucumber/wire_support/wire_protocol.rb +64 -0
  457. data/lib/cucumber/wire_support/wire_step_definition.rb +21 -0
  458. data/spec/cucumber/ast/background_spec.rb +54 -0
  459. data/spec/cucumber/ast/feature_element_spec.rb +41 -0
  460. data/spec/cucumber/ast/feature_factory.rb +62 -0
  461. data/spec/cucumber/ast/feature_spec.rb +44 -0
  462. data/spec/cucumber/ast/outline_table_spec.rb +21 -0
  463. data/spec/cucumber/ast/py_string_spec.rb +51 -0
  464. data/spec/cucumber/ast/scenario_outline_spec.rb +73 -0
  465. data/spec/cucumber/ast/scenario_spec.rb +45 -0
  466. data/spec/cucumber/ast/step_collection_spec.rb +17 -0
  467. data/spec/cucumber/ast/step_spec.rb +66 -0
  468. data/spec/cucumber/ast/table_spec.rb +422 -0
  469. data/spec/cucumber/ast/tags_spec.rb +29 -0
  470. data/spec/cucumber/ast/tree_walker_spec.rb +11 -0
  471. data/spec/cucumber/broadcaster_spec.rb +15 -0
  472. data/spec/cucumber/cli/configuration_spec.rb +396 -0
  473. data/spec/cucumber/cli/drb_client_spec.rb +77 -0
  474. data/spec/cucumber/cli/main_spec.rb +172 -0
  475. data/spec/cucumber/cli/options_spec.rb +335 -0
  476. data/spec/cucumber/cli/profile_loader_spec.rb +10 -0
  477. data/spec/cucumber/core_ext/proc_spec.rb +68 -0
  478. data/spec/cucumber/formatter/ansicolor_spec.rb +31 -0
  479. data/spec/cucumber/formatter/color_io_spec.rb +27 -0
  480. data/spec/cucumber/formatter/console_spec.rb +20 -0
  481. data/spec/cucumber/formatter/duration_spec.rb +22 -0
  482. data/spec/cucumber/formatter/html_spec.rb +213 -0
  483. data/spec/cucumber/formatter/junit_spec.rb +110 -0
  484. data/spec/cucumber/formatter/progress_spec.rb +38 -0
  485. data/spec/cucumber/formatter/spec_helper.rb +50 -0
  486. data/spec/cucumber/parser/feature_parser_spec.rb +400 -0
  487. data/spec/cucumber/parser/table_parser_spec.rb +52 -0
  488. data/spec/cucumber/rb_support/rb_step_definition_spec.rb +132 -0
  489. data/spec/cucumber/rb_support/regexp_argument_matcher_spec.rb +18 -0
  490. data/spec/cucumber/sell_cucumbers.feature +19 -0
  491. data/spec/cucumber/step_match_spec.rb +56 -0
  492. data/spec/cucumber/step_mother_spec.rb +270 -0
  493. data/spec/cucumber/treetop_parser/empty_feature.feature +4 -0
  494. data/spec/cucumber/treetop_parser/empty_scenario.feature +9 -0
  495. data/spec/cucumber/treetop_parser/empty_scenario_outline.feature +3 -0
  496. data/spec/cucumber/treetop_parser/fit_scenario.feature +8 -0
  497. data/spec/cucumber/treetop_parser/given_scenario.feature +9 -0
  498. data/spec/cucumber/treetop_parser/invalid_scenario_outlines.feature +7 -0
  499. data/spec/cucumber/treetop_parser/multiline_steps.feature +17 -0
  500. data/spec/cucumber/treetop_parser/multiple_tables.feature +27 -0
  501. data/spec/cucumber/treetop_parser/scenario_outline.feature +16 -0
  502. data/spec/cucumber/treetop_parser/spaces.feature +12 -0
  503. data/spec/cucumber/treetop_parser/test_dos.feature +25 -0
  504. data/spec/cucumber/treetop_parser/with_comments.feature +23 -0
  505. data/spec/cucumber/treetop_parser/with_tags.feature +18 -0
  506. data/spec/cucumber/wire_support/wire_language_spec.rb +47 -0
  507. data/spec/cucumber/wire_support/wire_packet_spec.rb +26 -0
  508. data/spec/cucumber/world/pending_spec.rb +46 -0
  509. data/spec/spec.opts +4 -0
  510. data/spec/spec_helper.rb +18 -0
  511. metadata +813 -0
@@ -0,0 +1,110 @@
1
+ require 'cucumber/step_match'
2
+ require 'cucumber/step_definition_light'
3
+
4
+ module Cucumber
5
+ module LanguageSupport
6
+ module LanguageMethods
7
+ def create_step_match(step_definition, step_name, name_to_report, step_arguments)
8
+ StepMatch.new(step_definition, step_name, name_to_report, step_arguments)
9
+ end
10
+
11
+ def before(scenario)
12
+ begin_scenario(scenario)
13
+ execute_before(scenario)
14
+ end
15
+
16
+ def after(scenario)
17
+ execute_after(scenario)
18
+ end_scenario
19
+ end
20
+
21
+ def after_configuration(configuration)
22
+ hooks[:after_configuration].each do |hook|
23
+ hook.invoke('AfterConfiguration', configuration)
24
+ end
25
+ end
26
+
27
+ def execute_after_step(scenario)
28
+ hooks_for(:after_step, scenario).each do |hook|
29
+ invoke(hook, 'AfterStep', scenario, false)
30
+ end
31
+ end
32
+
33
+ def execute_transforms(args)
34
+ args.map do |arg|
35
+ matching_transform = transforms.detect {|transform| transform.match(arg) }
36
+ matching_transform ? matching_transform.invoke(arg) : arg
37
+ end
38
+ end
39
+
40
+ def add_hook(phase, hook)
41
+ hook.tag_name_lists = hook.tag_names.map {|tag_string| Ast::Tags.parse_tags(tag_string)}
42
+ hooks[phase.to_sym] << hook
43
+ hook
44
+ end
45
+
46
+ def add_transform(transform)
47
+ transforms.unshift transform
48
+ transform
49
+ end
50
+
51
+ def hooks_for(phase, scenario) #:nodoc:
52
+ hooks[phase.to_sym].select{|hook| scenario.accept_hook?(hook)}
53
+ end
54
+
55
+ def unmatched_step_definitions
56
+ available_step_definition_hash.keys - invoked_step_definition_hash.keys
57
+ end
58
+
59
+ def available_step_definition(regexp_source, file_colon_line)
60
+ available_step_definition_hash[StepDefinitionLight.new(regexp_source, file_colon_line)] = nil
61
+ end
62
+
63
+ def invoked_step_definition(regexp_source, file_colon_line)
64
+ invoked_step_definition_hash[StepDefinitionLight.new(regexp_source, file_colon_line)] = nil
65
+ end
66
+
67
+ private
68
+
69
+ def available_step_definition_hash
70
+ @available_step_definition_hash ||= {}
71
+ end
72
+
73
+ def invoked_step_definition_hash
74
+ @invoked_step_definition_hash ||= {}
75
+ end
76
+
77
+ def hooks
78
+ @hooks ||= Hash.new{|h,k| h[k] = []}
79
+ end
80
+
81
+ def transforms
82
+ @transforms ||= []
83
+ end
84
+
85
+ def execute_before(scenario)
86
+ hooks_for(:before, scenario).each do |hook|
87
+ invoke(hook, 'Before', scenario, true)
88
+ end
89
+ end
90
+
91
+ def execute_after(scenario)
92
+ hooks_for(:after, scenario).reverse_each do |hook|
93
+ invoke(hook, 'After', scenario, true)
94
+ end
95
+ end
96
+
97
+ def invoke(hook, location, scenario, exception_fails_scenario)
98
+ begin
99
+ hook.invoke(location, scenario)
100
+ rescue Exception => exception
101
+ if exception_fails_scenario
102
+ scenario.fail!(exception)
103
+ else
104
+ raise
105
+ end
106
+ end
107
+ end
108
+ end
109
+ end
110
+ end
@@ -0,0 +1,535 @@
1
+ # encoding: UTF-8
2
+ # We use the codes here (prefer 2 letters when possible)
3
+ # http://en.wikipedia.org/wiki/List_of_ISO_639-2_codes
4
+ #
5
+ # If you want several aliases for a keyword, just separate them
6
+ # with a | character. Make sure there are no ambiguities in the
7
+ # keywords.
8
+ #
9
+ "en":
10
+ name: English
11
+ native: English
12
+ feature: Feature
13
+ background: Background
14
+ scenario: Scenario
15
+ scenario_outline: Scenario Outline
16
+ examples: Examples|Scenarios
17
+ given: *|Given
18
+ when: *|When
19
+ then: *|Then
20
+ and: *|And
21
+ but: *|But
22
+
23
+ # Please help us keeping the languages below uptodate. The parsers for a language
24
+ # that is missing a keyword will expect the English word until the missing word(s)
25
+ # are added.
26
+ #
27
+ # Please keep the grammars in alphabetical order by name from here and down.
28
+
29
+ "ar":
30
+ name: Arabic
31
+ native: العربية
32
+ feature: خاصية
33
+ background: الخلفية
34
+ scenario: سيناريو
35
+ scenario_outline: سيناريو مخطط
36
+ examples: امثلة
37
+ given: *|بفرض
38
+ when: *|متى|عندما
39
+ then: *|اذاً|ثم
40
+ and: *|و
41
+ but: *|لكن
42
+ "bg":
43
+ name: Bulgarian
44
+ native: български
45
+ feature: Функционалност
46
+ background: Предистория
47
+ scenario: Сценарий
48
+ scenario_outline: Рамка на сценарий
49
+ examples: Примери
50
+ given: *|Дадено
51
+ when: *|Когато
52
+ then: *|То
53
+ and: *|И
54
+ but: *|Но
55
+ "cat":
56
+ name: Catalan
57
+ native: català
58
+ background: Rerefons|Antecedents
59
+ feature: Característica
60
+ scenario: Escenari
61
+ scenario_outline: Esquema de l'escenari
62
+ examples: Exemples
63
+ given: *|Donat|Donada
64
+ when: *|Quan
65
+ then: *|Aleshores
66
+ and: *|I
67
+ but: *|Però
68
+ "cy":
69
+ name: Welsh
70
+ native: Cymraeg
71
+ background: Cefndir
72
+ feature: Arwedd
73
+ scenario: Scenario
74
+ scenario_outline: Scenario Amlinellol
75
+ examples: Enghreifftiau
76
+ given: *|anrhegedig a
77
+ when: *|Pryd
78
+ then: *|Yna
79
+ and: *|A
80
+ but: *|Ond
81
+ "cs":
82
+ name: Czech
83
+ native: Česky
84
+ feature: Požadavek
85
+ background: Pozadí|Kontext
86
+ scenario: Scénář
87
+ scenario_outline: Náčrt Scénáře|Osnova scénáře
88
+ examples: Příklady
89
+ given: *|Pokud
90
+ when: *|Když
91
+ then: *|Pak
92
+ and: *|A|A také
93
+ but: *|Ale
94
+ "da":
95
+ name: Danish
96
+ native: dansk
97
+ feature: Egenskab
98
+ background: Baggrund
99
+ scenario: Scenarie
100
+ scenario_outline: Abstrakt Scenario
101
+ examples: Eksempler
102
+ given: *|Givet
103
+ when: *|Når
104
+ then: *|Så
105
+ and: *|Og
106
+ but: *|Men
107
+ "de":
108
+ name: German
109
+ native: Deutsch
110
+ feature: Funktionalität
111
+ background: Grundlage
112
+ scenario: Szenario
113
+ scenario_outline: Szenariogrundriss
114
+ examples: Beispiele
115
+ given: *|Gegeben sei
116
+ when: *|Wenn
117
+ then: *|Dann
118
+ and: *|Und
119
+ but: *|Aber
120
+ "en-au":
121
+ name: Australian
122
+ native: Australian
123
+ feature: Crikey
124
+ background: Background
125
+ scenario: Mate
126
+ scenario_outline: Blokes
127
+ examples: Cobber
128
+ given: *|Ya know how
129
+ when: *|When
130
+ then: *|Ya gotta
131
+ and: *|N
132
+ but: *|Cept
133
+ "en-lol":
134
+ name: LOLCAT
135
+ native: LOLCAT
136
+ feature: OH HAI
137
+ background: B4
138
+ scenario: MISHUN
139
+ scenario_outline: MISHUN SRSLY
140
+ examples: EXAMPLZ
141
+ given: *|I CAN HAZ
142
+ when: *|WEN
143
+ then: *|DEN
144
+ and: *|AN
145
+ but: *|BUT
146
+ "en-tx":
147
+ name: Texan
148
+ native: Texan
149
+ feature: Feature
150
+ background: Background
151
+ scenario: Scenario
152
+ scenario_outline: All y'all
153
+ examples: Examples
154
+ given: *|Given y'all
155
+ when: *|When y'all
156
+ then: *|Then y'all
157
+ and: *|And y'all
158
+ but: *|But y'all
159
+ "es":
160
+ name: Spanish
161
+ native: español
162
+ background: Antecedentes
163
+ feature: Característica
164
+ scenario: Escenario
165
+ scenario_outline: Esquema del escenario
166
+ examples: Ejemplos
167
+ given: *|Dado
168
+ when: *|Cuando
169
+ then: *|Entonces
170
+ and: *|Y
171
+ but: *|Pero
172
+ "et":
173
+ name: Estonian
174
+ native: eesti keel
175
+ feature: Omadus
176
+ background: Taust
177
+ scenario: Stsenaarium
178
+ scenario_outline: Raamstsenaarium
179
+ examples: Juhtumid
180
+ given: *|Eeldades
181
+ when: *|Kui
182
+ then: *|Siis
183
+ and: *|Ja
184
+ but: *|Kuid
185
+ "fi":
186
+ name: Finnish
187
+ native: suomi
188
+ feature: Ominaisuus
189
+ background: Tausta
190
+ scenario: Tapaus
191
+ scenario_outline: Tapausaihio
192
+ examples: Tapaukset
193
+ given: *|Oletetaan
194
+ when: *|Kun
195
+ then: *|Niin
196
+ and: *|Ja
197
+ but: *|Mutta
198
+ "fr":
199
+ name: French
200
+ native: français
201
+ feature: Fonctionnalité
202
+ background: Contexte
203
+ scenario: Scénario
204
+ scenario_outline: Plan du scénario|Plan du Scénario
205
+ examples: Exemples
206
+ given: *|Soit|Etant donné
207
+ when: *|Quand|Lorsque|Lorsqu'<
208
+ then: *|Alors
209
+ and: *|Et
210
+ but: *|Mais
211
+ "he":
212
+ name: Hebrew
213
+ native: עברית
214
+ feature: תכונה
215
+ background: רקע
216
+ scenario: תרחיש
217
+ scenario_outline: תבנית תרחיש
218
+ examples: דוגמאות
219
+ given: *|בהינתן
220
+ when: *|כאשר
221
+ then: *|אז|אזי
222
+ and: *|וגם
223
+ but: *|אבל
224
+ "hr":
225
+ name: Croatian
226
+ native: hrvatski
227
+ feature: Osobina|Mogućnost|Mogucnost
228
+ background: Pozadina
229
+ scenario: Scenarij
230
+ scenario_outline: Skica|Koncept
231
+ examples: Primjeri|Scenariji
232
+ given: *|Zadan|Zadani|Zadano
233
+ when: *|Kada|Kad
234
+ then: *|Onda
235
+ and: *|I
236
+ but: *|Ali
237
+ "hu":
238
+ name: Hungarian
239
+ native: magyar
240
+ feature: Jellemző
241
+ background: Háttér
242
+ scenario: Forgatókönyv
243
+ scenario_outline: Forgatókönyv vázlat
244
+ examples: Példák
245
+ given: *|Ha
246
+ when: *|Majd
247
+ then: *|Akkor
248
+ and: *|És
249
+ but: *|De
250
+ "id":
251
+ name: Indonesian
252
+ native: Bahasa Indonesia
253
+ feature: Fitur
254
+ background: Dasar
255
+ scenario: Skenario
256
+ scenario_outline: Skenario konsep
257
+ examples: Contoh
258
+ given: *|Dengan
259
+ when: *|Ketika
260
+ then: *|Maka
261
+ and: *|Dan
262
+ but: *|Tapi
263
+ "it":
264
+ name: Italian
265
+ native: italiano
266
+ feature: Funzionalità
267
+ background: Contesto
268
+ scenario: Scenario
269
+ scenario_outline: Schema dello scenario
270
+ examples: Esempi
271
+ given: *|Dato
272
+ when: *|Quando
273
+ then: *|Allora
274
+ and: *|E
275
+ but: *|Ma
276
+ "ja":
277
+ name: Japanese
278
+ native: 日本語
279
+ feature: フィーチャ|機能
280
+ background: 背景
281
+ scenario: シナリオ
282
+ scenario_outline: シナリオアウトライン|シナリオテンプレート|テンプレ|シナリオテンプレ
283
+ examples: 例|サンプル
284
+ given: *|前提<
285
+ when: *|もし<
286
+ then: *|ならば<
287
+ and: *|かつ<
288
+ but: *|しかし<|但し<|ただし<
289
+ "ko":
290
+ name: Korean
291
+ native: 한국어
292
+ background: 배경
293
+ feature: 기능
294
+ scenario: 시나리오
295
+ scenario_outline: 시나리오 개요
296
+ examples: 예
297
+ given: *|조건<
298
+ when: *|만일<
299
+ then: *|그러면<
300
+ and: *|그리고<
301
+ but: *|하지만<
302
+ "lt":
303
+ name: Lithuanian
304
+ native: lietuvių kalba
305
+ feature: Savybė
306
+ background: Kontekstas
307
+ scenario: Scenarijus
308
+ scenario_outline: Scenarijaus šablonas
309
+ examples: Pavyzdžiai|Scenarijai|Variantai
310
+ given: *|Duota
311
+ when: *|Kai
312
+ then: *|Tada
313
+ and: *|Ir
314
+ but: *|Bet
315
+ "lv":
316
+ name: Latvian
317
+ native: latviešu
318
+ feature: Funkcionalitāte|Fīča
319
+ background: Konteksts|Situācija
320
+ scenario: Scenārijs
321
+ scenario_outline: Scenārijs pēc parauga
322
+ examples: Piemēri|Paraugs
323
+ given: *|Kad
324
+ when: *|Ja
325
+ then: *|Tad
326
+ and: *|Un
327
+ but: *|Bet
328
+ "nl":
329
+ name: Dutch
330
+ native: Nederlands
331
+ feature: Functionaliteit
332
+ background: Achtergrond
333
+ scenario: Scenario
334
+ scenario_outline: Abstract Scenario
335
+ examples: Voorbeelden
336
+ given: *|Gegeven
337
+ when: *|Als
338
+ then: *|Dan
339
+ and: *|En
340
+ but: *|Maar
341
+ "no":
342
+ name: Norwegian
343
+ native: norsk
344
+ feature: Egenskap
345
+ background: Bakgrunn
346
+ scenario: Scenario
347
+ scenario_outline: Abstrakt Scenario
348
+ examples: Eksempler
349
+ given: *|Gitt
350
+ when: *|Når
351
+ then: *|Så
352
+ and: *|Og
353
+ but: *|Men
354
+ "pl":
355
+ name: Polish
356
+ native: polski
357
+ feature: Właściwość
358
+ background: Założenia
359
+ scenario: Scenariusz
360
+ scenario_outline: Szablon scenariusza
361
+ examples: Przykłady
362
+ given: *|Zakładając
363
+ when: *|Jeżeli
364
+ then: *|Wtedy
365
+ and: *|Oraz
366
+ but: *|Ale
367
+ "pt":
368
+ name: Portuguese
369
+ native: português
370
+ background: Contexto
371
+ feature: Funcionalidade
372
+ scenario: Cenário|Cenario
373
+ scenario_outline: Esquema do Cenário|Esquema do Cenario
374
+ examples: Exemplos
375
+ given: *|Dado
376
+ when: *|Quando
377
+ then: *|Então|Entao
378
+ and: *|E
379
+ but: *|Mas
380
+ "ro":
381
+ name: Romanian
382
+ native: română
383
+ background: Conditii
384
+ feature: Functionalitate
385
+ scenario: Scenariu
386
+ scenario_outline: Scenariul de sablon
387
+ examples: Exemplele
388
+ given: *|Daca
389
+ when: *|Cand
390
+ then: *|Atunci
391
+ and: *|Si
392
+ but: *|Dar
393
+ "ro2":
394
+ name: Romanian (diacritical)
395
+ native: română (diacritical)
396
+ background: Condiţii
397
+ feature: Funcționalitate
398
+ scenario: Scenariu
399
+ scenario_outline: Scenariul de şablon
400
+ examples: Exemplele
401
+ given: *|Dacă
402
+ when: *|Când
403
+ then: *|Atunci
404
+ and: *|Și
405
+ but: *|Dar
406
+ "ru":
407
+ name: Russian
408
+ native: русский
409
+ feature: Функционал
410
+ background: Предыстория
411
+ scenario: Сценарий
412
+ scenario_outline: Структура сценария
413
+ examples: Значения
414
+ given: *|Допустим
415
+ when: *|Если
416
+ then: *|То
417
+ and: *|И|К тому же
418
+ but: *|Но|А
419
+ "se":
420
+ name: Swedish
421
+ native: Svenska
422
+ feature: Egenskap
423
+ background: Bakgrund
424
+ scenario: Scenario
425
+ scenario_outline: Abstrakt Scenario
426
+ examples: Exempel
427
+ given: *|Givet
428
+ when: *|När
429
+ then: *|Så
430
+ and: *|Och
431
+ but: *|Men
432
+ "sk":
433
+ name: Slovak
434
+ native: Slovensky
435
+ feature: Požiadavka
436
+ background: Pozadie
437
+ scenario: Scenár
438
+ scenario_outline: Náčrt Scenáru
439
+ examples: Príklady
440
+ given: *|Pokiaľ
441
+ when: *|Keď
442
+ then: *|Tak
443
+ and: *|A
444
+ but: *|Ale
445
+ "sr-Latn":
446
+ name: Serbian_latin
447
+ native: Srpski_latinica
448
+ feature: Funkcionalnost|Mogućnost|Mogucnost|Osobina
449
+ background: Kontekst|Osnova|Pozadina
450
+ scenario: Scenario|Primer
451
+ scenario_outline: Struktura scenarija|Skica|Koncept
452
+ examples: Primeri|Scenariji
453
+ given: *|Zadato|Zadate|Zatati
454
+ when: *|Kada|Kad
455
+ then: *|Onda
456
+ and: *|I
457
+ but: *|Ali
458
+ "sr":
459
+ name: Serbian
460
+ native: Српски
461
+ feature: Функционалност|Могућност|Особина
462
+ background: Контекст|Основа|Позадина
463
+ scenario: Сценарио|Пример
464
+ scenario_outline: Структура сценарија|Скица|Концепт
465
+ examples: Примери|Сценарији
466
+ given: *|Задато|Задате|Задати
467
+ when: *|Када|Кад
468
+ then: *|Онда
469
+ and: *|И
470
+ but: *|Али
471
+ "tr":
472
+ name: Turkish
473
+ native: Türkçe
474
+ feature: Özellik
475
+ background: Geçmiş
476
+ scenario: Senaryo
477
+ scenario_outline: Senaryo taslağı
478
+ examples: Örnekler
479
+ given: *|Diyelim ki
480
+ when: *|Eğer ki
481
+ then: *|O zaman
482
+ and: *|Ve
483
+ but: *|Fakat|Ama
484
+ "uz":
485
+ name: Uzbek
486
+ native: Узбекча
487
+ feature: Функционал
488
+ background: Тарих
489
+ scenario: Сценарий
490
+ scenario_outline: Сценарий структураси
491
+ examples: Мисоллар
492
+ given: *|Агар
493
+ when: *|Агар
494
+ then: *|Унда
495
+ and: *|Ва
496
+ but: *|Лекин|Бирок|Аммо
497
+ "vi":
498
+ name: Vietnamese
499
+ native: Tiếng Việt
500
+ feature: Tính năng
501
+ background: Bối cảnh
502
+ scenario: Tình huống|Kịch bản
503
+ scenario_outline: Khung tình huống|Khung kịch bản
504
+ examples: Dữ liệu
505
+ given: *|Biết|Cho
506
+ when: *|Khi
507
+ then: *|Thì
508
+ and: *|Và
509
+ but: *|Nhưng
510
+ "zh-CN":
511
+ name: Chinese simplified
512
+ native: 简体中文
513
+ feature: 功能
514
+ background: 背景
515
+ scenario: 场景
516
+ scenario_outline: 场景大纲
517
+ examples: 例子
518
+ given: *|假如<
519
+ when: *|当<
520
+ then: *|那么<
521
+ and: *|而且<
522
+ but: *|但是<
523
+ "zh-TW":
524
+ name: Chinese traditional
525
+ native: 繁體中文
526
+ feature: 功能
527
+ background: 背景
528
+ scenario: 場景|劇本
529
+ scenario_outline: 場景大綱|劇本大綱
530
+ examples: 例子
531
+ given: *|假設<
532
+ when: *|當<
533
+ then: *|那麼<
534
+ and: *|而且<|並且<
535
+ but: *|但是<