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.
- checksums.yaml +7 -0
- data/.cane +0 -0
- data/.gitignore +17 -0
- data/.tailor +4 -0
- data/.travis.yml +11 -0
- data/CHANGELOG.md +3 -0
- data/Gemfile +3 -0
- data/LICENSE +15 -0
- data/README.md +41 -0
- data/Rakefile +68 -0
- data/busser-behave.gemspec +30 -0
- data/features/plugin_install_command.feature +11 -0
- data/features/plugin_list_command.feature +8 -0
- data/features/support/env.rb +13 -0
- data/features/test_command.feature +31 -0
- data/lib/busser/behave/version.rb +26 -0
- data/lib/busser/runner_plugin/behave.rb +37 -0
- data/vendor/behave/CHANGES.rst +483 -0
- data/vendor/behave/LICENSE +23 -0
- data/vendor/behave/MANIFEST.in +37 -0
- data/vendor/behave/PROJECT_INFO.rst +21 -0
- data/vendor/behave/README.rst +112 -0
- data/vendor/behave/VERSION.txt +1 -0
- data/vendor/behave/behave.ini +22 -0
- data/vendor/behave/behave/__init__.py +30 -0
- data/vendor/behave/behave/__main__.py +187 -0
- data/vendor/behave/behave/_stepimport.py +185 -0
- data/vendor/behave/behave/_types.py +134 -0
- data/vendor/behave/behave/api/__init__.py +7 -0
- data/vendor/behave/behave/api/async_step.py +283 -0
- data/vendor/behave/behave/capture.py +227 -0
- data/vendor/behave/behave/compat/__init__.py +5 -0
- data/vendor/behave/behave/compat/collections.py +20 -0
- data/vendor/behave/behave/configuration.py +788 -0
- data/vendor/behave/behave/contrib/__init__.py +0 -0
- data/vendor/behave/behave/contrib/scenario_autoretry.py +73 -0
- data/vendor/behave/behave/formatter/__init__.py +12 -0
- data/vendor/behave/behave/formatter/_builtins.py +39 -0
- data/vendor/behave/behave/formatter/_registry.py +135 -0
- data/vendor/behave/behave/formatter/ansi_escapes.py +91 -0
- data/vendor/behave/behave/formatter/base.py +200 -0
- data/vendor/behave/behave/formatter/formatters.py +57 -0
- data/vendor/behave/behave/formatter/json.py +253 -0
- data/vendor/behave/behave/formatter/null.py +12 -0
- data/vendor/behave/behave/formatter/plain.py +158 -0
- data/vendor/behave/behave/formatter/pretty.py +351 -0
- data/vendor/behave/behave/formatter/progress.py +287 -0
- data/vendor/behave/behave/formatter/rerun.py +114 -0
- data/vendor/behave/behave/formatter/sphinx_steps.py +372 -0
- data/vendor/behave/behave/formatter/sphinx_util.py +118 -0
- data/vendor/behave/behave/formatter/steps.py +497 -0
- data/vendor/behave/behave/formatter/tags.py +178 -0
- data/vendor/behave/behave/i18n.py +614 -0
- data/vendor/behave/behave/importer.py +102 -0
- data/vendor/behave/behave/json_parser.py +264 -0
- data/vendor/behave/behave/log_capture.py +233 -0
- data/vendor/behave/behave/matchers.py +402 -0
- data/vendor/behave/behave/model.py +1737 -0
- data/vendor/behave/behave/model_core.py +416 -0
- data/vendor/behave/behave/model_describe.py +105 -0
- data/vendor/behave/behave/parser.py +615 -0
- data/vendor/behave/behave/reporter/__init__.py +0 -0
- data/vendor/behave/behave/reporter/base.py +45 -0
- data/vendor/behave/behave/reporter/junit.py +473 -0
- data/vendor/behave/behave/reporter/summary.py +94 -0
- data/vendor/behave/behave/runner.py +753 -0
- data/vendor/behave/behave/runner_util.py +417 -0
- data/vendor/behave/behave/step_registry.py +112 -0
- data/vendor/behave/behave/tag_expression.py +111 -0
- data/vendor/behave/behave/tag_matcher.py +465 -0
- data/vendor/behave/behave/textutil.py +137 -0
- data/vendor/behave/behave/userdata.py +130 -0
- data/vendor/behave/behave4cmd0/__all_steps__.py +12 -0
- data/vendor/behave/behave4cmd0/__init__.py +5 -0
- data/vendor/behave/behave4cmd0/__setup.py +11 -0
- data/vendor/behave/behave4cmd0/command_shell.py +216 -0
- data/vendor/behave/behave4cmd0/command_shell_proc.py +256 -0
- data/vendor/behave/behave4cmd0/command_steps.py +532 -0
- data/vendor/behave/behave4cmd0/command_util.py +147 -0
- data/vendor/behave/behave4cmd0/failing_steps.py +49 -0
- data/vendor/behave/behave4cmd0/log/__init__.py +1 -0
- data/vendor/behave/behave4cmd0/log/steps.py +395 -0
- data/vendor/behave/behave4cmd0/note_steps.py +29 -0
- data/vendor/behave/behave4cmd0/passing_steps.py +36 -0
- data/vendor/behave/behave4cmd0/pathutil.py +146 -0
- data/vendor/behave/behave4cmd0/setup_command_shell.py +24 -0
- data/vendor/behave/behave4cmd0/textutil.py +304 -0
- data/vendor/behave/bin/behave +44 -0
- data/vendor/behave/bin/behave.cmd +10 -0
- data/vendor/behave/bin/behave.junit_filter.py +85 -0
- data/vendor/behave/bin/behave.step_durations.py +163 -0
- data/vendor/behave/bin/behave2cucumber_json.py +63 -0
- data/vendor/behave/bin/behave_cmd.py +44 -0
- data/vendor/behave/bin/convert_i18n_yaml.py +77 -0
- data/vendor/behave/bin/explore_platform_encoding.py +24 -0
- data/vendor/behave/bin/i18n.yml +621 -0
- data/vendor/behave/bin/invoke +8 -0
- data/vendor/behave/bin/invoke.cmd +9 -0
- data/vendor/behave/bin/json.format.py +167 -0
- data/vendor/behave/bin/jsonschema_validate.py +122 -0
- data/vendor/behave/bin/make_localpi.py +279 -0
- data/vendor/behave/bin/project_bootstrap.sh +30 -0
- data/vendor/behave/bin/toxcmd.py +270 -0
- data/vendor/behave/bin/toxcmd3.py +270 -0
- data/vendor/behave/conftest.py +27 -0
- data/vendor/behave/docs/Makefile +154 -0
- data/vendor/behave/docs/_static/agogo.css +501 -0
- data/vendor/behave/docs/_static/behave_logo.png +0 -0
- data/vendor/behave/docs/_static/behave_logo1.png +0 -0
- data/vendor/behave/docs/_static/behave_logo2.png +0 -0
- data/vendor/behave/docs/_static/behave_logo3.png +0 -0
- data/vendor/behave/docs/_themes/LICENSE +45 -0
- data/vendor/behave/docs/_themes/kr/layout.html +17 -0
- data/vendor/behave/docs/_themes/kr/relations.html +19 -0
- data/vendor/behave/docs/_themes/kr/static/flasky.css_t +480 -0
- data/vendor/behave/docs/_themes/kr/static/small_flask.css +90 -0
- data/vendor/behave/docs/_themes/kr/theme.conf +7 -0
- data/vendor/behave/docs/_themes/kr_small/layout.html +22 -0
- data/vendor/behave/docs/_themes/kr_small/static/flasky.css_t +287 -0
- data/vendor/behave/docs/_themes/kr_small/theme.conf +10 -0
- data/vendor/behave/docs/api.rst +408 -0
- data/vendor/behave/docs/appendix.rst +19 -0
- data/vendor/behave/docs/behave.rst +640 -0
- data/vendor/behave/docs/behave.rst-template +86 -0
- data/vendor/behave/docs/behave_ecosystem.rst +81 -0
- data/vendor/behave/docs/comparison.rst +85 -0
- data/vendor/behave/docs/conf.py +293 -0
- data/vendor/behave/docs/context_attributes.rst +66 -0
- data/vendor/behave/docs/django.rst +192 -0
- data/vendor/behave/docs/formatters.rst +61 -0
- data/vendor/behave/docs/gherkin.rst +673 -0
- data/vendor/behave/docs/index.rst +57 -0
- data/vendor/behave/docs/install.rst +60 -0
- data/vendor/behave/docs/more_info.rst +184 -0
- data/vendor/behave/docs/new_and_noteworthy.rst +18 -0
- data/vendor/behave/docs/new_and_noteworthy_v1.2.4.rst +11 -0
- data/vendor/behave/docs/new_and_noteworthy_v1.2.5.rst +814 -0
- data/vendor/behave/docs/new_and_noteworthy_v1.2.6.rst +255 -0
- data/vendor/behave/docs/parse_builtin_types.rst +59 -0
- data/vendor/behave/docs/philosophy.rst +235 -0
- data/vendor/behave/docs/regular_expressions.rst +71 -0
- data/vendor/behave/docs/related.rst +14 -0
- data/vendor/behave/docs/test_domains.rst +62 -0
- data/vendor/behave/docs/tutorial.rst +636 -0
- data/vendor/behave/docs/update_behave_rst.py +100 -0
- data/vendor/behave/etc/json/behave.json-schema +172 -0
- data/vendor/behave/etc/junit.xml/behave_junit.xsd +103 -0
- data/vendor/behave/etc/junit.xml/junit-4.xsd +92 -0
- data/vendor/behave/examples/async_step/README.txt +8 -0
- data/vendor/behave/examples/async_step/behave.ini +14 -0
- data/vendor/behave/examples/async_step/features/async_dispatch.feature +8 -0
- data/vendor/behave/examples/async_step/features/async_run.feature +6 -0
- data/vendor/behave/examples/async_step/features/environment.py +28 -0
- data/vendor/behave/examples/async_step/features/steps/async_dispatch_steps.py +26 -0
- data/vendor/behave/examples/async_step/features/steps/async_steps34.py +10 -0
- data/vendor/behave/examples/async_step/features/steps/async_steps35.py +10 -0
- data/vendor/behave/examples/async_step/testrun_example.async_dispatch.txt +11 -0
- data/vendor/behave/examples/async_step/testrun_example.async_run.txt +9 -0
- data/vendor/behave/examples/env_vars/README.rst +26 -0
- data/vendor/behave/examples/env_vars/behave.ini +15 -0
- data/vendor/behave/examples/env_vars/behave_run.output_example.txt +12 -0
- data/vendor/behave/examples/env_vars/features/env_var.feature +6 -0
- data/vendor/behave/examples/env_vars/features/steps/env_var_steps.py +38 -0
- data/vendor/behave/features/README.txt +12 -0
- data/vendor/behave/features/background.feature +392 -0
- data/vendor/behave/features/capture_stderr.feature +172 -0
- data/vendor/behave/features/capture_stdout.feature +125 -0
- data/vendor/behave/features/cmdline.lang_list.feature +33 -0
- data/vendor/behave/features/configuration.default_paths.feature +116 -0
- data/vendor/behave/features/context.global_params.feature +35 -0
- data/vendor/behave/features/context.local_params.feature +17 -0
- data/vendor/behave/features/directory_layout.advanced.feature +147 -0
- data/vendor/behave/features/directory_layout.basic.feature +75 -0
- data/vendor/behave/features/directory_layout.basic2.feature +87 -0
- data/vendor/behave/features/environment.py +53 -0
- data/vendor/behave/features/exploratory_testing.with_table.feature +141 -0
- data/vendor/behave/features/feature.description.feature +0 -0
- data/vendor/behave/features/feature.exclude_from_run.feature +96 -0
- data/vendor/behave/features/formatter.help.feature +30 -0
- data/vendor/behave/features/formatter.json.feature +420 -0
- data/vendor/behave/features/formatter.progress3.feature +235 -0
- data/vendor/behave/features/formatter.rerun.feature +296 -0
- data/vendor/behave/features/formatter.steps.feature +181 -0
- data/vendor/behave/features/formatter.steps_catalog.feature +100 -0
- data/vendor/behave/features/formatter.steps_doc.feature +140 -0
- data/vendor/behave/features/formatter.steps_usage.feature +404 -0
- data/vendor/behave/features/formatter.tags.feature +134 -0
- data/vendor/behave/features/formatter.tags_location.feature +183 -0
- data/vendor/behave/features/formatter.user_defined.feature +196 -0
- data/vendor/behave/features/i18n.unicode_problems.feature +445 -0
- data/vendor/behave/features/logcapture.clear_handlers.feature +114 -0
- data/vendor/behave/features/logcapture.feature +188 -0
- data/vendor/behave/features/logcapture.filter.feature +130 -0
- data/vendor/behave/features/logging.no_capture.feature +99 -0
- data/vendor/behave/features/logging.setup_format.feature +157 -0
- data/vendor/behave/features/logging.setup_level.feature +168 -0
- data/vendor/behave/features/logging.setup_with_configfile.feature +137 -0
- data/vendor/behave/features/parser.background.sad_cases.feature +129 -0
- data/vendor/behave/features/parser.feature.sad_cases.feature +144 -0
- data/vendor/behave/features/runner.abort_by_user.feature +305 -0
- data/vendor/behave/features/runner.continue_after_failed_step.feature +136 -0
- data/vendor/behave/features/runner.default_format.feature +175 -0
- data/vendor/behave/features/runner.dry_run.feature +184 -0
- data/vendor/behave/features/runner.feature_listfile.feature +223 -0
- data/vendor/behave/features/runner.hook_errors.feature +382 -0
- data/vendor/behave/features/runner.multiple_formatters.feature +285 -0
- data/vendor/behave/features/runner.scenario_autoretry.feature +131 -0
- data/vendor/behave/features/runner.select_files_by_regexp.example.feature +71 -0
- data/vendor/behave/features/runner.select_files_by_regexp.feature +84 -0
- data/vendor/behave/features/runner.select_scenarios_by_file_location.feature +403 -0
- data/vendor/behave/features/runner.select_scenarios_by_name.feature +289 -0
- data/vendor/behave/features/runner.select_scenarios_by_tag.feature +225 -0
- data/vendor/behave/features/runner.stop_after_failure.feature +122 -0
- data/vendor/behave/features/runner.tag_logic.feature +67 -0
- data/vendor/behave/features/runner.unknown_formatter.feature +23 -0
- data/vendor/behave/features/runner.use_stage_implementations.feature +126 -0
- data/vendor/behave/features/scenario.description.feature +171 -0
- data/vendor/behave/features/scenario.exclude_from_run.feature +217 -0
- data/vendor/behave/features/scenario_outline.basics.feature +100 -0
- data/vendor/behave/features/scenario_outline.improved.feature +177 -0
- data/vendor/behave/features/scenario_outline.name_annotation.feature +157 -0
- data/vendor/behave/features/scenario_outline.parametrized.feature +401 -0
- data/vendor/behave/features/scenario_outline.tagged_examples.feature +118 -0
- data/vendor/behave/features/step.async_steps.feature +225 -0
- data/vendor/behave/features/step.duplicated_step.feature +106 -0
- data/vendor/behave/features/step.execute_steps.feature +59 -0
- data/vendor/behave/features/step.execute_steps.with_table.feature +65 -0
- data/vendor/behave/features/step.import_other_step_module.feature +103 -0
- data/vendor/behave/features/step.pending_steps.feature +128 -0
- data/vendor/behave/features/step.undefined_steps.feature +307 -0
- data/vendor/behave/features/step.use_step_library.feature +44 -0
- data/vendor/behave/features/step_dialect.generic_steps.feature +189 -0
- data/vendor/behave/features/step_dialect.given_when_then.feature +89 -0
- data/vendor/behave/features/step_param.builtin_types.with_float.feature +239 -0
- data/vendor/behave/features/step_param.builtin_types.with_integer.feature +305 -0
- data/vendor/behave/features/step_param.custom_types.feature +134 -0
- data/vendor/behave/features/steps/behave_active_tags_steps.py +86 -0
- data/vendor/behave/features/steps/behave_context_steps.py +67 -0
- data/vendor/behave/features/steps/behave_model_tag_logic_steps.py +105 -0
- data/vendor/behave/features/steps/behave_model_util.py +105 -0
- data/vendor/behave/features/steps/behave_select_files_steps.py +83 -0
- data/vendor/behave/features/steps/behave_tag_expression_steps.py +166 -0
- data/vendor/behave/features/steps/behave_undefined_steps.py +101 -0
- data/vendor/behave/features/steps/use_steplib_behave4cmd.py +12 -0
- data/vendor/behave/features/summary.undefined_steps.feature +114 -0
- data/vendor/behave/features/tags.active_tags.feature +385 -0
- data/vendor/behave/features/tags.default_tags.feature +104 -0
- data/vendor/behave/features/tags.tag_expression.feature +105 -0
- data/vendor/behave/features/userdata.feature +331 -0
- data/vendor/behave/invoke.yaml +21 -0
- data/vendor/behave/issue.features/README.txt +17 -0
- data/vendor/behave/issue.features/environment.py +97 -0
- data/vendor/behave/issue.features/issue0030.feature +21 -0
- data/vendor/behave/issue.features/issue0031.feature +16 -0
- data/vendor/behave/issue.features/issue0032.feature +28 -0
- data/vendor/behave/issue.features/issue0035.feature +74 -0
- data/vendor/behave/issue.features/issue0040.feature +154 -0
- data/vendor/behave/issue.features/issue0041.feature +135 -0
- data/vendor/behave/issue.features/issue0042.feature +230 -0
- data/vendor/behave/issue.features/issue0044.feature +51 -0
- data/vendor/behave/issue.features/issue0046.feature +77 -0
- data/vendor/behave/issue.features/issue0052.feature +66 -0
- data/vendor/behave/issue.features/issue0059.feature +29 -0
- data/vendor/behave/issue.features/issue0063.feature +102 -0
- data/vendor/behave/issue.features/issue0064.feature +97 -0
- data/vendor/behave/issue.features/issue0065.feature +18 -0
- data/vendor/behave/issue.features/issue0066.feature +80 -0
- data/vendor/behave/issue.features/issue0067.feature +90 -0
- data/vendor/behave/issue.features/issue0069.feature +64 -0
- data/vendor/behave/issue.features/issue0072.feature +32 -0
- data/vendor/behave/issue.features/issue0073.feature +228 -0
- data/vendor/behave/issue.features/issue0075.feature +18 -0
- data/vendor/behave/issue.features/issue0077.feature +89 -0
- data/vendor/behave/issue.features/issue0080.feature +49 -0
- data/vendor/behave/issue.features/issue0081.feature +138 -0
- data/vendor/behave/issue.features/issue0083.feature +69 -0
- data/vendor/behave/issue.features/issue0084.feature +69 -0
- data/vendor/behave/issue.features/issue0085.feature +119 -0
- data/vendor/behave/issue.features/issue0092.feature +66 -0
- data/vendor/behave/issue.features/issue0096.feature +173 -0
- data/vendor/behave/issue.features/issue0099.feature +130 -0
- data/vendor/behave/issue.features/issue0109.feature +60 -0
- data/vendor/behave/issue.features/issue0111.feature +53 -0
- data/vendor/behave/issue.features/issue0112.feature +64 -0
- data/vendor/behave/issue.features/issue0114.feature +118 -0
- data/vendor/behave/issue.features/issue0116.feature +71 -0
- data/vendor/behave/issue.features/issue0125.feature +49 -0
- data/vendor/behave/issue.features/issue0127.feature +64 -0
- data/vendor/behave/issue.features/issue0139.feature +67 -0
- data/vendor/behave/issue.features/issue0142.feature +37 -0
- data/vendor/behave/issue.features/issue0143.feature +54 -0
- data/vendor/behave/issue.features/issue0145.feature +63 -0
- data/vendor/behave/issue.features/issue0148.feature +105 -0
- data/vendor/behave/issue.features/issue0152.feature +52 -0
- data/vendor/behave/issue.features/issue0159.feature +74 -0
- data/vendor/behave/issue.features/issue0162.feature +86 -0
- data/vendor/behave/issue.features/issue0171.feature +16 -0
- data/vendor/behave/issue.features/issue0172.feature +51 -0
- data/vendor/behave/issue.features/issue0175.feature +91 -0
- data/vendor/behave/issue.features/issue0177.feature +40 -0
- data/vendor/behave/issue.features/issue0181.feature +36 -0
- data/vendor/behave/issue.features/issue0184.feature +144 -0
- data/vendor/behave/issue.features/issue0186.feature +12 -0
- data/vendor/behave/issue.features/issue0188.feature +60 -0
- data/vendor/behave/issue.features/issue0191.feature +178 -0
- data/vendor/behave/issue.features/issue0194.feature +215 -0
- data/vendor/behave/issue.features/issue0197.feature +11 -0
- data/vendor/behave/issue.features/issue0216.feature +129 -0
- data/vendor/behave/issue.features/issue0226.feature +51 -0
- data/vendor/behave/issue.features/issue0228.feature +41 -0
- data/vendor/behave/issue.features/issue0230.feature +46 -0
- data/vendor/behave/issue.features/issue0231.feature +77 -0
- data/vendor/behave/issue.features/issue0238.feature +52 -0
- data/vendor/behave/issue.features/issue0251.feature +15 -0
- data/vendor/behave/issue.features/issue0280.feature +118 -0
- data/vendor/behave/issue.features/issue0288.feature +95 -0
- data/vendor/behave/issue.features/issue0300.feature +49 -0
- data/vendor/behave/issue.features/issue0302.feature +91 -0
- data/vendor/behave/issue.features/issue0309.feature +52 -0
- data/vendor/behave/issue.features/issue0330.feature +124 -0
- data/vendor/behave/issue.features/issue0349.feature +9 -0
- data/vendor/behave/issue.features/issue0361.feature +79 -0
- data/vendor/behave/issue.features/issue0383.feature +76 -0
- data/vendor/behave/issue.features/issue0384.feature +103 -0
- data/vendor/behave/issue.features/issue0385.feature +109 -0
- data/vendor/behave/issue.features/issue0424.feature +66 -0
- data/vendor/behave/issue.features/issue0446.feature +116 -0
- data/vendor/behave/issue.features/issue0449.feature +42 -0
- data/vendor/behave/issue.features/issue0453.feature +42 -0
- data/vendor/behave/issue.features/issue0457.feature +65 -0
- data/vendor/behave/issue.features/issue0462.feature +38 -0
- data/vendor/behave/issue.features/issue0476.feature +39 -0
- data/vendor/behave/issue.features/issue0487.feature +92 -0
- data/vendor/behave/issue.features/issue0506.feature +77 -0
- data/vendor/behave/issue.features/issue0510.feature +51 -0
- data/vendor/behave/issue.features/requirements.txt +12 -0
- data/vendor/behave/issue.features/steps/ansi_steps.py +20 -0
- data/vendor/behave/issue.features/steps/behave_hooks_steps.py +10 -0
- data/vendor/behave/issue.features/steps/use_steplib_behave4cmd.py +13 -0
- data/vendor/behave/more.features/formatter.json.validate_output.feature +37 -0
- data/vendor/behave/more.features/steps/tutorial_steps.py +16 -0
- data/vendor/behave/more.features/steps/use_steplib_behave4cmd.py +7 -0
- data/vendor/behave/more.features/tutorial.feature +6 -0
- data/vendor/behave/py.requirements/README.txt +5 -0
- data/vendor/behave/py.requirements/all.txt +16 -0
- data/vendor/behave/py.requirements/basic.txt +21 -0
- data/vendor/behave/py.requirements/develop.txt +28 -0
- data/vendor/behave/py.requirements/docs.txt +6 -0
- data/vendor/behave/py.requirements/json.txt +7 -0
- data/vendor/behave/py.requirements/more_py26.txt +8 -0
- data/vendor/behave/py.requirements/testing.txt +10 -0
- data/vendor/behave/pytest.ini +24 -0
- data/vendor/behave/setup.cfg +29 -0
- data/vendor/behave/setup.py +118 -0
- data/vendor/behave/setuptools_behave.py +130 -0
- data/vendor/behave/tasks/__behave.py +45 -0
- data/vendor/behave/tasks/__init__.py +55 -0
- data/vendor/behave/tasks/__main__.py +70 -0
- data/vendor/behave/tasks/_setup.py +135 -0
- data/vendor/behave/tasks/_vendor/README.rst +35 -0
- data/vendor/behave/tasks/_vendor/invoke.zip +0 -0
- data/vendor/behave/tasks/_vendor/path.py +1725 -0
- data/vendor/behave/tasks/_vendor/pathlib.py +1280 -0
- data/vendor/behave/tasks/_vendor/six.py +868 -0
- data/vendor/behave/tasks/clean.py +246 -0
- data/vendor/behave/tasks/docs.py +97 -0
- data/vendor/behave/tasks/requirements.txt +17 -0
- data/vendor/behave/tasks/test.py +192 -0
- data/vendor/behave/test/__init__.py +0 -0
- data/vendor/behave/test/_importer_candidate.py +3 -0
- data/vendor/behave/test/reporters/__init__.py +0 -0
- data/vendor/behave/test/reporters/test_summary.py +240 -0
- data/vendor/behave/test/test_ansi_escapes.py +73 -0
- data/vendor/behave/test/test_configuration.py +172 -0
- data/vendor/behave/test/test_formatter.py +265 -0
- data/vendor/behave/test/test_formatter_progress.py +39 -0
- data/vendor/behave/test/test_formatter_rerun.py +97 -0
- data/vendor/behave/test/test_formatter_tags.py +57 -0
- data/vendor/behave/test/test_importer.py +151 -0
- data/vendor/behave/test/test_log_capture.py +29 -0
- data/vendor/behave/test/test_matchers.py +236 -0
- data/vendor/behave/test/test_model.py +871 -0
- data/vendor/behave/test/test_parser.py +1590 -0
- data/vendor/behave/test/test_runner.py +1074 -0
- data/vendor/behave/test/test_step_registry.py +96 -0
- data/vendor/behave/test/test_tag_expression.py +506 -0
- data/vendor/behave/test/test_tag_expression2.py +462 -0
- data/vendor/behave/test/test_tag_matcher.py +729 -0
- data/vendor/behave/test/test_userdata.py +184 -0
- data/vendor/behave/tests/README.txt +12 -0
- data/vendor/behave/tests/__init__.py +0 -0
- data/vendor/behave/tests/api/__ONLY_PY34_or_newer.txt +0 -0
- data/vendor/behave/tests/api/__init__.py +0 -0
- data/vendor/behave/tests/api/_test_async_step34.py +130 -0
- data/vendor/behave/tests/api/_test_async_step35.py +75 -0
- data/vendor/behave/tests/api/test_async_step.py +18 -0
- data/vendor/behave/tests/api/testing_support.py +94 -0
- data/vendor/behave/tests/api/testing_support_async.py +21 -0
- data/vendor/behave/tests/issues/test_issue0336.py +66 -0
- data/vendor/behave/tests/issues/test_issue0449.py +55 -0
- data/vendor/behave/tests/issues/test_issue0453.py +62 -0
- data/vendor/behave/tests/issues/test_issue0458.py +54 -0
- data/vendor/behave/tests/issues/test_issue0495.py +65 -0
- data/vendor/behave/tests/unit/__init__.py +0 -0
- data/vendor/behave/tests/unit/test_behave4cmd_command_shell_proc.py +135 -0
- data/vendor/behave/tests/unit/test_capture.py +280 -0
- data/vendor/behave/tests/unit/test_model_core.py +56 -0
- data/vendor/behave/tests/unit/test_textutil.py +267 -0
- data/vendor/behave/tools/test-features/background.feature +9 -0
- data/vendor/behave/tools/test-features/environment.py +8 -0
- data/vendor/behave/tools/test-features/french.feature +11 -0
- data/vendor/behave/tools/test-features/outline.feature +39 -0
- data/vendor/behave/tools/test-features/parse.feature +10 -0
- data/vendor/behave/tools/test-features/step-data.feature +60 -0
- data/vendor/behave/tools/test-features/steps/steps.py +120 -0
- data/vendor/behave/tools/test-features/tags.feature +18 -0
- data/vendor/behave/tox.ini +159 -0
- metadata +562 -0
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
@issue
|
|
2
|
+
Feature: Issue #42 Nice to have snippets for all unimplemented steps taking into account of the tags fltering
|
|
3
|
+
|
|
4
|
+
As a user
|
|
5
|
+
I want that all undefined steps are reported,
|
|
6
|
+
not only just the first one in a scenario.
|
|
7
|
+
|
|
8
|
+
In addition, all known steps after the first undefined step in a scenario
|
|
9
|
+
should be marked as skipped (even failing ones).
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
Background: Test Setup
|
|
13
|
+
Given a new working directory
|
|
14
|
+
And a file named "features/steps/steps.py" with:
|
|
15
|
+
"""
|
|
16
|
+
from behave import given, when, then
|
|
17
|
+
|
|
18
|
+
@given(u'I enter a "{name}"')
|
|
19
|
+
def step(context, name):
|
|
20
|
+
context.name = name
|
|
21
|
+
|
|
22
|
+
@when(u'I enter a "{name}"')
|
|
23
|
+
def step(context, name):
|
|
24
|
+
context.name = name
|
|
25
|
+
|
|
26
|
+
@then(u'the name is "{name}"')
|
|
27
|
+
def step(context, name):
|
|
28
|
+
assert context.name == name
|
|
29
|
+
"""
|
|
30
|
+
|
|
31
|
+
Scenario: One undefined step in a scenario
|
|
32
|
+
Given a file named "features/issue42_missing1.feature" with:
|
|
33
|
+
"""
|
|
34
|
+
Feature: Missing Given-Step in a Scenario
|
|
35
|
+
Scenario:
|
|
36
|
+
Given an unknown step
|
|
37
|
+
When I enter a "Alice"
|
|
38
|
+
Then the name is "Alice"
|
|
39
|
+
"""
|
|
40
|
+
When I run "behave -f plain features/issue42_missing1.feature"
|
|
41
|
+
Then it should fail with:
|
|
42
|
+
"""
|
|
43
|
+
0 steps passed, 0 failed, 2 skipped, 1 undefined
|
|
44
|
+
"""
|
|
45
|
+
And the command output should contain:
|
|
46
|
+
"""
|
|
47
|
+
You can implement step definitions for undefined steps with these snippets:
|
|
48
|
+
@given(u'an unknown step')
|
|
49
|
+
def step_impl(context):
|
|
50
|
+
raise NotImplementedError(u'STEP: Given an unknown step')
|
|
51
|
+
"""
|
|
52
|
+
|
|
53
|
+
Scenario: Two undefined steps in a scenario
|
|
54
|
+
Given a file named "features/issue42_missing2.feature" with:
|
|
55
|
+
"""
|
|
56
|
+
Feature: Missing Given and When steps in a Scenario
|
|
57
|
+
Scenario:
|
|
58
|
+
Given an unknown step
|
|
59
|
+
When another unknown step
|
|
60
|
+
And I enter a "Alice"
|
|
61
|
+
Then the name is "Alice"
|
|
62
|
+
"""
|
|
63
|
+
When I run "behave -f plain features/issue42_missing2.feature"
|
|
64
|
+
Then it should fail with:
|
|
65
|
+
"""
|
|
66
|
+
0 steps passed, 0 failed, 2 skipped, 2 undefined
|
|
67
|
+
"""
|
|
68
|
+
And the command output should contain:
|
|
69
|
+
"""
|
|
70
|
+
You can implement step definitions for undefined steps with these snippets:
|
|
71
|
+
@given(u'an unknown step')
|
|
72
|
+
def step_impl(context):
|
|
73
|
+
raise NotImplementedError(u'STEP: Given an unknown step')
|
|
74
|
+
|
|
75
|
+
@when(u'another unknown step')
|
|
76
|
+
def step_impl(context):
|
|
77
|
+
raise NotImplementedError(u'STEP: When another unknown step')
|
|
78
|
+
"""
|
|
79
|
+
|
|
80
|
+
Scenario: Two undefined steps in the middle with passing steps
|
|
81
|
+
Given a file named "features/issue42_missing3.feature" with:
|
|
82
|
+
"""
|
|
83
|
+
Feature: Missing 2 When steps after passing step
|
|
84
|
+
Scenario:
|
|
85
|
+
When I enter a "Alice"
|
|
86
|
+
And an unknown step
|
|
87
|
+
And another unknown step
|
|
88
|
+
Then the name is "Alice"
|
|
89
|
+
"""
|
|
90
|
+
When I run "behave -f plain features/issue42_missing3.feature"
|
|
91
|
+
Then it should fail with:
|
|
92
|
+
"""
|
|
93
|
+
1 step passed, 0 failed, 1 skipped, 2 undefined
|
|
94
|
+
"""
|
|
95
|
+
And the command output should contain:
|
|
96
|
+
"""
|
|
97
|
+
You can implement step definitions for undefined steps with these snippets:
|
|
98
|
+
@when(u'an unknown step')
|
|
99
|
+
def step_impl(context):
|
|
100
|
+
raise NotImplementedError(u'STEP: When an unknown step')
|
|
101
|
+
|
|
102
|
+
@when(u'another unknown step')
|
|
103
|
+
def step_impl(context):
|
|
104
|
+
raise NotImplementedError(u'STEP: When another unknown step')
|
|
105
|
+
"""
|
|
106
|
+
|
|
107
|
+
Scenario: Undefined steps are detected if they occur after a failing step
|
|
108
|
+
Given a file named "features/issue42_missing4.feature" with:
|
|
109
|
+
"""
|
|
110
|
+
Feature: Missing 2 When steps after passing step
|
|
111
|
+
Scenario:
|
|
112
|
+
When I enter a "Alice"
|
|
113
|
+
Then the name is "Bob"
|
|
114
|
+
And an unknown step
|
|
115
|
+
And another unknown step
|
|
116
|
+
"""
|
|
117
|
+
When I run "behave -f plain features/issue42_missing4.feature"
|
|
118
|
+
Then it should fail with:
|
|
119
|
+
"""
|
|
120
|
+
1 step passed, 1 failed, 0 skipped, 2 undefined
|
|
121
|
+
"""
|
|
122
|
+
And the command output should contain:
|
|
123
|
+
"""
|
|
124
|
+
You can implement step definitions for undefined steps with these snippets:
|
|
125
|
+
@then(u'an unknown step')
|
|
126
|
+
def step_impl(context):
|
|
127
|
+
raise NotImplementedError(u'STEP: Then an unknown step')
|
|
128
|
+
|
|
129
|
+
@then(u'another unknown step')
|
|
130
|
+
def step_impl(context):
|
|
131
|
+
raise NotImplementedError(u'STEP: Then another unknown step')
|
|
132
|
+
"""
|
|
133
|
+
|
|
134
|
+
Scenario: Failing step after first undefined step should be marked as skipped
|
|
135
|
+
Given a file named "features/issue42_missing4.feature" with:
|
|
136
|
+
"""
|
|
137
|
+
Feature: Missing 2 When steps after passing step
|
|
138
|
+
Scenario:
|
|
139
|
+
When I enter a "Alice"
|
|
140
|
+
And an unknown step
|
|
141
|
+
Then the name is "Bob"
|
|
142
|
+
And another unknown step
|
|
143
|
+
"""
|
|
144
|
+
When I run "behave -f plain features/issue42_missing4.feature"
|
|
145
|
+
Then it should fail with:
|
|
146
|
+
"""
|
|
147
|
+
1 step passed, 0 failed, 1 skipped, 2 undefined
|
|
148
|
+
"""
|
|
149
|
+
And the command output should contain:
|
|
150
|
+
"""
|
|
151
|
+
You can implement step definitions for undefined steps with these snippets:
|
|
152
|
+
@when(u'an unknown step')
|
|
153
|
+
def step_impl(context):
|
|
154
|
+
raise NotImplementedError(u'STEP: When an unknown step')
|
|
155
|
+
|
|
156
|
+
@then(u'another unknown step')
|
|
157
|
+
def step_impl(context):
|
|
158
|
+
raise NotImplementedError(u'STEP: Then another unknown step')
|
|
159
|
+
"""
|
|
160
|
+
|
|
161
|
+
Scenario: Two undefined steps in scenario outline
|
|
162
|
+
Given a file named "features/issue42_missing5.feature" with:
|
|
163
|
+
"""
|
|
164
|
+
Feature: Missing Given and When Step in a Scenario Outline
|
|
165
|
+
Scenario Outline:
|
|
166
|
+
Given an unknown step
|
|
167
|
+
When another unknown step
|
|
168
|
+
And I enter a "<name>"
|
|
169
|
+
Then the name is "<name>"
|
|
170
|
+
|
|
171
|
+
Examples:
|
|
172
|
+
|name |
|
|
173
|
+
|Alice|
|
|
174
|
+
|Bob |
|
|
175
|
+
"""
|
|
176
|
+
When I run "behave -f plain features/issue42_missing5.feature"
|
|
177
|
+
Then it should fail with:
|
|
178
|
+
"""
|
|
179
|
+
0 steps passed, 0 failed, 4 skipped, 4 undefined
|
|
180
|
+
"""
|
|
181
|
+
And the command output should contain:
|
|
182
|
+
"""
|
|
183
|
+
You can implement step definitions for undefined steps with these snippets:
|
|
184
|
+
@given(u'an unknown step')
|
|
185
|
+
def step_impl(context):
|
|
186
|
+
raise NotImplementedError(u'STEP: Given an unknown step')
|
|
187
|
+
|
|
188
|
+
@when(u'another unknown step')
|
|
189
|
+
def step_impl(context):
|
|
190
|
+
raise NotImplementedError(u'STEP: When another unknown step')
|
|
191
|
+
"""
|
|
192
|
+
|
|
193
|
+
Scenario: Two undefined steps and run with tags
|
|
194
|
+
Given a file named "features/issue42_missing6.feature" with:
|
|
195
|
+
"""
|
|
196
|
+
Feature: Missing steps in tagged scenarios
|
|
197
|
+
@tag1
|
|
198
|
+
Scenario:
|
|
199
|
+
When I enter a "Alice"
|
|
200
|
+
And an unknown step
|
|
201
|
+
Then the name is "Bob"
|
|
202
|
+
|
|
203
|
+
@tag1
|
|
204
|
+
Scenario:
|
|
205
|
+
When I enter a "Alice"
|
|
206
|
+
And another unknown step
|
|
207
|
+
Then the name is "Bob"
|
|
208
|
+
|
|
209
|
+
@another_tag
|
|
210
|
+
Scenario:
|
|
211
|
+
When I enter a "Alice"
|
|
212
|
+
And yet another unknown step
|
|
213
|
+
Then the name is "Bob"
|
|
214
|
+
"""
|
|
215
|
+
When I run "behave -f plain --tags tag1 features/issue42_missing6.feature"
|
|
216
|
+
Then it should fail with:
|
|
217
|
+
"""
|
|
218
|
+
2 steps passed, 0 failed, 5 skipped, 2 undefined
|
|
219
|
+
"""
|
|
220
|
+
And the command output should contain:
|
|
221
|
+
"""
|
|
222
|
+
You can implement step definitions for undefined steps with these snippets:
|
|
223
|
+
@when(u'an unknown step')
|
|
224
|
+
def step_impl(context):
|
|
225
|
+
raise NotImplementedError(u'STEP: When an unknown step')
|
|
226
|
+
|
|
227
|
+
@when(u'another unknown step')
|
|
228
|
+
def step_impl(context):
|
|
229
|
+
raise NotImplementedError(u'STEP: When another unknown step')
|
|
230
|
+
"""
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
@issue
|
|
2
|
+
Feature: Issue #44 Shell-like comments are removed in Multiline Args
|
|
3
|
+
|
|
4
|
+
As I user
|
|
5
|
+
I want that multiline arguments (docstrings) contents are preserved.
|
|
6
|
+
|
|
7
|
+
Background: Test Setup
|
|
8
|
+
Given a new working directory
|
|
9
|
+
And a file named "features/steps/steps.py" with:
|
|
10
|
+
"""
|
|
11
|
+
from behave import given, when, then
|
|
12
|
+
from hamcrest import assert_that, equal_to
|
|
13
|
+
|
|
14
|
+
@given(u'a multiline text argument with')
|
|
15
|
+
def step(context):
|
|
16
|
+
context.expected_text = context.text
|
|
17
|
+
|
|
18
|
+
@then(u'the multiline text argument should be')
|
|
19
|
+
def step(context):
|
|
20
|
+
assert_that(context.text, equal_to(context.expected_text))
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
Scenario: Ensure shell comment lines are not filtered out in multiline text
|
|
24
|
+
Given a file named "features/issue44_test.feature" with:
|
|
25
|
+
'''
|
|
26
|
+
Feature: Multiline text with shell comment lines
|
|
27
|
+
Scenario:
|
|
28
|
+
Given a multiline text argument with:
|
|
29
|
+
"""
|
|
30
|
+
Lorem ipsum.
|
|
31
|
+
# THIS IS A SHELL COMMENT.
|
|
32
|
+
Ipsum lorem.
|
|
33
|
+
"""
|
|
34
|
+
Then the multiline text argument should be:
|
|
35
|
+
"""
|
|
36
|
+
Lorem ipsum.
|
|
37
|
+
# THIS IS A SHELL COMMENT.
|
|
38
|
+
Ipsum lorem.
|
|
39
|
+
"""
|
|
40
|
+
'''
|
|
41
|
+
When I run "behave -c -f pretty features/issue44_test.feature"
|
|
42
|
+
Then it should pass
|
|
43
|
+
And the command output should contain:
|
|
44
|
+
"""
|
|
45
|
+
# THIS IS A SHELL COMMENT.
|
|
46
|
+
"""
|
|
47
|
+
But the command output should not contain:
|
|
48
|
+
"""
|
|
49
|
+
Lorem ipsum.
|
|
50
|
+
Ipsum lorem.
|
|
51
|
+
"""
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
@issue
|
|
2
|
+
Feature: Issue #46 Behave returns 0 (SUCCESS) even in case of test failures
|
|
3
|
+
|
|
4
|
+
As I behave user
|
|
5
|
+
I want to detect test success or test failures
|
|
6
|
+
By using the process return value, 0 (SUCCESS) and non-zero for failure.
|
|
7
|
+
|
|
8
|
+
Background: Test Setup
|
|
9
|
+
Given a new working directory
|
|
10
|
+
Given a file named "features/steps/steps.py" with:
|
|
11
|
+
"""
|
|
12
|
+
from behave import given
|
|
13
|
+
|
|
14
|
+
@given(u'passing')
|
|
15
|
+
def step(context):
|
|
16
|
+
pass
|
|
17
|
+
|
|
18
|
+
@given(u'failing')
|
|
19
|
+
def step(context):
|
|
20
|
+
assert False, "failing"
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
Scenario: Successful Execution
|
|
24
|
+
Given a file named "features/passing.feature" with:
|
|
25
|
+
"""
|
|
26
|
+
Feature: Passing
|
|
27
|
+
Scenario: Passing Scenario Example
|
|
28
|
+
Given passing
|
|
29
|
+
"""
|
|
30
|
+
When I run "behave -c -q features/passing.feature"
|
|
31
|
+
Then it should pass with:
|
|
32
|
+
"""
|
|
33
|
+
1 feature passed, 0 failed, 0 skipped
|
|
34
|
+
1 scenario passed, 0 failed, 0 skipped
|
|
35
|
+
1 step passed, 0 failed, 0 skipped, 0 undefined
|
|
36
|
+
"""
|
|
37
|
+
|
|
38
|
+
Scenario: Failing Execution
|
|
39
|
+
Given a file named "features/failing.feature" with:
|
|
40
|
+
"""
|
|
41
|
+
Feature: Failing
|
|
42
|
+
Scenario: Failing Scenario Example
|
|
43
|
+
Given failing
|
|
44
|
+
"""
|
|
45
|
+
When I run "behave -c -q features/failing.feature"
|
|
46
|
+
Then it should fail with:
|
|
47
|
+
"""
|
|
48
|
+
0 features passed, 1 failed, 0 skipped
|
|
49
|
+
0 scenarios passed, 1 failed, 0 skipped
|
|
50
|
+
0 steps passed, 1 failed, 0 skipped, 0 undefined
|
|
51
|
+
"""
|
|
52
|
+
|
|
53
|
+
Scenario: Passing and Failing Execution
|
|
54
|
+
Given a file named "features/passing_and_failing.feature" with:
|
|
55
|
+
"""
|
|
56
|
+
Feature: Passing and Failing
|
|
57
|
+
Scenario: Passing Scenario Example
|
|
58
|
+
Given passing
|
|
59
|
+
Scenario: Failing Scenario Example
|
|
60
|
+
Given failing
|
|
61
|
+
"""
|
|
62
|
+
When I run "behave -c -q features/passing_and_failing.feature"
|
|
63
|
+
Then it should fail with:
|
|
64
|
+
"""
|
|
65
|
+
0 features passed, 1 failed, 0 skipped
|
|
66
|
+
1 scenario passed, 1 failed, 0 skipped
|
|
67
|
+
1 step passed, 1 failed, 0 skipped, 0 undefined
|
|
68
|
+
"""
|
|
69
|
+
And the command output should contain:
|
|
70
|
+
"""
|
|
71
|
+
Feature: Passing and Failing
|
|
72
|
+
Scenario: Passing Scenario Example
|
|
73
|
+
Given passing
|
|
74
|
+
Scenario: Failing Scenario Example
|
|
75
|
+
Given failing
|
|
76
|
+
Assertion Failed: failing
|
|
77
|
+
"""
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
@issue
|
|
2
|
+
Feature: Issue #52 Summary counts are wrong with option --tags
|
|
3
|
+
|
|
4
|
+
Wrong summary counts are shown for skipped and failed scenarios
|
|
5
|
+
when option --tags=done is used (and some scenarios are skipped).
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
Background: Test Setup
|
|
9
|
+
Given a new working directory
|
|
10
|
+
Given a file named "features/steps/steps.py" with:
|
|
11
|
+
"""
|
|
12
|
+
from behave import given
|
|
13
|
+
|
|
14
|
+
@given(u'passing')
|
|
15
|
+
def step(context):
|
|
16
|
+
pass
|
|
17
|
+
|
|
18
|
+
@given(u'failing')
|
|
19
|
+
def step(context):
|
|
20
|
+
assert False, "failing"
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
Scenario: Successful Execution of Tagged Scenario
|
|
24
|
+
Given a file named "features/tagged_scenario1.feature" with:
|
|
25
|
+
"""
|
|
26
|
+
Feature: Passing tagged Scenario
|
|
27
|
+
@done
|
|
28
|
+
Scenario: P1
|
|
29
|
+
Given passing
|
|
30
|
+
|
|
31
|
+
@unimplemented
|
|
32
|
+
Scenario: N1
|
|
33
|
+
Given passing
|
|
34
|
+
@unimplemented
|
|
35
|
+
Scenario: N2
|
|
36
|
+
Given passing
|
|
37
|
+
"""
|
|
38
|
+
When I run "behave --junit -c --tags @done features/tagged_scenario1.feature"
|
|
39
|
+
Then it should pass with:
|
|
40
|
+
"""
|
|
41
|
+
1 feature passed, 0 failed, 0 skipped
|
|
42
|
+
1 scenario passed, 0 failed, 2 skipped
|
|
43
|
+
"""
|
|
44
|
+
|
|
45
|
+
Scenario: Failing Execution of Tagged Scenario
|
|
46
|
+
Given a file named "features/tagged_scenario2.feature" with:
|
|
47
|
+
"""
|
|
48
|
+
Feature: Failing tagged Scenario
|
|
49
|
+
@done
|
|
50
|
+
Scenario: F1
|
|
51
|
+
Given failing
|
|
52
|
+
|
|
53
|
+
@unimplemented
|
|
54
|
+
Scenario: N1
|
|
55
|
+
Given passing
|
|
56
|
+
@unimplemented
|
|
57
|
+
Scenario: N2
|
|
58
|
+
Given passing
|
|
59
|
+
"""
|
|
60
|
+
When I run "behave --junit -c --tags @done features/tagged_scenario2.feature"
|
|
61
|
+
Then it should fail
|
|
62
|
+
And the command output should contain:
|
|
63
|
+
"""
|
|
64
|
+
0 features passed, 1 failed, 0 skipped
|
|
65
|
+
0 scenarios passed, 1 failed, 2 skipped
|
|
66
|
+
"""
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
@issue
|
|
2
|
+
Feature: Issue #59 Fatal error when using --format=json
|
|
3
|
+
|
|
4
|
+
Using the JSON formatter caused a fatal error.
|
|
5
|
+
|
|
6
|
+
Background: Test Setup
|
|
7
|
+
Given a new working directory
|
|
8
|
+
And a file named "features/steps/steps.py" with:
|
|
9
|
+
"""
|
|
10
|
+
from behave import given
|
|
11
|
+
|
|
12
|
+
@given(u'passing')
|
|
13
|
+
def step(context):
|
|
14
|
+
pass
|
|
15
|
+
"""
|
|
16
|
+
And a file named "features/issue59_test.feature" with:
|
|
17
|
+
"""
|
|
18
|
+
Feature: Passing tagged Scenario
|
|
19
|
+
Scenario: P1
|
|
20
|
+
Given passing
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
Scenario: Use the JSONFormatter
|
|
24
|
+
When I run "behave --format=json features/issue59_test.feature"
|
|
25
|
+
Then it should pass with:
|
|
26
|
+
"""
|
|
27
|
+
1 feature passed, 0 failed, 0 skipped
|
|
28
|
+
1 scenario passed, 0 failed, 0 skipped
|
|
29
|
+
"""
|