busser-behave 0.1.3

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 (418) hide show
  1. checksums.yaml +7 -0
  2. data/.cane +0 -0
  3. data/.gitignore +17 -0
  4. data/.tailor +4 -0
  5. data/.travis.yml +11 -0
  6. data/CHANGELOG.md +3 -0
  7. data/Gemfile +3 -0
  8. data/LICENSE +15 -0
  9. data/README.md +41 -0
  10. data/Rakefile +68 -0
  11. data/busser-behave.gemspec +30 -0
  12. data/features/plugin_install_command.feature +11 -0
  13. data/features/plugin_list_command.feature +8 -0
  14. data/features/support/env.rb +13 -0
  15. data/features/test_command.feature +31 -0
  16. data/lib/busser/behave/version.rb +26 -0
  17. data/lib/busser/runner_plugin/behave.rb +37 -0
  18. data/vendor/behave/CHANGES.rst +483 -0
  19. data/vendor/behave/LICENSE +23 -0
  20. data/vendor/behave/MANIFEST.in +37 -0
  21. data/vendor/behave/PROJECT_INFO.rst +21 -0
  22. data/vendor/behave/README.rst +112 -0
  23. data/vendor/behave/VERSION.txt +1 -0
  24. data/vendor/behave/behave.ini +22 -0
  25. data/vendor/behave/behave/__init__.py +30 -0
  26. data/vendor/behave/behave/__main__.py +187 -0
  27. data/vendor/behave/behave/_stepimport.py +185 -0
  28. data/vendor/behave/behave/_types.py +134 -0
  29. data/vendor/behave/behave/api/__init__.py +7 -0
  30. data/vendor/behave/behave/api/async_step.py +283 -0
  31. data/vendor/behave/behave/capture.py +227 -0
  32. data/vendor/behave/behave/compat/__init__.py +5 -0
  33. data/vendor/behave/behave/compat/collections.py +20 -0
  34. data/vendor/behave/behave/configuration.py +788 -0
  35. data/vendor/behave/behave/contrib/__init__.py +0 -0
  36. data/vendor/behave/behave/contrib/scenario_autoretry.py +73 -0
  37. data/vendor/behave/behave/formatter/__init__.py +12 -0
  38. data/vendor/behave/behave/formatter/_builtins.py +39 -0
  39. data/vendor/behave/behave/formatter/_registry.py +135 -0
  40. data/vendor/behave/behave/formatter/ansi_escapes.py +91 -0
  41. data/vendor/behave/behave/formatter/base.py +200 -0
  42. data/vendor/behave/behave/formatter/formatters.py +57 -0
  43. data/vendor/behave/behave/formatter/json.py +253 -0
  44. data/vendor/behave/behave/formatter/null.py +12 -0
  45. data/vendor/behave/behave/formatter/plain.py +158 -0
  46. data/vendor/behave/behave/formatter/pretty.py +351 -0
  47. data/vendor/behave/behave/formatter/progress.py +287 -0
  48. data/vendor/behave/behave/formatter/rerun.py +114 -0
  49. data/vendor/behave/behave/formatter/sphinx_steps.py +372 -0
  50. data/vendor/behave/behave/formatter/sphinx_util.py +118 -0
  51. data/vendor/behave/behave/formatter/steps.py +497 -0
  52. data/vendor/behave/behave/formatter/tags.py +178 -0
  53. data/vendor/behave/behave/i18n.py +614 -0
  54. data/vendor/behave/behave/importer.py +102 -0
  55. data/vendor/behave/behave/json_parser.py +264 -0
  56. data/vendor/behave/behave/log_capture.py +233 -0
  57. data/vendor/behave/behave/matchers.py +402 -0
  58. data/vendor/behave/behave/model.py +1737 -0
  59. data/vendor/behave/behave/model_core.py +416 -0
  60. data/vendor/behave/behave/model_describe.py +105 -0
  61. data/vendor/behave/behave/parser.py +615 -0
  62. data/vendor/behave/behave/reporter/__init__.py +0 -0
  63. data/vendor/behave/behave/reporter/base.py +45 -0
  64. data/vendor/behave/behave/reporter/junit.py +473 -0
  65. data/vendor/behave/behave/reporter/summary.py +94 -0
  66. data/vendor/behave/behave/runner.py +753 -0
  67. data/vendor/behave/behave/runner_util.py +417 -0
  68. data/vendor/behave/behave/step_registry.py +112 -0
  69. data/vendor/behave/behave/tag_expression.py +111 -0
  70. data/vendor/behave/behave/tag_matcher.py +465 -0
  71. data/vendor/behave/behave/textutil.py +137 -0
  72. data/vendor/behave/behave/userdata.py +130 -0
  73. data/vendor/behave/behave4cmd0/__all_steps__.py +12 -0
  74. data/vendor/behave/behave4cmd0/__init__.py +5 -0
  75. data/vendor/behave/behave4cmd0/__setup.py +11 -0
  76. data/vendor/behave/behave4cmd0/command_shell.py +216 -0
  77. data/vendor/behave/behave4cmd0/command_shell_proc.py +256 -0
  78. data/vendor/behave/behave4cmd0/command_steps.py +532 -0
  79. data/vendor/behave/behave4cmd0/command_util.py +147 -0
  80. data/vendor/behave/behave4cmd0/failing_steps.py +49 -0
  81. data/vendor/behave/behave4cmd0/log/__init__.py +1 -0
  82. data/vendor/behave/behave4cmd0/log/steps.py +395 -0
  83. data/vendor/behave/behave4cmd0/note_steps.py +29 -0
  84. data/vendor/behave/behave4cmd0/passing_steps.py +36 -0
  85. data/vendor/behave/behave4cmd0/pathutil.py +146 -0
  86. data/vendor/behave/behave4cmd0/setup_command_shell.py +24 -0
  87. data/vendor/behave/behave4cmd0/textutil.py +304 -0
  88. data/vendor/behave/bin/behave +44 -0
  89. data/vendor/behave/bin/behave.cmd +10 -0
  90. data/vendor/behave/bin/behave.junit_filter.py +85 -0
  91. data/vendor/behave/bin/behave.step_durations.py +163 -0
  92. data/vendor/behave/bin/behave2cucumber_json.py +63 -0
  93. data/vendor/behave/bin/behave_cmd.py +44 -0
  94. data/vendor/behave/bin/convert_i18n_yaml.py +77 -0
  95. data/vendor/behave/bin/explore_platform_encoding.py +24 -0
  96. data/vendor/behave/bin/i18n.yml +621 -0
  97. data/vendor/behave/bin/invoke +8 -0
  98. data/vendor/behave/bin/invoke.cmd +9 -0
  99. data/vendor/behave/bin/json.format.py +167 -0
  100. data/vendor/behave/bin/jsonschema_validate.py +122 -0
  101. data/vendor/behave/bin/make_localpi.py +279 -0
  102. data/vendor/behave/bin/project_bootstrap.sh +30 -0
  103. data/vendor/behave/bin/toxcmd.py +270 -0
  104. data/vendor/behave/bin/toxcmd3.py +270 -0
  105. data/vendor/behave/conftest.py +27 -0
  106. data/vendor/behave/docs/Makefile +154 -0
  107. data/vendor/behave/docs/_static/agogo.css +501 -0
  108. data/vendor/behave/docs/_static/behave_logo.png +0 -0
  109. data/vendor/behave/docs/_static/behave_logo1.png +0 -0
  110. data/vendor/behave/docs/_static/behave_logo2.png +0 -0
  111. data/vendor/behave/docs/_static/behave_logo3.png +0 -0
  112. data/vendor/behave/docs/_themes/LICENSE +45 -0
  113. data/vendor/behave/docs/_themes/kr/layout.html +17 -0
  114. data/vendor/behave/docs/_themes/kr/relations.html +19 -0
  115. data/vendor/behave/docs/_themes/kr/static/flasky.css_t +480 -0
  116. data/vendor/behave/docs/_themes/kr/static/small_flask.css +90 -0
  117. data/vendor/behave/docs/_themes/kr/theme.conf +7 -0
  118. data/vendor/behave/docs/_themes/kr_small/layout.html +22 -0
  119. data/vendor/behave/docs/_themes/kr_small/static/flasky.css_t +287 -0
  120. data/vendor/behave/docs/_themes/kr_small/theme.conf +10 -0
  121. data/vendor/behave/docs/api.rst +408 -0
  122. data/vendor/behave/docs/appendix.rst +19 -0
  123. data/vendor/behave/docs/behave.rst +640 -0
  124. data/vendor/behave/docs/behave.rst-template +86 -0
  125. data/vendor/behave/docs/behave_ecosystem.rst +81 -0
  126. data/vendor/behave/docs/comparison.rst +85 -0
  127. data/vendor/behave/docs/conf.py +293 -0
  128. data/vendor/behave/docs/context_attributes.rst +66 -0
  129. data/vendor/behave/docs/django.rst +192 -0
  130. data/vendor/behave/docs/formatters.rst +61 -0
  131. data/vendor/behave/docs/gherkin.rst +673 -0
  132. data/vendor/behave/docs/index.rst +57 -0
  133. data/vendor/behave/docs/install.rst +60 -0
  134. data/vendor/behave/docs/more_info.rst +184 -0
  135. data/vendor/behave/docs/new_and_noteworthy.rst +18 -0
  136. data/vendor/behave/docs/new_and_noteworthy_v1.2.4.rst +11 -0
  137. data/vendor/behave/docs/new_and_noteworthy_v1.2.5.rst +814 -0
  138. data/vendor/behave/docs/new_and_noteworthy_v1.2.6.rst +255 -0
  139. data/vendor/behave/docs/parse_builtin_types.rst +59 -0
  140. data/vendor/behave/docs/philosophy.rst +235 -0
  141. data/vendor/behave/docs/regular_expressions.rst +71 -0
  142. data/vendor/behave/docs/related.rst +14 -0
  143. data/vendor/behave/docs/test_domains.rst +62 -0
  144. data/vendor/behave/docs/tutorial.rst +636 -0
  145. data/vendor/behave/docs/update_behave_rst.py +100 -0
  146. data/vendor/behave/etc/json/behave.json-schema +172 -0
  147. data/vendor/behave/etc/junit.xml/behave_junit.xsd +103 -0
  148. data/vendor/behave/etc/junit.xml/junit-4.xsd +92 -0
  149. data/vendor/behave/examples/async_step/README.txt +8 -0
  150. data/vendor/behave/examples/async_step/behave.ini +14 -0
  151. data/vendor/behave/examples/async_step/features/async_dispatch.feature +8 -0
  152. data/vendor/behave/examples/async_step/features/async_run.feature +6 -0
  153. data/vendor/behave/examples/async_step/features/environment.py +28 -0
  154. data/vendor/behave/examples/async_step/features/steps/async_dispatch_steps.py +26 -0
  155. data/vendor/behave/examples/async_step/features/steps/async_steps34.py +10 -0
  156. data/vendor/behave/examples/async_step/features/steps/async_steps35.py +10 -0
  157. data/vendor/behave/examples/async_step/testrun_example.async_dispatch.txt +11 -0
  158. data/vendor/behave/examples/async_step/testrun_example.async_run.txt +9 -0
  159. data/vendor/behave/examples/env_vars/README.rst +26 -0
  160. data/vendor/behave/examples/env_vars/behave.ini +15 -0
  161. data/vendor/behave/examples/env_vars/behave_run.output_example.txt +12 -0
  162. data/vendor/behave/examples/env_vars/features/env_var.feature +6 -0
  163. data/vendor/behave/examples/env_vars/features/steps/env_var_steps.py +38 -0
  164. data/vendor/behave/features/README.txt +12 -0
  165. data/vendor/behave/features/background.feature +392 -0
  166. data/vendor/behave/features/capture_stderr.feature +172 -0
  167. data/vendor/behave/features/capture_stdout.feature +125 -0
  168. data/vendor/behave/features/cmdline.lang_list.feature +33 -0
  169. data/vendor/behave/features/configuration.default_paths.feature +116 -0
  170. data/vendor/behave/features/context.global_params.feature +35 -0
  171. data/vendor/behave/features/context.local_params.feature +17 -0
  172. data/vendor/behave/features/directory_layout.advanced.feature +147 -0
  173. data/vendor/behave/features/directory_layout.basic.feature +75 -0
  174. data/vendor/behave/features/directory_layout.basic2.feature +87 -0
  175. data/vendor/behave/features/environment.py +53 -0
  176. data/vendor/behave/features/exploratory_testing.with_table.feature +141 -0
  177. data/vendor/behave/features/feature.description.feature +0 -0
  178. data/vendor/behave/features/feature.exclude_from_run.feature +96 -0
  179. data/vendor/behave/features/formatter.help.feature +30 -0
  180. data/vendor/behave/features/formatter.json.feature +420 -0
  181. data/vendor/behave/features/formatter.progress3.feature +235 -0
  182. data/vendor/behave/features/formatter.rerun.feature +296 -0
  183. data/vendor/behave/features/formatter.steps.feature +181 -0
  184. data/vendor/behave/features/formatter.steps_catalog.feature +100 -0
  185. data/vendor/behave/features/formatter.steps_doc.feature +140 -0
  186. data/vendor/behave/features/formatter.steps_usage.feature +404 -0
  187. data/vendor/behave/features/formatter.tags.feature +134 -0
  188. data/vendor/behave/features/formatter.tags_location.feature +183 -0
  189. data/vendor/behave/features/formatter.user_defined.feature +196 -0
  190. data/vendor/behave/features/i18n.unicode_problems.feature +445 -0
  191. data/vendor/behave/features/logcapture.clear_handlers.feature +114 -0
  192. data/vendor/behave/features/logcapture.feature +188 -0
  193. data/vendor/behave/features/logcapture.filter.feature +130 -0
  194. data/vendor/behave/features/logging.no_capture.feature +99 -0
  195. data/vendor/behave/features/logging.setup_format.feature +157 -0
  196. data/vendor/behave/features/logging.setup_level.feature +168 -0
  197. data/vendor/behave/features/logging.setup_with_configfile.feature +137 -0
  198. data/vendor/behave/features/parser.background.sad_cases.feature +129 -0
  199. data/vendor/behave/features/parser.feature.sad_cases.feature +144 -0
  200. data/vendor/behave/features/runner.abort_by_user.feature +305 -0
  201. data/vendor/behave/features/runner.continue_after_failed_step.feature +136 -0
  202. data/vendor/behave/features/runner.default_format.feature +175 -0
  203. data/vendor/behave/features/runner.dry_run.feature +184 -0
  204. data/vendor/behave/features/runner.feature_listfile.feature +223 -0
  205. data/vendor/behave/features/runner.hook_errors.feature +382 -0
  206. data/vendor/behave/features/runner.multiple_formatters.feature +285 -0
  207. data/vendor/behave/features/runner.scenario_autoretry.feature +131 -0
  208. data/vendor/behave/features/runner.select_files_by_regexp.example.feature +71 -0
  209. data/vendor/behave/features/runner.select_files_by_regexp.feature +84 -0
  210. data/vendor/behave/features/runner.select_scenarios_by_file_location.feature +403 -0
  211. data/vendor/behave/features/runner.select_scenarios_by_name.feature +289 -0
  212. data/vendor/behave/features/runner.select_scenarios_by_tag.feature +225 -0
  213. data/vendor/behave/features/runner.stop_after_failure.feature +122 -0
  214. data/vendor/behave/features/runner.tag_logic.feature +67 -0
  215. data/vendor/behave/features/runner.unknown_formatter.feature +23 -0
  216. data/vendor/behave/features/runner.use_stage_implementations.feature +126 -0
  217. data/vendor/behave/features/scenario.description.feature +171 -0
  218. data/vendor/behave/features/scenario.exclude_from_run.feature +217 -0
  219. data/vendor/behave/features/scenario_outline.basics.feature +100 -0
  220. data/vendor/behave/features/scenario_outline.improved.feature +177 -0
  221. data/vendor/behave/features/scenario_outline.name_annotation.feature +157 -0
  222. data/vendor/behave/features/scenario_outline.parametrized.feature +401 -0
  223. data/vendor/behave/features/scenario_outline.tagged_examples.feature +118 -0
  224. data/vendor/behave/features/step.async_steps.feature +225 -0
  225. data/vendor/behave/features/step.duplicated_step.feature +106 -0
  226. data/vendor/behave/features/step.execute_steps.feature +59 -0
  227. data/vendor/behave/features/step.execute_steps.with_table.feature +65 -0
  228. data/vendor/behave/features/step.import_other_step_module.feature +103 -0
  229. data/vendor/behave/features/step.pending_steps.feature +128 -0
  230. data/vendor/behave/features/step.undefined_steps.feature +307 -0
  231. data/vendor/behave/features/step.use_step_library.feature +44 -0
  232. data/vendor/behave/features/step_dialect.generic_steps.feature +189 -0
  233. data/vendor/behave/features/step_dialect.given_when_then.feature +89 -0
  234. data/vendor/behave/features/step_param.builtin_types.with_float.feature +239 -0
  235. data/vendor/behave/features/step_param.builtin_types.with_integer.feature +305 -0
  236. data/vendor/behave/features/step_param.custom_types.feature +134 -0
  237. data/vendor/behave/features/steps/behave_active_tags_steps.py +86 -0
  238. data/vendor/behave/features/steps/behave_context_steps.py +67 -0
  239. data/vendor/behave/features/steps/behave_model_tag_logic_steps.py +105 -0
  240. data/vendor/behave/features/steps/behave_model_util.py +105 -0
  241. data/vendor/behave/features/steps/behave_select_files_steps.py +83 -0
  242. data/vendor/behave/features/steps/behave_tag_expression_steps.py +166 -0
  243. data/vendor/behave/features/steps/behave_undefined_steps.py +101 -0
  244. data/vendor/behave/features/steps/use_steplib_behave4cmd.py +12 -0
  245. data/vendor/behave/features/summary.undefined_steps.feature +114 -0
  246. data/vendor/behave/features/tags.active_tags.feature +385 -0
  247. data/vendor/behave/features/tags.default_tags.feature +104 -0
  248. data/vendor/behave/features/tags.tag_expression.feature +105 -0
  249. data/vendor/behave/features/userdata.feature +331 -0
  250. data/vendor/behave/invoke.yaml +21 -0
  251. data/vendor/behave/issue.features/README.txt +17 -0
  252. data/vendor/behave/issue.features/environment.py +97 -0
  253. data/vendor/behave/issue.features/issue0030.feature +21 -0
  254. data/vendor/behave/issue.features/issue0031.feature +16 -0
  255. data/vendor/behave/issue.features/issue0032.feature +28 -0
  256. data/vendor/behave/issue.features/issue0035.feature +74 -0
  257. data/vendor/behave/issue.features/issue0040.feature +154 -0
  258. data/vendor/behave/issue.features/issue0041.feature +135 -0
  259. data/vendor/behave/issue.features/issue0042.feature +230 -0
  260. data/vendor/behave/issue.features/issue0044.feature +51 -0
  261. data/vendor/behave/issue.features/issue0046.feature +77 -0
  262. data/vendor/behave/issue.features/issue0052.feature +66 -0
  263. data/vendor/behave/issue.features/issue0059.feature +29 -0
  264. data/vendor/behave/issue.features/issue0063.feature +102 -0
  265. data/vendor/behave/issue.features/issue0064.feature +97 -0
  266. data/vendor/behave/issue.features/issue0065.feature +18 -0
  267. data/vendor/behave/issue.features/issue0066.feature +80 -0
  268. data/vendor/behave/issue.features/issue0067.feature +90 -0
  269. data/vendor/behave/issue.features/issue0069.feature +64 -0
  270. data/vendor/behave/issue.features/issue0072.feature +32 -0
  271. data/vendor/behave/issue.features/issue0073.feature +228 -0
  272. data/vendor/behave/issue.features/issue0075.feature +18 -0
  273. data/vendor/behave/issue.features/issue0077.feature +89 -0
  274. data/vendor/behave/issue.features/issue0080.feature +49 -0
  275. data/vendor/behave/issue.features/issue0081.feature +138 -0
  276. data/vendor/behave/issue.features/issue0083.feature +69 -0
  277. data/vendor/behave/issue.features/issue0084.feature +69 -0
  278. data/vendor/behave/issue.features/issue0085.feature +119 -0
  279. data/vendor/behave/issue.features/issue0092.feature +66 -0
  280. data/vendor/behave/issue.features/issue0096.feature +173 -0
  281. data/vendor/behave/issue.features/issue0099.feature +130 -0
  282. data/vendor/behave/issue.features/issue0109.feature +60 -0
  283. data/vendor/behave/issue.features/issue0111.feature +53 -0
  284. data/vendor/behave/issue.features/issue0112.feature +64 -0
  285. data/vendor/behave/issue.features/issue0114.feature +118 -0
  286. data/vendor/behave/issue.features/issue0116.feature +71 -0
  287. data/vendor/behave/issue.features/issue0125.feature +49 -0
  288. data/vendor/behave/issue.features/issue0127.feature +64 -0
  289. data/vendor/behave/issue.features/issue0139.feature +67 -0
  290. data/vendor/behave/issue.features/issue0142.feature +37 -0
  291. data/vendor/behave/issue.features/issue0143.feature +54 -0
  292. data/vendor/behave/issue.features/issue0145.feature +63 -0
  293. data/vendor/behave/issue.features/issue0148.feature +105 -0
  294. data/vendor/behave/issue.features/issue0152.feature +52 -0
  295. data/vendor/behave/issue.features/issue0159.feature +74 -0
  296. data/vendor/behave/issue.features/issue0162.feature +86 -0
  297. data/vendor/behave/issue.features/issue0171.feature +16 -0
  298. data/vendor/behave/issue.features/issue0172.feature +51 -0
  299. data/vendor/behave/issue.features/issue0175.feature +91 -0
  300. data/vendor/behave/issue.features/issue0177.feature +40 -0
  301. data/vendor/behave/issue.features/issue0181.feature +36 -0
  302. data/vendor/behave/issue.features/issue0184.feature +144 -0
  303. data/vendor/behave/issue.features/issue0186.feature +12 -0
  304. data/vendor/behave/issue.features/issue0188.feature +60 -0
  305. data/vendor/behave/issue.features/issue0191.feature +178 -0
  306. data/vendor/behave/issue.features/issue0194.feature +215 -0
  307. data/vendor/behave/issue.features/issue0197.feature +11 -0
  308. data/vendor/behave/issue.features/issue0216.feature +129 -0
  309. data/vendor/behave/issue.features/issue0226.feature +51 -0
  310. data/vendor/behave/issue.features/issue0228.feature +41 -0
  311. data/vendor/behave/issue.features/issue0230.feature +46 -0
  312. data/vendor/behave/issue.features/issue0231.feature +77 -0
  313. data/vendor/behave/issue.features/issue0238.feature +52 -0
  314. data/vendor/behave/issue.features/issue0251.feature +15 -0
  315. data/vendor/behave/issue.features/issue0280.feature +118 -0
  316. data/vendor/behave/issue.features/issue0288.feature +95 -0
  317. data/vendor/behave/issue.features/issue0300.feature +49 -0
  318. data/vendor/behave/issue.features/issue0302.feature +91 -0
  319. data/vendor/behave/issue.features/issue0309.feature +52 -0
  320. data/vendor/behave/issue.features/issue0330.feature +124 -0
  321. data/vendor/behave/issue.features/issue0349.feature +9 -0
  322. data/vendor/behave/issue.features/issue0361.feature +79 -0
  323. data/vendor/behave/issue.features/issue0383.feature +76 -0
  324. data/vendor/behave/issue.features/issue0384.feature +103 -0
  325. data/vendor/behave/issue.features/issue0385.feature +109 -0
  326. data/vendor/behave/issue.features/issue0424.feature +66 -0
  327. data/vendor/behave/issue.features/issue0446.feature +116 -0
  328. data/vendor/behave/issue.features/issue0449.feature +42 -0
  329. data/vendor/behave/issue.features/issue0453.feature +42 -0
  330. data/vendor/behave/issue.features/issue0457.feature +65 -0
  331. data/vendor/behave/issue.features/issue0462.feature +38 -0
  332. data/vendor/behave/issue.features/issue0476.feature +39 -0
  333. data/vendor/behave/issue.features/issue0487.feature +92 -0
  334. data/vendor/behave/issue.features/issue0506.feature +77 -0
  335. data/vendor/behave/issue.features/issue0510.feature +51 -0
  336. data/vendor/behave/issue.features/requirements.txt +12 -0
  337. data/vendor/behave/issue.features/steps/ansi_steps.py +20 -0
  338. data/vendor/behave/issue.features/steps/behave_hooks_steps.py +10 -0
  339. data/vendor/behave/issue.features/steps/use_steplib_behave4cmd.py +13 -0
  340. data/vendor/behave/more.features/formatter.json.validate_output.feature +37 -0
  341. data/vendor/behave/more.features/steps/tutorial_steps.py +16 -0
  342. data/vendor/behave/more.features/steps/use_steplib_behave4cmd.py +7 -0
  343. data/vendor/behave/more.features/tutorial.feature +6 -0
  344. data/vendor/behave/py.requirements/README.txt +5 -0
  345. data/vendor/behave/py.requirements/all.txt +16 -0
  346. data/vendor/behave/py.requirements/basic.txt +21 -0
  347. data/vendor/behave/py.requirements/develop.txt +28 -0
  348. data/vendor/behave/py.requirements/docs.txt +6 -0
  349. data/vendor/behave/py.requirements/json.txt +7 -0
  350. data/vendor/behave/py.requirements/more_py26.txt +8 -0
  351. data/vendor/behave/py.requirements/testing.txt +10 -0
  352. data/vendor/behave/pytest.ini +24 -0
  353. data/vendor/behave/setup.cfg +29 -0
  354. data/vendor/behave/setup.py +118 -0
  355. data/vendor/behave/setuptools_behave.py +130 -0
  356. data/vendor/behave/tasks/__behave.py +45 -0
  357. data/vendor/behave/tasks/__init__.py +55 -0
  358. data/vendor/behave/tasks/__main__.py +70 -0
  359. data/vendor/behave/tasks/_setup.py +135 -0
  360. data/vendor/behave/tasks/_vendor/README.rst +35 -0
  361. data/vendor/behave/tasks/_vendor/invoke.zip +0 -0
  362. data/vendor/behave/tasks/_vendor/path.py +1725 -0
  363. data/vendor/behave/tasks/_vendor/pathlib.py +1280 -0
  364. data/vendor/behave/tasks/_vendor/six.py +868 -0
  365. data/vendor/behave/tasks/clean.py +246 -0
  366. data/vendor/behave/tasks/docs.py +97 -0
  367. data/vendor/behave/tasks/requirements.txt +17 -0
  368. data/vendor/behave/tasks/test.py +192 -0
  369. data/vendor/behave/test/__init__.py +0 -0
  370. data/vendor/behave/test/_importer_candidate.py +3 -0
  371. data/vendor/behave/test/reporters/__init__.py +0 -0
  372. data/vendor/behave/test/reporters/test_summary.py +240 -0
  373. data/vendor/behave/test/test_ansi_escapes.py +73 -0
  374. data/vendor/behave/test/test_configuration.py +172 -0
  375. data/vendor/behave/test/test_formatter.py +265 -0
  376. data/vendor/behave/test/test_formatter_progress.py +39 -0
  377. data/vendor/behave/test/test_formatter_rerun.py +97 -0
  378. data/vendor/behave/test/test_formatter_tags.py +57 -0
  379. data/vendor/behave/test/test_importer.py +151 -0
  380. data/vendor/behave/test/test_log_capture.py +29 -0
  381. data/vendor/behave/test/test_matchers.py +236 -0
  382. data/vendor/behave/test/test_model.py +871 -0
  383. data/vendor/behave/test/test_parser.py +1590 -0
  384. data/vendor/behave/test/test_runner.py +1074 -0
  385. data/vendor/behave/test/test_step_registry.py +96 -0
  386. data/vendor/behave/test/test_tag_expression.py +506 -0
  387. data/vendor/behave/test/test_tag_expression2.py +462 -0
  388. data/vendor/behave/test/test_tag_matcher.py +729 -0
  389. data/vendor/behave/test/test_userdata.py +184 -0
  390. data/vendor/behave/tests/README.txt +12 -0
  391. data/vendor/behave/tests/__init__.py +0 -0
  392. data/vendor/behave/tests/api/__ONLY_PY34_or_newer.txt +0 -0
  393. data/vendor/behave/tests/api/__init__.py +0 -0
  394. data/vendor/behave/tests/api/_test_async_step34.py +130 -0
  395. data/vendor/behave/tests/api/_test_async_step35.py +75 -0
  396. data/vendor/behave/tests/api/test_async_step.py +18 -0
  397. data/vendor/behave/tests/api/testing_support.py +94 -0
  398. data/vendor/behave/tests/api/testing_support_async.py +21 -0
  399. data/vendor/behave/tests/issues/test_issue0336.py +66 -0
  400. data/vendor/behave/tests/issues/test_issue0449.py +55 -0
  401. data/vendor/behave/tests/issues/test_issue0453.py +62 -0
  402. data/vendor/behave/tests/issues/test_issue0458.py +54 -0
  403. data/vendor/behave/tests/issues/test_issue0495.py +65 -0
  404. data/vendor/behave/tests/unit/__init__.py +0 -0
  405. data/vendor/behave/tests/unit/test_behave4cmd_command_shell_proc.py +135 -0
  406. data/vendor/behave/tests/unit/test_capture.py +280 -0
  407. data/vendor/behave/tests/unit/test_model_core.py +56 -0
  408. data/vendor/behave/tests/unit/test_textutil.py +267 -0
  409. data/vendor/behave/tools/test-features/background.feature +9 -0
  410. data/vendor/behave/tools/test-features/environment.py +8 -0
  411. data/vendor/behave/tools/test-features/french.feature +11 -0
  412. data/vendor/behave/tools/test-features/outline.feature +39 -0
  413. data/vendor/behave/tools/test-features/parse.feature +10 -0
  414. data/vendor/behave/tools/test-features/step-data.feature +60 -0
  415. data/vendor/behave/tools/test-features/steps/steps.py +120 -0
  416. data/vendor/behave/tools/test-features/tags.feature +18 -0
  417. data/vendor/behave/tox.ini +159 -0
  418. metadata +562 -0
@@ -0,0 +1,289 @@
1
+ @sequential
2
+ Feature: Select named scenarios to run
3
+
4
+ As a tester
5
+ I want to select a subset of all scenarios
6
+ By using their name or parts of the scenario name.
7
+
8
+ . SPECIFICATION: When --name option is provided
9
+ . * Name selection is applied only to scenarios (currently)
10
+ . * A scenario is selected when scenario name part matches one of the provided names
11
+ . * Regular expressions can be used to match parts
12
+ . * If a scenario is not selected, it should be marked as skipped
13
+
14
+
15
+ @setup
16
+ Scenario: Test Setup
17
+ Given a new working directory
18
+ And a file named "features/steps/steps.py" with:
19
+ """
20
+ from behave import step
21
+
22
+ @step('a step passes')
23
+ def step_passes(context):
24
+ pass
25
+ """
26
+ And a file named "features/alice.feature" with:
27
+ """
28
+ Feature: Alice
29
+ Scenario: Alice in Wonderland
30
+ Given a step passes
31
+
32
+ Scenario: Alice in Florida
33
+ When a step passes
34
+
35
+ Scenario: Alice in Antarctica
36
+ Then a step passes
37
+ """
38
+ And a file named "features/bob.feature" with:
39
+ """
40
+ Feature: Bob
41
+ Scenario: Bob in Berlin
42
+ Given a step passes
43
+
44
+ Scenario: Bob in Florida
45
+ When a step passes
46
+
47
+ Scenario: Alice and Bob
48
+ Then a step passes
49
+ """
50
+ And a file named "behave.ini" with:
51
+ """
52
+ [behave]
53
+ show_skipped = false
54
+ show_timings = false
55
+ """
56
+
57
+ Scenario: Select scenarios with name="Alice" and inspect list
58
+ When I run "behave -f plain --name="Alice" --dry-run features/"
59
+ Then it should pass with:
60
+ """
61
+ 0 features passed, 0 failed, 0 skipped, 2 untested
62
+ 0 scenarios passed, 0 failed, 2 skipped, 4 untested
63
+ 0 steps passed, 0 failed, 2 skipped, 0 undefined, 4 untested
64
+ """
65
+ And the command output should contain:
66
+ """
67
+ Feature: Alice
68
+ Scenario: Alice in Wonderland
69
+ Given a step passes ... untested
70
+ Scenario: Alice in Florida
71
+ When a step passes ... untested
72
+ Scenario: Alice in Antarctica
73
+ Then a step passes ... untested
74
+
75
+ Feature: Bob
76
+ Scenario: Alice and Bob
77
+ Then a step passes ... untested
78
+ """
79
+
80
+ Scenario: Select scenarios with name="Alice" and run them
81
+ When I run "behave -f plain -T --name="Alice" features/"
82
+ Then it should pass with:
83
+ """
84
+ 2 features passed, 0 failed, 0 skipped
85
+ 4 scenarios passed, 0 failed, 2 skipped
86
+ 4 steps passed, 0 failed, 2 skipped, 0 undefined
87
+ """
88
+ And the command output should contain:
89
+ """
90
+ Feature: Alice
91
+ Scenario: Alice in Wonderland
92
+ Given a step passes ... passed
93
+ Scenario: Alice in Florida
94
+ When a step passes ... passed
95
+ Scenario: Alice in Antarctica
96
+ Then a step passes ... passed
97
+
98
+ Feature: Bob
99
+ Scenario: Alice and Bob
100
+ Then a step passes ... passed
101
+ """
102
+
103
+ Scenario: Select scenarios with name="Bob"
104
+ When I run "behave -f plain --name="Bob" --dry-run features/"
105
+ Then it should pass with:
106
+ """
107
+ 0 features passed, 0 failed, 1 skipped, 1 untested
108
+ 0 scenarios passed, 0 failed, 3 skipped, 3 untested
109
+ 0 steps passed, 0 failed, 3 skipped, 0 undefined, 3 untested
110
+ """
111
+ And the command output should contain:
112
+ """
113
+ Feature: Bob
114
+ Scenario: Bob in Berlin
115
+ Given a step passes ... untested
116
+ Scenario: Bob in Florida
117
+ When a step passes ... untested
118
+ Scenario: Alice and Bob
119
+ Then a step passes ... untested
120
+ """
121
+
122
+ Scenario: Select scenarios with name="Florida"
123
+ When I run "behave -f plain --name="Florida" --dry-run features/"
124
+ Then it should pass with:
125
+ """
126
+ 0 features passed, 0 failed, 0 skipped, 2 untested
127
+ 0 scenarios passed, 0 failed, 4 skipped, 2 untested
128
+ 0 steps passed, 0 failed, 4 skipped, 0 undefined, 2 untested
129
+ """
130
+ And the command output should contain:
131
+ """
132
+ Feature: Alice
133
+ Scenario: Alice in Florida
134
+ When a step passes ... untested
135
+
136
+ Feature: Bob
137
+ Scenario: Bob in Florida
138
+ When a step passes ... untested
139
+ """
140
+
141
+ Scenario: Select scenarios with name that consists of multiple words
142
+ When I run "behave -f plain --name="Alice and Bob" --dry-run features/"
143
+ Then it should pass with:
144
+ """
145
+ 0 features passed, 0 failed, 1 skipped, 1 untested
146
+ 0 scenarios passed, 0 failed, 5 skipped, 1 untested
147
+ """
148
+ And the command output should contain:
149
+ """
150
+ Feature: Bob
151
+ Scenario: Alice and Bob
152
+ """
153
+
154
+ Scenario: Select scenarios by using two names
155
+ When I run "behave -f plain --name="Alice" --name="Florida" --dry-run features/"
156
+ Then it should pass with:
157
+ """
158
+ 0 features passed, 0 failed, 0 skipped, 2 untested
159
+ 0 scenarios passed, 0 failed, 1 skipped, 5 untested
160
+ 0 steps passed, 0 failed, 1 skipped, 0 undefined, 5 untested
161
+ """
162
+ And the command output should contain:
163
+ """
164
+ Feature: Alice
165
+ Scenario: Alice in Wonderland
166
+ Given a step passes ... untested
167
+ Scenario: Alice in Florida
168
+ When a step passes ... untested
169
+ Scenario: Alice in Antarctica
170
+ Then a step passes ... untested
171
+
172
+ Feature: Bob
173
+ Scenario: Bob in Florida
174
+ When a step passes ... untested
175
+ Scenario: Alice and Bob
176
+ Then a step passes ... untested
177
+ """
178
+
179
+ Scenario: Select scenarios by using a regular expression
180
+ When I run "behave -f plain --name="Alice in .*" --dry-run features/"
181
+ Then it should pass with:
182
+ """
183
+ 0 features passed, 0 failed, 1 skipped, 1 untested
184
+ 0 scenarios passed, 0 failed, 3 skipped, 3 untested
185
+ """
186
+ And the command output should contain:
187
+ """
188
+ Feature: Alice
189
+ Scenario: Alice in Wonderland
190
+ Given a step passes ... untested
191
+ Scenario: Alice in Florida
192
+ When a step passes ... untested
193
+ Scenario: Alice in Antarctica
194
+ Then a step passes ... untested
195
+ """
196
+ But the command output should not contain:
197
+ """
198
+ Scenario: Bob in
199
+ """
200
+
201
+ @not.with_os=win32
202
+ Scenario: Exclude scenarios by using a regular expression (not-pattern)
203
+
204
+ Select all scenarios that do not start with "Alice" in its name.
205
+ Exclude all scenarios that start with "Alice" in its name.
206
+ NOTE: Seems to work only for not-start-with idiom.
207
+
208
+ When I run "behave -f plain --name='^(?!Alice)' --dry-run features/"
209
+ Then it should pass with:
210
+ """
211
+ 0 features passed, 0 failed, 1 skipped, 1 untested
212
+ 0 scenarios passed, 0 failed, 4 skipped, 2 untested
213
+ """
214
+ And the command output should contain:
215
+ """
216
+ Feature: Bob
217
+ Scenario: Bob in Berlin
218
+ Given a step passes ... untested
219
+ Scenario: Bob in Florida
220
+ When a step passes ... untested
221
+ """
222
+ But the command output should not contain:
223
+ """
224
+ Scenario: Alice
225
+ """
226
+
227
+ Scenario: Select scenarios by using another regular expression
228
+ When I run "behave -f plain --name=".* in .*" --dry-run features/"
229
+ Then it should pass with:
230
+ """
231
+ 0 features passed, 0 failed, 0 skipped, 2 untested
232
+ 0 scenarios passed, 0 failed, 1 skipped, 5 untested
233
+ """
234
+ And the command output should contain:
235
+ """
236
+ Feature: Alice
237
+ Scenario: Alice in Wonderland
238
+ Given a step passes ... untested
239
+ Scenario: Alice in Florida
240
+ When a step passes ... untested
241
+ Scenario: Alice in Antarctica
242
+ Then a step passes ... untested
243
+
244
+ Feature: Bob
245
+ Scenario: Bob in Berlin
246
+ Given a step passes ... untested
247
+ Scenario: Bob in Florida
248
+ When a step passes ... untested
249
+ """
250
+ But the command output should not contain:
251
+ """
252
+ Scenario: Alice and Bob
253
+ """
254
+
255
+ Scenario: Select scenarios by using two regular expressions
256
+ When I run "behave -f plain --name="Alice in .*" --name="Bob in .*" --dry-run features/"
257
+ Then it should pass with:
258
+ """
259
+ 0 features passed, 0 failed, 0 skipped, 2 untested
260
+ 0 scenarios passed, 0 failed, 1 skipped, 5 untested
261
+ """
262
+ And the command output should contain:
263
+ """
264
+ Feature: Alice
265
+ Scenario: Alice in Wonderland
266
+ Given a step passes ... untested
267
+ Scenario: Alice in Florida
268
+ When a step passes ... untested
269
+ Scenario: Alice in Antarctica
270
+ Then a step passes ... untested
271
+
272
+ Feature: Bob
273
+ Scenario: Bob in Berlin
274
+ Given a step passes ... untested
275
+ Scenario: Bob in Florida
276
+ When a step passes ... untested
277
+ """
278
+ But the command output should not contain:
279
+ """
280
+ Scenario: Alice and Bob
281
+ """
282
+
283
+ Scenario: Select scenarios by using an unknown/unused name
284
+ When I run "behave -f plain --name="UNKNOWN" --dry-run features/"
285
+ Then it should pass with:
286
+ """
287
+ 0 features passed, 0 failed, 2 skipped
288
+ 0 scenarios passed, 0 failed, 6 skipped
289
+ """
@@ -0,0 +1,225 @@
1
+ @sequential
2
+ Feature: Select scenarios by using tags
3
+
4
+ As a tester
5
+ I want to select a subset of all scenarios by using tags
6
+ (for selecting/including them or excluding them)
7
+ So that I run only a subset of scenarios.
8
+
9
+ . RELATED:
10
+ . * runner.tag_logic.feature
11
+
12
+
13
+ @setup
14
+ Scenario: Feature Setup
15
+ Given a new working directory
16
+ And a file named "behave.ini" with:
17
+ """
18
+ [behave]
19
+ default_format = plain
20
+ show_skipped = false
21
+ show_timings = false
22
+ """
23
+ And a file named "features/steps/steps.py" with:
24
+ """
25
+ from behave import step
26
+
27
+ @step('{word:w} step passes')
28
+ def step_passes(context, word):
29
+ pass
30
+ """
31
+ And a file named "features/alice.feature" with:
32
+ """
33
+ Feature: Alice
34
+ @foo
35
+ Scenario: Alice in Wonderland
36
+ Given a step passes
37
+
38
+ @foo @bar
39
+ Scenario: Alice in Florida
40
+ When hotter step passes
41
+
42
+ @bar
43
+ Scenario: Alice in Antarctica
44
+ Then colder step passes
45
+ """
46
+ And a file named "features/bob.feature" with:
47
+ """
48
+ Feature: Bob
49
+ @bar
50
+ Scenario: Bob in Berlin
51
+ Given beautiful step passes
52
+
53
+ @foo
54
+ Scenario: Bob in Florida
55
+ When freaky step passes
56
+
57
+ Scenario: Alice and Bob
58
+ Then another step passes
59
+ """
60
+
61
+
62
+ Scenario: Select scenarios with tag=@foo (inclusive)
63
+
64
+ TAG-LOGIC: @foo
65
+
66
+ When I run "behave -f plain --tags=foo --no-skipped --no-timings features/"
67
+ Then it should pass with:
68
+ """
69
+ 2 features passed, 0 failed, 0 skipped
70
+ 3 scenarios passed, 0 failed, 3 skipped
71
+ 3 steps passed, 0 failed, 3 skipped, 0 undefined
72
+ """
73
+ And the command output should contain:
74
+ """
75
+ Feature: Alice
76
+ Scenario: Alice in Wonderland
77
+ Given a step passes ... passed
78
+
79
+ Scenario: Alice in Florida
80
+ When hotter step passes ... passed
81
+
82
+ Feature: Bob
83
+ Scenario: Bob in Florida
84
+ When freaky step passes ... passed
85
+ """
86
+
87
+ Scenario: Select scenarios without tag=@foo (exclusive)
88
+
89
+ TAG-LOGIC: not @foo
90
+
91
+ Use '-' (minus-sign) or '~' (tilde) in front of the tag-name
92
+ to negate the tag-selection (excluding tags mode).
93
+
94
+ When I run "behave --tags=~@foo features/"
95
+ Then it should pass with:
96
+ """
97
+ 2 features passed, 0 failed, 0 skipped
98
+ 3 scenarios passed, 0 failed, 3 skipped
99
+ 3 steps passed, 0 failed, 3 skipped, 0 undefined
100
+ """
101
+ And the command output should contain:
102
+ """
103
+ Feature: Alice
104
+ Scenario: Alice in Antarctica
105
+ Then colder step passes ... passed
106
+
107
+ Feature: Bob
108
+ Scenario: Bob in Berlin
109
+ Given beautiful step passes ... passed
110
+
111
+ Scenario: Alice and Bob
112
+ Then another step passes ... passed
113
+ """
114
+
115
+ Scenario: Select scenarios with @foo and @bar tags (both)
116
+
117
+ TAG-LOGIC: @foo and @bar
118
+
119
+ When I run "behave --tags=@foo --tags=@bar features/"
120
+ Then it should pass with:
121
+ """
122
+ 1 feature passed, 0 failed, 1 skipped
123
+ 1 scenario passed, 0 failed, 5 skipped
124
+ 1 step passed, 0 failed, 5 skipped, 0 undefined
125
+ """
126
+ And the command output should contain:
127
+ """
128
+ Feature: Alice
129
+ Scenario: Alice in Florida
130
+ When hotter step passes
131
+ """
132
+ And note that "only scenario 'Alice in Florida' has both tags"
133
+
134
+
135
+ Scenario: Select scenarios without @foo tag and without @bar tag
136
+
137
+ TAG-LOGIC: not @foo and not @bar
138
+
139
+ When I run "behave --tags=-@foo --tags=-@bar features/"
140
+ Then it should pass with:
141
+ """
142
+ 1 feature passed, 0 failed, 1 skipped
143
+ 1 scenario passed, 0 failed, 5 skipped
144
+ 1 step passed, 0 failed, 5 skipped, 0 undefined
145
+ """
146
+ And the command output should contain:
147
+ """
148
+ Feature: Bob
149
+ Scenario: Alice and Bob
150
+ Then another step passes
151
+ """
152
+ And note that "only scenario 'Alice and Bob' has neither tag"
153
+
154
+
155
+ Scenario: Select scenarios with @foo tag, but exclude with @bar tag
156
+
157
+ TAG-LOGIC: @foo and not @bar
158
+
159
+ When I run "behave --tags=@foo --tags=-@bar features/"
160
+ Then it should pass with:
161
+ """
162
+ 2 features passed, 0 failed, 0 skipped
163
+ 2 scenarios passed, 0 failed, 4 skipped
164
+ 2 steps passed, 0 failed, 4 skipped, 0 undefined
165
+ """
166
+ And the command output should contain:
167
+ """
168
+ Feature: Alice
169
+ Scenario: Alice in Wonderland
170
+ Given a step passes ... passed
171
+
172
+ Feature: Bob
173
+ Scenario: Bob in Florida
174
+ When freaky step passes ... passed
175
+ """
176
+ But note that "'Alice in Florida' is excluded because it has also @bar"
177
+
178
+
179
+ Scenario: Select scenarios with @bar tag, but exclude with @foo tag
180
+
181
+ TAG-LOGIC: not @foo and @bar
182
+
183
+ When I run "behave --tags=-@foo --tags=@bar features/"
184
+ Then it should pass with:
185
+ """
186
+ 2 features passed, 0 failed, 0 skipped
187
+ 2 scenarios passed, 0 failed, 4 skipped
188
+ 2 steps passed, 0 failed, 4 skipped, 0 undefined
189
+ """
190
+ And the command output should contain:
191
+ """
192
+ Feature: Alice
193
+ Scenario: Alice in Antarctica
194
+ Then colder step passes ... passed
195
+
196
+ Feature: Bob
197
+ Scenario: Bob in Berlin
198
+ Given beautiful step passes ... passed
199
+ """
200
+ But note that "'Alice in Florida' is excluded because it has also @bar"
201
+
202
+
203
+ Scenario: Select scenarios with tag=@foo in dry-run mode (inclusive)
204
+
205
+ Ensure that tag-selection works also in dry-run mode.
206
+
207
+ When I run "behave --tags=@foo --dry-run features/"
208
+ Then it should pass with:
209
+ """
210
+ 0 features passed, 0 failed, 0 skipped, 2 untested
211
+ 0 scenarios passed, 0 failed, 3 skipped, 3 untested
212
+ 0 steps passed, 0 failed, 3 skipped, 0 undefined, 3 untested
213
+ """
214
+ And the command output should contain:
215
+ """
216
+ Feature: Alice
217
+ Scenario: Alice in Wonderland
218
+ Given a step passes ... untested
219
+ Scenario: Alice in Florida
220
+ When hotter step passes ... untested
221
+
222
+ Feature: Bob
223
+ Scenario: Bob in Florida
224
+ When freaky step passes ... untested
225
+ """