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,235 @@
|
|
|
1
|
+
@sequential
|
|
2
|
+
Feature: Progress3 Formatter
|
|
3
|
+
|
|
4
|
+
In order to effectively analyze output of many runs
|
|
5
|
+
As a tester
|
|
6
|
+
I want that behave generates to present results for each scenario
|
|
7
|
+
|
|
8
|
+
@setup
|
|
9
|
+
Scenario: Feature Setup
|
|
10
|
+
Given a new working directory
|
|
11
|
+
And a file named "features/steps/steps.py" with:
|
|
12
|
+
"""
|
|
13
|
+
from behave import step
|
|
14
|
+
|
|
15
|
+
@step('{word:w} step passes')
|
|
16
|
+
def step_passes(context, word):
|
|
17
|
+
pass
|
|
18
|
+
|
|
19
|
+
@step('{word:w} step fails')
|
|
20
|
+
def step_fails(context, word):
|
|
21
|
+
assert False, "XFAIL-STEP"
|
|
22
|
+
|
|
23
|
+
@step(u'a step raises an error "{message}"')
|
|
24
|
+
def step_raises_exception(context, message):
|
|
25
|
+
raise RuntimeError(message)
|
|
26
|
+
"""
|
|
27
|
+
|
|
28
|
+
Scenario: Use Progress3 formatter on simple feature
|
|
29
|
+
Given a file named "features/simple_feature_with_name.feature" with:
|
|
30
|
+
"""
|
|
31
|
+
Feature: Simple, empty Feature
|
|
32
|
+
"""
|
|
33
|
+
When I run "behave -f progress3 features/simple_feature_with_name.feature"
|
|
34
|
+
Then it should pass with:
|
|
35
|
+
"""
|
|
36
|
+
0 features passed, 0 failed, 1 skipped
|
|
37
|
+
0 scenarios passed, 0 failed, 0 skipped
|
|
38
|
+
"""
|
|
39
|
+
And the command output should contain:
|
|
40
|
+
"""
|
|
41
|
+
Simple, empty Feature # features/simple_feature_with_name.feature
|
|
42
|
+
"""
|
|
43
|
+
|
|
44
|
+
Scenario: Use Progress3 formatter with feature and one scenario without steps
|
|
45
|
+
Given a file named "features/simple_scenario.feature" with:
|
|
46
|
+
"""
|
|
47
|
+
Feature: Simple feature with one scenario
|
|
48
|
+
Scenario: Simple scenario without steps
|
|
49
|
+
"""
|
|
50
|
+
When I run "behave -f progress3 features/simple_scenario.feature"
|
|
51
|
+
Then it should pass with:
|
|
52
|
+
"""
|
|
53
|
+
1 feature passed, 0 failed, 0 skipped
|
|
54
|
+
1 scenario passed, 0 failed, 0 skipped
|
|
55
|
+
"""
|
|
56
|
+
And the command output should contain:
|
|
57
|
+
"""
|
|
58
|
+
Simple feature with one scenario # features/simple_scenario.feature
|
|
59
|
+
Simple scenario without steps
|
|
60
|
+
"""
|
|
61
|
+
|
|
62
|
+
Scenario: Use Progress3 formatter with feature and one scenario with all passing steps
|
|
63
|
+
Given a file named "features/scenario_with_steps.feature" with:
|
|
64
|
+
"""
|
|
65
|
+
Feature: Feature with scenario
|
|
66
|
+
Scenario: Simple scenario with passing steps
|
|
67
|
+
Given a step passes
|
|
68
|
+
When another step passes
|
|
69
|
+
Then third step passes
|
|
70
|
+
And fourth step passes
|
|
71
|
+
But fifth step passes
|
|
72
|
+
"""
|
|
73
|
+
When I run "behave -f progress3 features/scenario_with_steps.feature"
|
|
74
|
+
Then it should pass with:
|
|
75
|
+
"""
|
|
76
|
+
1 feature passed, 0 failed, 0 skipped
|
|
77
|
+
1 scenario passed, 0 failed, 0 skipped
|
|
78
|
+
"""
|
|
79
|
+
And the command output should contain:
|
|
80
|
+
"""
|
|
81
|
+
Feature with scenario # features/scenario_with_steps.feature
|
|
82
|
+
Simple scenario with passing steps .....
|
|
83
|
+
"""
|
|
84
|
+
|
|
85
|
+
Scenario: Use Progress3 formatter with feature and one scenario with a failing step
|
|
86
|
+
Given a file named "features/scenario_with_steps.feature" with:
|
|
87
|
+
"""
|
|
88
|
+
Feature: Feature with scenario
|
|
89
|
+
Scenario: Simple scenario with last failing step
|
|
90
|
+
Given a step passes
|
|
91
|
+
When second step passes
|
|
92
|
+
Then third step passes
|
|
93
|
+
And another step passes
|
|
94
|
+
But last step fails
|
|
95
|
+
"""
|
|
96
|
+
When I run "behave -f progress3 features/scenario_with_steps.feature"
|
|
97
|
+
Then it should fail with:
|
|
98
|
+
"""
|
|
99
|
+
0 features passed, 1 failed, 0 skipped
|
|
100
|
+
0 scenarios passed, 1 failed, 0 skipped
|
|
101
|
+
"""
|
|
102
|
+
And the command output should contain:
|
|
103
|
+
"""
|
|
104
|
+
Feature with scenario # features/scenario_with_steps.feature
|
|
105
|
+
Simple scenario with last failing step ....F
|
|
106
|
+
--------------------------------------------------------------------------------
|
|
107
|
+
FAILURE in step 'last step fails' (features/scenario_with_steps.feature:7):
|
|
108
|
+
Assertion Failed: XFAIL-STEP
|
|
109
|
+
--------------------------------------------------------------------------------
|
|
110
|
+
"""
|
|
111
|
+
|
|
112
|
+
Scenario: Use Progress3 formatter with feature and one scenario with an exception in the step
|
|
113
|
+
Given a file named "features/scenario_with_steps.feature" with:
|
|
114
|
+
"""
|
|
115
|
+
Feature: Feature with scenario
|
|
116
|
+
Scenario: Simple scenario with error in the step
|
|
117
|
+
Given a step passes
|
|
118
|
+
When second step passes
|
|
119
|
+
Then third step passes
|
|
120
|
+
And another step passes
|
|
121
|
+
But a step raises an error "Error message here"
|
|
122
|
+
"""
|
|
123
|
+
When I run "behave -f progress3 features/scenario_with_steps.feature"
|
|
124
|
+
Then it should fail with:
|
|
125
|
+
"""
|
|
126
|
+
0 features passed, 1 failed, 0 skipped
|
|
127
|
+
0 scenarios passed, 1 failed, 0 skipped
|
|
128
|
+
"""
|
|
129
|
+
And the command output should contain:
|
|
130
|
+
"""
|
|
131
|
+
Feature with scenario # features/scenario_with_steps.feature
|
|
132
|
+
Simple scenario with error in the step ....E
|
|
133
|
+
--------------------------------------------------------------------------------
|
|
134
|
+
FAILURE in step 'a step raises an error "Error message here"' (features/scenario_with_steps.feature:7):
|
|
135
|
+
"""
|
|
136
|
+
And the command output should contain:
|
|
137
|
+
"""
|
|
138
|
+
RuntimeError: Error message here
|
|
139
|
+
|
|
140
|
+
--------------------------------------------------------------------------------
|
|
141
|
+
"""
|
|
142
|
+
|
|
143
|
+
Scenario: Use Progress3 formatter with feature and three scenarios with all passing steps
|
|
144
|
+
Given a file named "features/scenario_with_steps.feature" with:
|
|
145
|
+
"""
|
|
146
|
+
Feature: Feature with three scenarios
|
|
147
|
+
Scenario: First scenario with passing steps
|
|
148
|
+
Given a step passes
|
|
149
|
+
When second step passes
|
|
150
|
+
Then third step passes
|
|
151
|
+
And another step passes
|
|
152
|
+
But last step passes
|
|
153
|
+
|
|
154
|
+
Scenario: Second scenario with passing steps
|
|
155
|
+
Given a step passes
|
|
156
|
+
When second step passes
|
|
157
|
+
Then third step passes
|
|
158
|
+
And another step passes
|
|
159
|
+
But last step passes
|
|
160
|
+
|
|
161
|
+
Scenario: Third scenario with passing steps
|
|
162
|
+
Given a step passes
|
|
163
|
+
When second step passes
|
|
164
|
+
Then third step passes
|
|
165
|
+
And another step passes
|
|
166
|
+
But last step passes
|
|
167
|
+
"""
|
|
168
|
+
When I run "behave -f progress3 features/scenario_with_steps.feature"
|
|
169
|
+
Then it should pass with:
|
|
170
|
+
"""
|
|
171
|
+
1 feature passed, 0 failed, 0 skipped
|
|
172
|
+
3 scenarios passed, 0 failed, 0 skipped
|
|
173
|
+
15 steps passed, 0 failed, 0 skipped, 0 undefined
|
|
174
|
+
"""
|
|
175
|
+
And the command output should contain:
|
|
176
|
+
"""
|
|
177
|
+
Feature with three scenarios # features/scenario_with_steps.feature
|
|
178
|
+
First scenario with passing steps .....
|
|
179
|
+
Second scenario with passing steps .....
|
|
180
|
+
Third scenario with passing steps .....
|
|
181
|
+
"""
|
|
182
|
+
|
|
183
|
+
Scenario: Use Progress3 formatter with feature and three scenarios with a failing step
|
|
184
|
+
Given a file named "features/scenario_with_steps.feature" with:
|
|
185
|
+
"""
|
|
186
|
+
Feature: Feature with various results in scenarios
|
|
187
|
+
Scenario: First scenario with passing steps
|
|
188
|
+
Given a step passes
|
|
189
|
+
When second step passes
|
|
190
|
+
Then third step passes
|
|
191
|
+
And another step passes
|
|
192
|
+
But last step passes
|
|
193
|
+
|
|
194
|
+
Scenario: Second scenario with second failing step
|
|
195
|
+
Given a step passes
|
|
196
|
+
When second step fails
|
|
197
|
+
Then third step passes
|
|
198
|
+
And another step passes
|
|
199
|
+
But last step passes
|
|
200
|
+
|
|
201
|
+
Scenario: Third scenario with fourth failing step
|
|
202
|
+
Given a step passes
|
|
203
|
+
When second step passes
|
|
204
|
+
Then third step passes
|
|
205
|
+
And fourth step fails
|
|
206
|
+
But last step passes
|
|
207
|
+
"""
|
|
208
|
+
When I run "behave -f progress3 features/scenario_with_steps.feature"
|
|
209
|
+
Then it should fail with:
|
|
210
|
+
"""
|
|
211
|
+
0 features passed, 1 failed, 0 skipped
|
|
212
|
+
1 scenario passed, 2 failed, 0 skipped
|
|
213
|
+
9 steps passed, 2 failed, 4 skipped, 0 undefined
|
|
214
|
+
"""
|
|
215
|
+
And the command output should contain:
|
|
216
|
+
"""
|
|
217
|
+
Feature with various results in scenarios # features/scenario_with_steps.feature
|
|
218
|
+
First scenario with passing steps .....
|
|
219
|
+
Second scenario with second failing step .F
|
|
220
|
+
--------------------------------------------------------------------------------
|
|
221
|
+
FAILURE in step 'second step fails' (features/scenario_with_steps.feature:11):
|
|
222
|
+
Assertion Failed: XFAIL-STEP
|
|
223
|
+
--------------------------------------------------------------------------------
|
|
224
|
+
|
|
225
|
+
Third scenario with fourth failing step ...F
|
|
226
|
+
--------------------------------------------------------------------------------
|
|
227
|
+
FAILURE in step 'fourth step fails' (features/scenario_with_steps.feature:20):
|
|
228
|
+
Assertion Failed: XFAIL-STEP
|
|
229
|
+
--------------------------------------------------------------------------------
|
|
230
|
+
|
|
231
|
+
|
|
232
|
+
Failing scenarios:
|
|
233
|
+
features/scenario_with_steps.feature:9 Second scenario with second failing step
|
|
234
|
+
features/scenario_with_steps.feature:16 Third scenario with fourth failing step
|
|
235
|
+
"""
|
|
@@ -0,0 +1,296 @@
|
|
|
1
|
+
@sequential
|
|
2
|
+
Feature: Rerun Formatter
|
|
3
|
+
|
|
4
|
+
To simplify to run the scenarios that have failed during the last test run
|
|
5
|
+
As a tester
|
|
6
|
+
I want that behave generates the necessary information for me.
|
|
7
|
+
|
|
8
|
+
. SOLUTION:
|
|
9
|
+
.
|
|
10
|
+
. Put RerunFormatter into "behave.ini" configuration file:
|
|
11
|
+
.
|
|
12
|
+
. # -- file:behave.ini
|
|
13
|
+
. [behave]
|
|
14
|
+
. format = rerun
|
|
15
|
+
. outfiles = rerun.txt
|
|
16
|
+
.
|
|
17
|
+
. Then a "rerun.txt" file is generated during each test run
|
|
18
|
+
. that contains the file locations of the failing scenarios, like:
|
|
19
|
+
.
|
|
20
|
+
. # -- file:rerun.txt
|
|
21
|
+
. # RERUN: Failing scenarios during last test run.
|
|
22
|
+
. features/alice.feature:10
|
|
23
|
+
. features/alice.feature:42
|
|
24
|
+
.
|
|
25
|
+
. To rerun the failing scenarios of the last test run, use:
|
|
26
|
+
.
|
|
27
|
+
. behave @rerun.txt
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
@setup
|
|
31
|
+
Scenario: Feature Setup
|
|
32
|
+
Given a new working directory
|
|
33
|
+
And a file named "features/steps/steps.py" with:
|
|
34
|
+
"""
|
|
35
|
+
from behave import step
|
|
36
|
+
|
|
37
|
+
@step('a step passes')
|
|
38
|
+
def step_passes(context):
|
|
39
|
+
pass
|
|
40
|
+
|
|
41
|
+
@step('a step fails')
|
|
42
|
+
def step_fails(context):
|
|
43
|
+
assert False, "XFAIL-STEP"
|
|
44
|
+
"""
|
|
45
|
+
And a file named "features/alice.feature" with:
|
|
46
|
+
"""
|
|
47
|
+
Feature: Alice
|
|
48
|
+
|
|
49
|
+
Scenario: Passing
|
|
50
|
+
Given a step passes
|
|
51
|
+
When a step passes
|
|
52
|
+
Then a step passes
|
|
53
|
+
|
|
54
|
+
@xfail
|
|
55
|
+
Scenario: When-step fails
|
|
56
|
+
Given a step passes
|
|
57
|
+
When a step fails
|
|
58
|
+
Then a step passes
|
|
59
|
+
|
|
60
|
+
@xfail
|
|
61
|
+
Scenario: Then-step fails
|
|
62
|
+
Given a step passes
|
|
63
|
+
When a step passes
|
|
64
|
+
Then a step fails
|
|
65
|
+
"""
|
|
66
|
+
And a file named "features/bob.feature" with:
|
|
67
|
+
"""
|
|
68
|
+
Feature: Bob
|
|
69
|
+
|
|
70
|
+
@xfail
|
|
71
|
+
Scenario: Failing early
|
|
72
|
+
Given a step fails
|
|
73
|
+
When a step passes
|
|
74
|
+
Then a step fails
|
|
75
|
+
|
|
76
|
+
Scenario: Passing
|
|
77
|
+
Given a step passes
|
|
78
|
+
|
|
79
|
+
@xfail
|
|
80
|
+
Scenario: Failing
|
|
81
|
+
When a step passes
|
|
82
|
+
Then a step fails
|
|
83
|
+
"""
|
|
84
|
+
|
|
85
|
+
@usecase.step1
|
|
86
|
+
Scenario: Rerun file is generated when failures occur
|
|
87
|
+
When I run "behave -f rerun -o rerun.txt -f plain -T features/"
|
|
88
|
+
Then it should fail with:
|
|
89
|
+
"""
|
|
90
|
+
0 features passed, 2 failed, 0 skipped
|
|
91
|
+
2 scenarios passed, 4 failed, 0 skipped
|
|
92
|
+
"""
|
|
93
|
+
And the command output should contain:
|
|
94
|
+
"""
|
|
95
|
+
Failing scenarios:
|
|
96
|
+
features/alice.feature:9 When-step fails
|
|
97
|
+
features/alice.feature:15 Then-step fails
|
|
98
|
+
features/bob.feature:4 Failing early
|
|
99
|
+
features/bob.feature:13 Failing
|
|
100
|
+
"""
|
|
101
|
+
And the file "rerun.txt" should contain:
|
|
102
|
+
"""
|
|
103
|
+
# -- RERUN: 4 failing scenarios during last test run.
|
|
104
|
+
features/alice.feature:9
|
|
105
|
+
features/alice.feature:15
|
|
106
|
+
features/bob.feature:4
|
|
107
|
+
features/bob.feature:13
|
|
108
|
+
"""
|
|
109
|
+
|
|
110
|
+
@usecase.step2
|
|
111
|
+
Scenario: Use rerun file during next test run to test only failing scenarios
|
|
112
|
+
Given a file named "rerun.txt" with:
|
|
113
|
+
"""
|
|
114
|
+
# -- RERUN: 4 failing scenarios during last test run.
|
|
115
|
+
features/alice.feature:9
|
|
116
|
+
features/alice.feature:15
|
|
117
|
+
features/bob.feature:4
|
|
118
|
+
features/bob.feature:13
|
|
119
|
+
"""
|
|
120
|
+
When I run "behave -f plain -T --no-skipped @rerun.txt"
|
|
121
|
+
Then it should fail with:
|
|
122
|
+
"""
|
|
123
|
+
0 features passed, 2 failed, 0 skipped
|
|
124
|
+
0 scenarios passed, 4 failed, 2 skipped
|
|
125
|
+
"""
|
|
126
|
+
And the command output should contain:
|
|
127
|
+
"""
|
|
128
|
+
Feature: Alice
|
|
129
|
+
|
|
130
|
+
Scenario: When-step fails
|
|
131
|
+
Given a step passes ... passed
|
|
132
|
+
When a step fails ... failed
|
|
133
|
+
Assertion Failed: XFAIL-STEP
|
|
134
|
+
|
|
135
|
+
Scenario: Then-step fails
|
|
136
|
+
Given a step passes ... passed
|
|
137
|
+
When a step passes ... passed
|
|
138
|
+
Then a step fails ... failed
|
|
139
|
+
Assertion Failed: XFAIL-STEP
|
|
140
|
+
|
|
141
|
+
Feature: Bob
|
|
142
|
+
|
|
143
|
+
Scenario: Failing early
|
|
144
|
+
Given a step fails ... failed
|
|
145
|
+
Assertion Failed: XFAIL-STEP
|
|
146
|
+
|
|
147
|
+
Scenario: Failing
|
|
148
|
+
When a step passes ... passed
|
|
149
|
+
Then a step fails ... failed
|
|
150
|
+
Assertion Failed: XFAIL-STEP
|
|
151
|
+
"""
|
|
152
|
+
And the command output should contain:
|
|
153
|
+
"""
|
|
154
|
+
Failing scenarios:
|
|
155
|
+
features/alice.feature:9 When-step fails
|
|
156
|
+
features/alice.feature:15 Then-step fails
|
|
157
|
+
features/bob.feature:4 Failing early
|
|
158
|
+
features/bob.feature:13 Failing
|
|
159
|
+
"""
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
Scenario: Rerun file is deleted when no failures occur
|
|
163
|
+
|
|
164
|
+
The rerun output file should be deleted
|
|
165
|
+
if the test run was successful and no failures occurred.
|
|
166
|
+
|
|
167
|
+
Given an empty file named "rerun.txt"
|
|
168
|
+
When I run "behave -f rerun -o rerun.txt -f plain -T --no-skipped --tags=~@xfail features/"
|
|
169
|
+
Then it should pass with:
|
|
170
|
+
"""
|
|
171
|
+
2 features passed, 0 failed, 0 skipped
|
|
172
|
+
2 scenarios passed, 0 failed, 4 skipped
|
|
173
|
+
"""
|
|
174
|
+
And a file named "rerun.txt" should not exist
|
|
175
|
+
|
|
176
|
+
|
|
177
|
+
Scenario: Use RerunFormatter with output=stdout
|
|
178
|
+
When I run "behave -f rerun -f plain -T --no-skipped features/"
|
|
179
|
+
Then it should fail with:
|
|
180
|
+
"""
|
|
181
|
+
0 features passed, 2 failed, 0 skipped
|
|
182
|
+
2 scenarios passed, 4 failed, 0 skipped
|
|
183
|
+
"""
|
|
184
|
+
And the command output should contain:
|
|
185
|
+
"""
|
|
186
|
+
# -- RERUN: 4 failing scenarios during last test run.
|
|
187
|
+
features/alice.feature:9
|
|
188
|
+
features/alice.feature:15
|
|
189
|
+
features/bob.feature:4
|
|
190
|
+
features/bob.feature:13
|
|
191
|
+
"""
|
|
192
|
+
|
|
193
|
+
|
|
194
|
+
@with.behave_configfile
|
|
195
|
+
Scenario: Use rerun file with RerunFormatter in behave configuration file
|
|
196
|
+
Given a file named "behave.ini" with:
|
|
197
|
+
"""
|
|
198
|
+
[behave]
|
|
199
|
+
format = rerun
|
|
200
|
+
outfiles = rerun.txt
|
|
201
|
+
show_timings = false
|
|
202
|
+
show_skipped = false
|
|
203
|
+
"""
|
|
204
|
+
When I run "behave -f plain features/"
|
|
205
|
+
Then it should fail with:
|
|
206
|
+
"""
|
|
207
|
+
0 features passed, 2 failed, 0 skipped
|
|
208
|
+
2 scenarios passed, 4 failed, 0 skipped
|
|
209
|
+
"""
|
|
210
|
+
And the file "rerun.txt" should contain:
|
|
211
|
+
"""
|
|
212
|
+
# -- RERUN: 4 failing scenarios during last test run.
|
|
213
|
+
features/alice.feature:9
|
|
214
|
+
features/alice.feature:15
|
|
215
|
+
features/bob.feature:4
|
|
216
|
+
features/bob.feature:13
|
|
217
|
+
"""
|
|
218
|
+
When I run "behave -f plain @rerun.txt"
|
|
219
|
+
Then it should fail with:
|
|
220
|
+
"""
|
|
221
|
+
0 features passed, 2 failed, 0 skipped
|
|
222
|
+
0 scenarios passed, 4 failed, 2 skipped
|
|
223
|
+
"""
|
|
224
|
+
And the command output should contain:
|
|
225
|
+
"""
|
|
226
|
+
Feature: Alice
|
|
227
|
+
|
|
228
|
+
Scenario: When-step fails
|
|
229
|
+
Given a step passes ... passed
|
|
230
|
+
When a step fails ... failed
|
|
231
|
+
Assertion Failed: XFAIL-STEP
|
|
232
|
+
|
|
233
|
+
Scenario: Then-step fails
|
|
234
|
+
Given a step passes ... passed
|
|
235
|
+
When a step passes ... passed
|
|
236
|
+
Then a step fails ... failed
|
|
237
|
+
Assertion Failed: XFAIL-STEP
|
|
238
|
+
|
|
239
|
+
Feature: Bob
|
|
240
|
+
|
|
241
|
+
Scenario: Failing early
|
|
242
|
+
Given a step fails ... failed
|
|
243
|
+
Assertion Failed: XFAIL-STEP
|
|
244
|
+
|
|
245
|
+
Scenario: Failing
|
|
246
|
+
When a step passes ... passed
|
|
247
|
+
Then a step fails ... failed
|
|
248
|
+
Assertion Failed: XFAIL-STEP
|
|
249
|
+
"""
|
|
250
|
+
And the file "rerun.txt" should contain:
|
|
251
|
+
"""
|
|
252
|
+
# -- RERUN: 4 failing scenarios during last test run.
|
|
253
|
+
features/alice.feature:9
|
|
254
|
+
features/alice.feature:15
|
|
255
|
+
features/bob.feature:4
|
|
256
|
+
features/bob.feature:13
|
|
257
|
+
"""
|
|
258
|
+
|
|
259
|
+
@sad.case
|
|
260
|
+
@with.behave_configfile
|
|
261
|
+
Scenario: Two RerunFormatter use same output file
|
|
262
|
+
Given a file named "behave.ini" with:
|
|
263
|
+
"""
|
|
264
|
+
[behave]
|
|
265
|
+
format = rerun
|
|
266
|
+
outfiles = rerun.txt
|
|
267
|
+
"""
|
|
268
|
+
When I run "behave -f rerun -o rerun.txt -f plain features/"
|
|
269
|
+
Then it should fail with:
|
|
270
|
+
"""
|
|
271
|
+
0 features passed, 2 failed, 0 skipped
|
|
272
|
+
2 scenarios passed, 4 failed, 0 skipped
|
|
273
|
+
"""
|
|
274
|
+
And the file "rerun.txt" should contain:
|
|
275
|
+
"""
|
|
276
|
+
# -- RERUN: 4 failing scenarios during last test run.
|
|
277
|
+
features/alice.feature:9
|
|
278
|
+
features/alice.feature:15
|
|
279
|
+
features/bob.feature:4
|
|
280
|
+
features/bob.feature:13
|
|
281
|
+
"""
|
|
282
|
+
But the file "rerun.txt" should not contain:
|
|
283
|
+
"""
|
|
284
|
+
# -- RERUN: 4 failing scenarios during last test run.
|
|
285
|
+
features/alice.feature:9
|
|
286
|
+
features/alice.feature:15
|
|
287
|
+
features/bob.feature:4
|
|
288
|
+
features/bob.feature:13
|
|
289
|
+
|
|
290
|
+
# -- RERUN: 4 failing scenarios during last test run.
|
|
291
|
+
features/alice.feature:9
|
|
292
|
+
features/alice.feature:15
|
|
293
|
+
features/bob.feature:4
|
|
294
|
+
features/bob.feature:13
|
|
295
|
+
"""
|
|
296
|
+
And note that "the second RerunFormatter overwrites the output of the first one"
|