cucumber 3.0.1 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/CHANGELOG.md +84 -4
- data/CONTRIBUTING.md +3 -4
- data/README.md +12 -12
- data/lib/autotest/cucumber.rb +1 -0
- data/lib/autotest/cucumber_mixin.rb +1 -0
- data/lib/autotest/cucumber_rails.rb +1 -0
- data/lib/autotest/cucumber_rails_rspec.rb +1 -0
- data/lib/autotest/cucumber_rails_rspec2.rb +1 -0
- data/lib/autotest/cucumber_rspec.rb +1 -0
- data/lib/autotest/cucumber_rspec2.rb +1 -0
- data/lib/autotest/discover.rb +1 -0
- data/lib/cucumber.rb +1 -0
- data/lib/cucumber/cli/configuration.rb +1 -0
- data/lib/cucumber/cli/main.rb +2 -2
- data/lib/cucumber/cli/options.rb +63 -55
- data/lib/cucumber/cli/profile_loader.rb +5 -7
- data/lib/cucumber/cli/rerun_file.rb +1 -0
- data/lib/cucumber/configuration.rb +8 -7
- data/lib/cucumber/constantize.rb +6 -5
- data/lib/cucumber/core_ext/string.rb +1 -0
- data/lib/cucumber/deprecate.rb +1 -1
- data/lib/cucumber/encoding.rb +2 -1
- data/lib/cucumber/errors.rb +2 -1
- data/lib/cucumber/events.rb +1 -2
- data/lib/cucumber/events/gherkin_source_read.rb +1 -4
- data/lib/cucumber/events/step_activated.rb +4 -5
- data/lib/cucumber/events/step_definition_registered.rb +4 -8
- data/lib/cucumber/events/test_case_finished.rb +0 -4
- data/lib/cucumber/events/test_case_started.rb +0 -4
- data/lib/cucumber/events/test_run_finished.rb +2 -3
- data/lib/cucumber/events/test_run_started.rb +2 -4
- data/lib/cucumber/events/test_step_finished.rb +0 -6
- data/lib/cucumber/events/test_step_started.rb +1 -7
- data/lib/cucumber/file_specs.rb +2 -1
- data/lib/cucumber/filters.rb +1 -0
- data/lib/cucumber/filters/activate_steps.rb +1 -1
- data/lib/cucumber/filters/apply_after_hooks.rb +1 -0
- data/lib/cucumber/filters/apply_after_step_hooks.rb +1 -0
- data/lib/cucumber/filters/apply_around_hooks.rb +1 -0
- data/lib/cucumber/filters/apply_before_hooks.rb +1 -0
- data/lib/cucumber/filters/broadcast_test_run_started_event.rb +2 -1
- data/lib/cucumber/filters/gated_receiver.rb +1 -2
- data/lib/cucumber/filters/prepare_world.rb +2 -5
- data/lib/cucumber/filters/quit.rb +2 -4
- data/lib/cucumber/filters/randomizer.rb +6 -7
- data/lib/cucumber/filters/retry.rb +2 -2
- data/lib/cucumber/filters/tag_limits.rb +2 -2
- data/lib/cucumber/filters/tag_limits/test_case_index.rb +1 -2
- data/lib/cucumber/filters/tag_limits/verifier.rb +1 -2
- data/lib/cucumber/formatter/ansicolor.rb +13 -12
- data/lib/cucumber/formatter/backtrace_filter.rb +1 -2
- data/lib/cucumber/formatter/console.rb +11 -12
- data/lib/cucumber/formatter/console_counts.rb +4 -4
- data/lib/cucumber/formatter/console_issues.rb +3 -3
- data/lib/cucumber/formatter/duration.rb +1 -0
- data/lib/cucumber/formatter/duration_extractor.rb +1 -1
- data/lib/cucumber/formatter/fail_fast.rb +9 -6
- data/lib/cucumber/formatter/fanout.rb +1 -3
- data/lib/cucumber/formatter/hook_query_visitor.rb +1 -0
- data/lib/cucumber/formatter/html.rb +28 -32
- data/lib/cucumber/formatter/html_builder.rb +3 -2
- data/lib/cucumber/formatter/http_io.rb +146 -0
- data/lib/cucumber/formatter/ignore_missing_messages.rb +1 -3
- data/lib/cucumber/formatter/interceptor.rb +18 -5
- data/lib/cucumber/formatter/io.rb +18 -11
- data/lib/cucumber/formatter/json.rb +11 -4
- data/lib/cucumber/formatter/json_pretty.rb +1 -1
- data/lib/cucumber/formatter/junit.rb +22 -17
- data/lib/cucumber/formatter/pretty.rb +4 -3
- data/lib/cucumber/formatter/progress.rb +3 -2
- data/lib/cucumber/formatter/rerun.rb +2 -1
- data/lib/cucumber/formatter/stepdefs.rb +1 -0
- data/lib/cucumber/formatter/steps.rb +2 -2
- data/lib/cucumber/formatter/summary.rb +1 -2
- data/lib/cucumber/formatter/unicode.rb +2 -2
- data/lib/cucumber/formatter/usage.rb +22 -19
- data/lib/cucumber/gherkin/data_table_parser.rb +1 -0
- data/lib/cucumber/gherkin/formatter/ansi_escapes.rb +86 -85
- data/lib/cucumber/gherkin/formatter/escaping.rb +13 -12
- data/lib/cucumber/gherkin/i18n.rb +1 -0
- data/lib/cucumber/gherkin/steps_parser.rb +1 -0
- data/lib/cucumber/glue/dsl.rb +1 -0
- data/lib/cucumber/glue/hook.rb +1 -0
- data/lib/cucumber/glue/invoke_in_world.rb +3 -3
- data/lib/cucumber/glue/proto_world.rb +10 -9
- data/lib/cucumber/glue/registry_and_more.rb +13 -12
- data/lib/cucumber/glue/snippet.rb +1 -5
- data/lib/cucumber/glue/step_definition.rb +10 -10
- data/lib/cucumber/glue/world_factory.rb +1 -3
- data/lib/cucumber/hooks.rb +13 -3
- data/lib/cucumber/load_path.rb +1 -0
- data/lib/cucumber/multiline_argument.rb +3 -3
- data/lib/cucumber/multiline_argument/data_table.rb +16 -20
- data/lib/cucumber/multiline_argument/data_table/diff_matrices.rb +7 -11
- data/lib/cucumber/multiline_argument/doc_string.rb +1 -0
- data/lib/cucumber/platform.rb +2 -1
- data/lib/cucumber/project_initializer.rb +1 -1
- data/lib/cucumber/rake/task.rb +8 -5
- data/lib/cucumber/rspec/disable_option_parser.rb +1 -0
- data/lib/cucumber/rspec/doubles.rb +1 -0
- data/lib/cucumber/running_test_case.rb +2 -1
- data/lib/cucumber/runtime.rb +6 -6
- data/lib/cucumber/runtime/after_hooks.rb +1 -0
- data/lib/cucumber/runtime/before_hooks.rb +1 -0
- data/lib/cucumber/runtime/for_programming_languages.rb +8 -7
- data/lib/cucumber/runtime/step_hooks.rb +2 -0
- data/lib/cucumber/runtime/support_code.rb +3 -7
- data/lib/cucumber/runtime/user_interface.rb +2 -3
- data/lib/cucumber/step_argument.rb +1 -0
- data/lib/cucumber/step_definition_light.rb +2 -1
- data/lib/cucumber/step_definitions.rb +2 -1
- data/lib/cucumber/step_match.rb +9 -8
- data/lib/cucumber/step_match_search.rb +8 -9
- data/lib/cucumber/term/ansicolor.rb +30 -30
- data/lib/cucumber/unit.rb +1 -0
- data/lib/cucumber/version +1 -1
- data/lib/simplecov_setup.rb +1 -0
- metadata +64 -659
- data/.coveralls.yml +0 -1
- data/.cucumberproignore +0 -6
- data/.gitattributes +0 -32
- data/.github/ISSUE_TEMPLATE.md +0 -48
- data/.github/PULL_REQUEST_TEMPLATE.md +0 -40
- data/.rspec +0 -1
- data/.rubocop.yml +0 -13
- data/.rubocop_todo.yml +0 -991
- data/.ruby-gemset +0 -1
- data/.travis.yml +0 -70
- data/.yardopts +0 -1
- data/Gemfile +0 -28
- data/Rakefile +0 -32
- data/appveyor.yml +0 -27
- data/cucumber.gemspec +0 -52
- data/cucumber.yml +0 -19
- data/examples/i18n/README.textile +0 -3
- data/examples/i18n/Rakefile +0 -33
- data/examples/i18n/ar/Rakefile +0 -6
- data/examples/i18n/ar/features/addition.feature +0 -17
- data/examples/i18n/ar/features/step_definitions/calculator_steps.rb +0 -29
- data/examples/i18n/ar/lib/calculator.rb +0 -11
- data/examples/i18n/bg/Rakefile +0 -6
- data/examples/i18n/bg/features/addition.feature +0 -12
- data/examples/i18n/bg/features/consecutive_calculations.feature +0 -19
- data/examples/i18n/bg/features/division.feature +0 -17
- data/examples/i18n/bg/features/step_definitions/calculator_steps.rb +0 -24
- data/examples/i18n/bg/features/support/env.rb +0 -10
- data/examples/i18n/bg/features/support/world.rb +0 -8
- data/examples/i18n/bg/lib/calculator.rb +0 -25
- data/examples/i18n/ca/Rakefile +0 -6
- data/examples/i18n/ca/features/step_definitions/calculator_steps.rb +0 -26
- data/examples/i18n/ca/features/suma.feature +0 -17
- data/examples/i18n/ca/lib/calculadora.rb +0 -16
- data/examples/i18n/cs/Rakefile +0 -6
- data/examples/i18n/cs/features/addition.feature +0 -17
- data/examples/i18n/cs/features/division.feature +0 -11
- data/examples/i18n/cs/features/step_definitions/calculator_steps.rb +0 -29
- data/examples/i18n/cs/lib/calculator.rb +0 -14
- data/examples/i18n/da/Rakefile +0 -6
- data/examples/i18n/da/features/sammenlaegning.feature +0 -18
- data/examples/i18n/da/features/step_definitions/lommeregner_steps.rb +0 -29
- data/examples/i18n/da/lib/lommeregner.rb +0 -11
- data/examples/i18n/de/Rakefile +0 -6
- data/examples/i18n/de/features/addition.feature +0 -17
- data/examples/i18n/de/features/division.feature +0 -10
- data/examples/i18n/de/features/step_definitions/calculator_steps.rb +0 -29
- data/examples/i18n/de/lib/calculator.rb +0 -14
- data/examples/i18n/el/Rakefile +0 -6
- data/examples/i18n/el/features/addition.feature +0 -17
- data/examples/i18n/el/features/division.feature +0 -10
- data/examples/i18n/el/features/step_definitions/calculator_steps.rb +0 -29
- data/examples/i18n/el/lib/calculator.rb +0 -14
- data/examples/i18n/en-lol/Rakefile +0 -4
- data/examples/i18n/en-lol/features/step_definitions/cucumbrz_steps.rb +0 -16
- data/examples/i18n/en-lol/features/stuffing.feature +0 -8
- data/examples/i18n/en-lol/features/support/env.rb +0 -11
- data/examples/i18n/en-lol/lib/basket.rb +0 -12
- data/examples/i18n/en-lol/lib/belly.rb +0 -11
- data/examples/i18n/en/Rakefile +0 -6
- data/examples/i18n/en/features/addition.feature +0 -17
- data/examples/i18n/en/features/division.feature +0 -10
- data/examples/i18n/en/features/step_definitions/calculator_steps.rb +0 -29
- data/examples/i18n/en/lib/calculator.rb +0 -14
- data/examples/i18n/eo/Rakefile +0 -6
- data/examples/i18n/eo/features/adicio.feature +0 -17
- data/examples/i18n/eo/features/divido.feature +0 -10
- data/examples/i18n/eo/features/step_definitions/calculator_steps.rb +0 -29
- data/examples/i18n/eo/lib/calculator.rb +0 -14
- data/examples/i18n/es/Rakefile +0 -6
- data/examples/i18n/es/features/adicion.feature +0 -17
- data/examples/i18n/es/features/step_definitions/calculador_steps.rb +0 -26
- data/examples/i18n/es/lib/calculador.rb +0 -14
- data/examples/i18n/et/Rakefile +0 -6
- data/examples/i18n/et/features/jagamine.feature +0 -10
- data/examples/i18n/et/features/liitmine.feature +0 -17
- data/examples/i18n/et/features/step_definitions/kalkulaator_steps.rb +0 -29
- data/examples/i18n/et/lib/kalkulaator.rb +0 -14
- data/examples/i18n/fi/Rakefile +0 -6
- data/examples/i18n/fi/features/jakolasku.feature +0 -10
- data/examples/i18n/fi/features/step_definitions/laskin_steps.rb +0 -29
- data/examples/i18n/fi/features/yhteenlasku.feature +0 -17
- data/examples/i18n/fi/lib/laskin.rb +0 -14
- data/examples/i18n/fr/Rakefile +0 -8
- data/examples/i18n/fr/features/addition.feature +0 -18
- data/examples/i18n/fr/features/addition2.feature +0 -17
- data/examples/i18n/fr/features/step_definitions/calculatrice_steps.rb +0 -32
- data/examples/i18n/fr/features/support/env.rb +0 -10
- data/examples/i18n/fr/lib/calculatrice.rb +0 -10
- data/examples/i18n/he/Rakefile +0 -6
- data/examples/i18n/he/features/addition.feature +0 -17
- data/examples/i18n/he/features/division.feature +0 -10
- data/examples/i18n/he/features/step_definitions/calculator_steps.rb +0 -29
- data/examples/i18n/he/lib/calculator.rb +0 -15
- data/examples/i18n/hi/Rakefile +0 -6
- data/examples/i18n/hi/features/addition.feature +0 -16
- data/examples/i18n/hi/features/division.feature +0 -10
- data/examples/i18n/hi/features/step_definitions/calculator_steps.rb +0 -29
- data/examples/i18n/hi/lib/calculator.rb +0 -15
- data/examples/i18n/ht/Rakefile +0 -6
- data/examples/i18n/ht/features/adisyon.feature +0 -17
- data/examples/i18n/ht/features/divizyon.feature +0 -10
- data/examples/i18n/ht/features/step_definitions/kalkilatris_steps.rb +0 -29
- data/examples/i18n/ht/lib/kalkilatris.rb +0 -14
- data/examples/i18n/hu/Rakefile +0 -6
- data/examples/i18n/hu/features/osszeadas.feature +0 -17
- data/examples/i18n/hu/features/osztas.feature +0 -10
- data/examples/i18n/hu/features/step_definitions/calculator_steps.rb +0 -30
- data/examples/i18n/hu/lib/calculator.rb +0 -14
- data/examples/i18n/id/Rakefile +0 -6
- data/examples/i18n/id/features/addition.feature +0 -17
- data/examples/i18n/id/features/division.feature +0 -10
- data/examples/i18n/id/features/step_definitions/calculator_steps.rb +0 -29
- data/examples/i18n/id/lib/calculator.rb +0 -14
- data/examples/i18n/it/Rakefile +0 -6
- data/examples/i18n/it/features/somma.feature +0 -11
- data/examples/i18n/it/features/step_definitions/calcolatrice_steps.rb +0 -29
- data/examples/i18n/it/lib/calcolatrice.rb +0 -11
- data/examples/i18n/ja/Rakefile +0 -6
- data/examples/i18n/ja/features/addition.feature +0 -17
- data/examples/i18n/ja/features/division.feature +0 -10
- data/examples/i18n/ja/features/step_definitions/calculator_steps.rb +0 -19
- data/examples/i18n/ja/features/support/env.rb +0 -10
- data/examples/i18n/ja/lib/calculator.rb +0 -14
- data/examples/i18n/ko/Rakefile +0 -6
- data/examples/i18n/ko/features/addition.feature +0 -17
- data/examples/i18n/ko/features/division.feature +0 -11
- data/examples/i18n/ko/features/step_definitions/calculator_steps.rb +0 -29
- data/examples/i18n/ko/lib/calculator.rb +0 -14
- data/examples/i18n/lt/Rakefile +0 -6
- data/examples/i18n/lt/features/addition.feature +0 -17
- data/examples/i18n/lt/features/division.feature +0 -10
- data/examples/i18n/lt/features/step_definitions/calculator_steps.rb +0 -29
- data/examples/i18n/lt/lib/calculator.rb +0 -14
- data/examples/i18n/lv/Rakefile +0 -6
- data/examples/i18n/lv/features/addition.feature +0 -17
- data/examples/i18n/lv/features/division.feature +0 -10
- data/examples/i18n/lv/features/step_definitions/calculator_steps.rb +0 -29
- data/examples/i18n/lv/lib/calculator.rb +0 -14
- data/examples/i18n/no/Rakefile +0 -6
- data/examples/i18n/no/features/step_definitions/kalkulator_steps.rb +0 -17
- data/examples/i18n/no/features/summering.feature +0 -19
- data/examples/i18n/no/features/support/env.rb +0 -11
- data/examples/i18n/no/lib/kalkulator.rb +0 -11
- data/examples/i18n/pl/Rakefile +0 -6
- data/examples/i18n/pl/features/addition.feature +0 -17
- data/examples/i18n/pl/features/division.feature +0 -10
- data/examples/i18n/pl/features/step_definitions/calculator_steps.rb +0 -29
- data/examples/i18n/pl/features/support/env.rb +0 -10
- data/examples/i18n/pl/lib/calculator.rb +0 -14
- data/examples/i18n/pt/Rakefile +0 -6
- data/examples/i18n/pt/features/adicao.feature +0 -11
- data/examples/i18n/pt/features/step_definitions/calculadora_steps.rb +0 -20
- data/examples/i18n/pt/features/support/env.rb +0 -10
- data/examples/i18n/pt/lib/calculadora.rb +0 -10
- data/examples/i18n/ro/Rakefile +0 -6
- data/examples/i18n/ro/features/adunare.feature +0 -12
- data/examples/i18n/ro/features/step_definitions/calculator_steps.rb +0 -26
- data/examples/i18n/ro/lib/calculator.rb +0 -11
- data/examples/i18n/ru/Rakefile +0 -6
- data/examples/i18n/ru/features/addition.feature +0 -11
- data/examples/i18n/ru/features/consecutive_calculations.feature +0 -17
- data/examples/i18n/ru/features/division.feature +0 -16
- data/examples/i18n/ru/features/step_definitions/calculator_steps.rb +0 -19
- data/examples/i18n/ru/features/support/env.rb +0 -10
- data/examples/i18n/ru/features/support/world.rb +0 -8
- data/examples/i18n/ru/lib/calculator.rb +0 -25
- data/examples/i18n/sk/Rakefile +0 -6
- data/examples/i18n/sk/features/addition.feature +0 -17
- data/examples/i18n/sk/features/division.feature +0 -10
- data/examples/i18n/sk/features/step_definitions/calculator_steps.rb +0 -29
- data/examples/i18n/sk/lib/calculator.rb +0 -14
- data/examples/i18n/sr-Cyrl/Rakefile +0 -6
- data/examples/i18n/sr-Cyrl/features/sabiranje.feature +0 -18
- data/examples/i18n/sr-Cyrl/features/step_definitions/calculator_steps.rb +0 -20
- data/examples/i18n/sr-Cyrl/features/support/env.rb +0 -10
- data/examples/i18n/sr-Cyrl/lib/calculator.rb +0 -12
- data/examples/i18n/sr-Latn/Rakefile +0 -6
- data/examples/i18n/sr-Latn/features/sabiranje.feature +0 -18
- data/examples/i18n/sr-Latn/features/step_definitions/calculator_steps.rb +0 -29
- data/examples/i18n/sr-Latn/lib/calculator.rb +0 -12
- data/examples/i18n/sv/Rakefile +0 -6
- data/examples/i18n/sv/features/step_definitions/kalkulator_steps.rb +0 -29
- data/examples/i18n/sv/features/summering.feature +0 -18
- data/examples/i18n/sv/lib/kalkulator.rb +0 -11
- data/examples/i18n/tr/Rakefile +0 -6
- data/examples/i18n/tr/features/bolme.feature +0 -10
- data/examples/i18n/tr/features/step_definitions/hesap_makinesi_adimlari.rb +0 -29
- data/examples/i18n/tr/features/toplama.feature +0 -18
- data/examples/i18n/tr/lib/hesap_makinesi.rb +0 -15
- data/examples/i18n/uk/Rakefile +0 -6
- data/examples/i18n/uk/features/addition.feature +0 -11
- data/examples/i18n/uk/features/consecutive_calculations.feature +0 -17
- data/examples/i18n/uk/features/division.feature +0 -16
- data/examples/i18n/uk/features/step_definitions/calculator_steps.rb +0 -19
- data/examples/i18n/uk/features/support/env.rb +0 -10
- data/examples/i18n/uk/features/support/world.rb +0 -8
- data/examples/i18n/uk/lib/calculator.rb +0 -25
- data/examples/i18n/uz/Rakefile +0 -6
- data/examples/i18n/uz/features/addition.feature +0 -10
- data/examples/i18n/uz/features/consecutive_calculations.feature +0 -17
- data/examples/i18n/uz/features/division.feature +0 -17
- data/examples/i18n/uz/features/step_definitions/calculator_steps.rb +0 -19
- data/examples/i18n/uz/features/support/env.rb +0 -10
- data/examples/i18n/uz/features/support/world.rb +0 -8
- data/examples/i18n/uz/lib/calculator.rb +0 -25
- data/examples/i18n/zh-CN/Rakefile +0 -4
- data/examples/i18n/zh-CN/features/addition.feature +0 -18
- data/examples/i18n/zh-CN/features/step_definitions/calculator_steps.rb +0 -31
- data/examples/i18n/zh-CN/lib/calculator.rb +0 -10
- data/examples/i18n/zh-TW/Rakefile +0 -4
- data/examples/i18n/zh-TW/features/addition.feature +0 -17
- data/examples/i18n/zh-TW/features/division.feature +0 -11
- data/examples/i18n/zh-TW/features/step_definitions/calculator_steps.rb +0 -29
- data/examples/i18n/zh-TW/lib/calculator.rb +0 -14
- data/examples/rspec_doubles/Rakefile +0 -4
- data/examples/rspec_doubles/features/mocking.feature +0 -9
- data/examples/rspec_doubles/features/step_definitions/calvin_steps.rb +0 -19
- data/examples/rspec_doubles/features/support/env.rb +0 -12
- data/examples/sinatra/README.textile +0 -13
- data/examples/sinatra/Rakefile +0 -6
- data/examples/sinatra/app.rb +0 -14
- data/examples/sinatra/features/add.feature +0 -11
- data/examples/sinatra/features/step_definitions/add_steps.rb +0 -15
- data/examples/sinatra/features/support/env.rb +0 -15
- data/examples/sinatra/views/add.erb +0 -7
- data/examples/sinatra/views/layout.erb +0 -8
- data/examples/tcl/README.textile +0 -11
- data/examples/tcl/Rakefile +0 -6
- data/examples/tcl/features/fibonnacci.feature +0 -17
- data/examples/tcl/features/step_definitions/fib_steps.rb +0 -7
- data/examples/tcl/features/support/env.rb +0 -7
- data/examples/tcl/src/fib.tcl +0 -3
- data/examples/test_unit/Gemfile +0 -4
- data/examples/test_unit/Rakefile +0 -6
- data/examples/test_unit/features/step_definitions/test_unit_steps.rb +0 -20
- data/examples/test_unit/features/test_unit.feature +0 -9
- data/examples/watir/README.textile +0 -16
- data/examples/watir/Rakefile +0 -12
- data/examples/watir/cucumber.yml +0 -1
- data/examples/watir/features/search.feature +0 -12
- data/examples/watir/features/step_definitions/search_steps.rb +0 -27
- data/examples/watir/features/support/env.rb +0 -39
- data/examples/watir/features/support/screenshots.rb +0 -47
- data/features/docs/api/list_step_defs_as_json.feature +0 -64
- data/features/docs/api/listen_for_events.feature +0 -59
- data/features/docs/api/run_cli_main_with_existing_runtime.feature +0 -27
- data/features/docs/cli/backtraces.feature +0 -36
- data/features/docs/cli/dry_run.feature +0 -73
- data/features/docs/cli/exclude_files.feature +0 -18
- data/features/docs/cli/execute_with_tag_filter.feature +0 -119
- data/features/docs/cli/fail_fast.feature +0 -48
- data/features/docs/cli/finding_steps.feature +0 -28
- data/features/docs/cli/help.feature +0 -8
- data/features/docs/cli/i18n.feature +0 -42
- data/features/docs/cli/randomize.feature +0 -140
- data/features/docs/cli/require.feature +0 -27
- data/features/docs/cli/retry_failing_tests.feature +0 -92
- data/features/docs/cli/run_scenarios_matching_name.feature +0 -105
- data/features/docs/cli/run_specific_scenarios.feature +0 -77
- data/features/docs/cli/showing_differences.feature +0 -43
- data/features/docs/cli/specifying_multiple_formatters.feature +0 -68
- data/features/docs/cli/strict_mode.feature +0 -70
- data/features/docs/defining_steps/ambiguous_steps.feature +0 -89
- data/features/docs/defining_steps/nested_steps.feature +0 -181
- data/features/docs/defining_steps/nested_steps_i18n.feature +0 -37
- data/features/docs/defining_steps/nested_steps_with_second_arg.feature +0 -56
- data/features/docs/defining_steps/one_line_step_definitions.feature +0 -65
- data/features/docs/defining_steps/printing_messages.feature +0 -147
- data/features/docs/defining_steps/skip_scenario.feature +0 -31
- data/features/docs/defining_steps/snippets.feature +0 -56
- data/features/docs/defining_steps/table_diffing.feature +0 -50
- data/features/docs/events/gherkin_source_read_event.feature +0 -43
- data/features/docs/events/step_activated_event.feature +0 -36
- data/features/docs/events/step_definition_registered_event.feature +0 -29
- data/features/docs/events/test_case_finished_event.feature +0 -35
- data/features/docs/events/test_case_started_event.feature +0 -54
- data/features/docs/events/test_run_finished_event.feature +0 -40
- data/features/docs/events/test_run_started_event.feature +0 -41
- data/features/docs/events/test_step_finished_event.feature +0 -47
- data/features/docs/events/test_step_started_event.feature +0 -43
- data/features/docs/exception_in_after_hook.feature +0 -127
- data/features/docs/exception_in_after_step_hook.feature +0 -104
- data/features/docs/exception_in_around_hook.feature +0 -80
- data/features/docs/exception_in_before_hook.feature +0 -98
- data/features/docs/extending_cucumber/custom_filter.feature +0 -29
- data/features/docs/extending_cucumber/custom_formatter.feature +0 -94
- data/features/docs/formatters/api_methods.feature +0 -37
- data/features/docs/formatters/html_formatter.feature +0 -91
- data/features/docs/formatters/json_formatter.feature +0 -767
- data/features/docs/formatters/junit_formatter.feature +0 -455
- data/features/docs/formatters/pretty_formatter.feature +0 -74
- data/features/docs/formatters/progress_formatter.feature +0 -32
- data/features/docs/formatters/rerun_formatter.feature +0 -190
- data/features/docs/formatters/summary_formatter.feature +0 -35
- data/features/docs/formatters/usage_formatter.feature +0 -101
- data/features/docs/getting_started.feature +0 -28
- data/features/docs/gherkin/background.feature +0 -548
- data/features/docs/gherkin/doc_strings.feature +0 -76
- data/features/docs/gherkin/expand_option_for_outlines.feature +0 -47
- data/features/docs/gherkin/language_from_header.feature +0 -32
- data/features/docs/gherkin/outlines.feature +0 -158
- data/features/docs/gherkin/unicode_table.feature +0 -33
- data/features/docs/gherkin/using_descriptions.feature +0 -83
- data/features/docs/gherkin/using_star_notation.feature +0 -37
- data/features/docs/iso-8859-1.feature +0 -6
- data/features/docs/post_configuration_hook.feature +0 -33
- data/features/docs/profiles.feature +0 -120
- data/features/docs/rake_task.feature +0 -146
- data/features/docs/raketask.feature +0 -46
- data/features/docs/work_in_progress.feature +0 -157
- data/features/docs/writing_support_code/after_hooks.feature +0 -102
- data/features/docs/writing_support_code/after_step_hooks.feature +0 -55
- data/features/docs/writing_support_code/around_hooks.feature +0 -266
- data/features/docs/writing_support_code/before_hook.feature +0 -66
- data/features/docs/writing_support_code/hook_order.feature +0 -63
- data/features/docs/writing_support_code/load_path.feature +0 -17
- data/features/docs/writing_support_code/parameter_types.feature +0 -69
- data/features/docs/writing_support_code/state.feature +0 -32
- data/features/docs/writing_support_code/tagged_hooks.feature +0 -95
- data/features/docs/writing_support_code/world.feature +0 -129
- data/features/lib/step_definitions/aruba_steps.rb +0 -21
- data/features/lib/step_definitions/cli_steps.rb +0 -4
- data/features/lib/step_definitions/cucumber_steps.rb +0 -75
- data/features/lib/step_definitions/iso-8859-1_steps.rb +0 -16
- data/features/lib/step_definitions/json_steps.rb +0 -8
- data/features/lib/step_definitions/junit_steps.rb +0 -14
- data/features/lib/step_definitions/language_steps.rb +0 -9
- data/features/lib/step_definitions/profile_steps.rb +0 -16
- data/features/lib/step_definitions/retry_steps.rb +0 -55
- data/features/lib/step_definitions/ruby_steps.rb +0 -4
- data/features/lib/support/env.rb +0 -22
- data/features/lib/support/fake_wire_server.rb +0 -94
- data/features/lib/support/feature_factory.rb +0 -68
- data/features/lib/support/normalise_output.rb +0 -52
- data/features/lib/support/parameter_types.rb +0 -5
- data/gem_tasks/contributors.rake +0 -19
- data/gem_tasks/cov.rake +0 -6
- data/gem_tasks/downloads.rb +0 -8
- data/gem_tasks/environment.rake +0 -4
- data/gem_tasks/examples.rake +0 -12
- data/gem_tasks/fix_cr_lf.rake +0 -22
- data/gem_tasks/flog.rake +0 -5
- data/gem_tasks/rspec.rake +0 -7
- data/gem_tasks/sass.rake +0 -5
- data/gem_tasks/stats +0 -16
- data/gem_tasks/versions.txt +0 -74
- data/scripts/invite-collaborator +0 -40
- data/scripts/update-changelog +0 -86
- data/spec/cucumber/cli/configuration_spec.rb +0 -446
- data/spec/cucumber/cli/main_spec.rb +0 -84
- data/spec/cucumber/cli/options_spec.rb +0 -445
- data/spec/cucumber/cli/profile_loader_spec.rb +0 -66
- data/spec/cucumber/cli/rerun_spec.rb +0 -86
- data/spec/cucumber/configuration_spec.rb +0 -148
- data/spec/cucumber/constantize_spec.rb +0 -20
- data/spec/cucumber/events_spec.rb +0 -9
- data/spec/cucumber/file_specs_spec.rb +0 -61
- data/spec/cucumber/filters/activate_steps_spec.rb +0 -152
- data/spec/cucumber/filters/gated_receiver_spec.rb +0 -48
- data/spec/cucumber/filters/retry_spec.rb +0 -98
- data/spec/cucumber/filters/tag_limits/test_case_index_spec.rb +0 -39
- data/spec/cucumber/filters/tag_limits/verifier_spec.rb +0 -58
- data/spec/cucumber/filters/tag_limits_spec.rb +0 -60
- data/spec/cucumber/formatter/ansicolor_spec.rb +0 -33
- data/spec/cucumber/formatter/backtrace_filter_spec.rb +0 -32
- data/spec/cucumber/formatter/console_counts_spec.rb +0 -14
- data/spec/cucumber/formatter/duration_spec.rb +0 -23
- data/spec/cucumber/formatter/fail_fast_spec.rb +0 -88
- data/spec/cucumber/formatter/html_spec.rb +0 -543
- data/spec/cucumber/formatter/interceptor_spec.rb +0 -137
- data/spec/cucumber/formatter/json_spec.rb +0 -815
- data/spec/cucumber/formatter/junit_spec.rb +0 -251
- data/spec/cucumber/formatter/legacy_api/adapter_spec.rb +0 -2175
- data/spec/cucumber/formatter/pretty_spec.rb +0 -907
- data/spec/cucumber/formatter/progress_spec.rb +0 -170
- data/spec/cucumber/formatter/rerun_spec.rb +0 -97
- data/spec/cucumber/formatter/spec_helper.rb +0 -84
- data/spec/cucumber/glue/proto_world_spec.rb +0 -63
- data/spec/cucumber/glue/registry_and_more_spec.rb +0 -213
- data/spec/cucumber/glue/snippet_spec.rb +0 -174
- data/spec/cucumber/glue/step_definition_spec.rb +0 -207
- data/spec/cucumber/hooks_spec.rb +0 -31
- data/spec/cucumber/multiline_argument/data_table_spec.rb +0 -653
- data/spec/cucumber/project_initializer_spec.rb +0 -88
- data/spec/cucumber/rake/forked_spec.rb +0 -58
- data/spec/cucumber/rake/task_spec.rb +0 -86
- data/spec/cucumber/running_test_case_spec.rb +0 -140
- data/spec/cucumber/runtime/for_programming_languages_spec.rb +0 -8
- data/spec/cucumber/runtime/support_code_spec.rb +0 -17
- data/spec/cucumber/runtime_spec.rb +0 -21
- data/spec/cucumber/sell_cucumbers.feature +0 -19
- data/spec/cucumber/step_argument_spec.rb +0 -19
- data/spec/cucumber/step_match_search_spec.rb +0 -113
- data/spec/cucumber/step_match_spec.rb +0 -86
- data/spec/cucumber/world/pending_spec.rb +0 -48
- data/spec/spec_helper.rb +0 -30
- data/spec/support/standard_step_actions.rb +0 -19
@@ -1,27 +0,0 @@
|
|
1
|
-
Feature: Requiring extra step files
|
2
|
-
|
3
|
-
Cucumber allows you to require extra files using the `-r` option.
|
4
|
-
|
5
|
-
Scenario:
|
6
|
-
Given a file named "features/test.feature" with:
|
7
|
-
"""
|
8
|
-
Feature: Sample
|
9
|
-
Scenario: Sample
|
10
|
-
Given found in extra file
|
11
|
-
"""
|
12
|
-
And a file named "tmp/extras.rb" with:
|
13
|
-
"""
|
14
|
-
Given(/^found in extra file$/) { }
|
15
|
-
"""
|
16
|
-
When I run `cucumber -q -r tmp/extras.rb features/test.feature`
|
17
|
-
Then it should pass with:
|
18
|
-
"""
|
19
|
-
Feature: Sample
|
20
|
-
|
21
|
-
Scenario: Sample
|
22
|
-
Given found in extra file
|
23
|
-
|
24
|
-
1 scenario (1 passed)
|
25
|
-
1 step (1 passed)
|
26
|
-
"""
|
27
|
-
|
@@ -1,92 +0,0 @@
|
|
1
|
-
Feature: Retry failing tests
|
2
|
-
|
3
|
-
Retry gives you a way to get through flaky tests that usually pass after a few runs.
|
4
|
-
This gives a development team a way forward other than disabling a valuable test.
|
5
|
-
|
6
|
-
- Specify max retry count in option
|
7
|
-
- Output information to the screen
|
8
|
-
- Output retry information in test report
|
9
|
-
|
10
|
-
Questions:
|
11
|
-
use a tag for flaky tests? Global option to retry any test that fails?
|
12
|
-
|
13
|
-
Background:
|
14
|
-
Given a scenario "Fails-once" that fails once, then passes
|
15
|
-
And a scenario "Fails-twice" that fails twice, then passes
|
16
|
-
And a scenario "Solid" that passes
|
17
|
-
|
18
|
-
@todo-windows
|
19
|
-
Scenario: Retry once, so Fails-once starts to pass
|
20
|
-
Given a scenario "Fails-forever" that fails
|
21
|
-
When I run `cucumber -q --retry 1 --format summary`
|
22
|
-
Then it should fail with:
|
23
|
-
"""
|
24
|
-
4 scenarios (2 failed, 1 flaky, 1 passed)
|
25
|
-
"""
|
26
|
-
And it should fail with:
|
27
|
-
"""
|
28
|
-
Fails-forever
|
29
|
-
Fails-forever ✗
|
30
|
-
Fails-forever ✗
|
31
|
-
|
32
|
-
Solid
|
33
|
-
Solid ✓
|
34
|
-
|
35
|
-
Fails-once feature
|
36
|
-
Fails-once ✗
|
37
|
-
Fails-once ✓
|
38
|
-
|
39
|
-
Fails-twice feature
|
40
|
-
Fails-twice ✗
|
41
|
-
Fails-twice ✗
|
42
|
-
"""
|
43
|
-
|
44
|
-
@todo-windows
|
45
|
-
Scenario: Retry twice, so Fails-twice starts to pass too
|
46
|
-
Given a scenario "Fails-forever" that fails
|
47
|
-
When I run `cucumber -q --retry 2 --format summary`
|
48
|
-
Then it should fail with:
|
49
|
-
"""
|
50
|
-
4 scenarios (1 failed, 2 flaky, 1 passed)
|
51
|
-
"""
|
52
|
-
And it should fail with:
|
53
|
-
"""
|
54
|
-
Fails-forever
|
55
|
-
Fails-forever ✗
|
56
|
-
Fails-forever ✗
|
57
|
-
Fails-forever ✗
|
58
|
-
|
59
|
-
Solid
|
60
|
-
Solid ✓
|
61
|
-
|
62
|
-
Fails-once feature
|
63
|
-
Fails-once ✗
|
64
|
-
Fails-once ✓
|
65
|
-
|
66
|
-
Fails-twice feature
|
67
|
-
Fails-twice ✗
|
68
|
-
Fails-twice ✗
|
69
|
-
Fails-twice ✓
|
70
|
-
"""
|
71
|
-
|
72
|
-
@todo-windows
|
73
|
-
Scenario: Flaky scenarios gives exit code zero in non-strict mode
|
74
|
-
When I run `cucumber -q --retry 2 --format summary`
|
75
|
-
Then it should pass with:
|
76
|
-
"""
|
77
|
-
|
78
|
-
|
79
|
-
3 scenarios (2 flaky, 1 passed)
|
80
|
-
"""
|
81
|
-
|
82
|
-
@todo-windows
|
83
|
-
Scenario: Flaky scenarios gives non-zero exit code in strict mode
|
84
|
-
When I run `cucumber -q --retry 2 --format summary --strict`
|
85
|
-
Then it should fail with:
|
86
|
-
"""
|
87
|
-
Flaky Scenarios:
|
88
|
-
cucumber features/fails_once.feature:2
|
89
|
-
cucumber features/fails_twice.feature:2
|
90
|
-
|
91
|
-
3 scenarios (2 flaky, 1 passed)
|
92
|
-
"""
|
@@ -1,105 +0,0 @@
|
|
1
|
-
Feature: Run feature elements matching a name with --name/-n
|
2
|
-
|
3
|
-
The `--name NAME` option runs only scenarios which match a certain
|
4
|
-
name. The NAME can be a substring of the names of Features, Scenarios,
|
5
|
-
Scenario Outlines or Example blocks.
|
6
|
-
|
7
|
-
Background:
|
8
|
-
Given a file named "features/first.feature" with:
|
9
|
-
"""
|
10
|
-
Feature: first feature
|
11
|
-
Scenario: foo first
|
12
|
-
Given missing
|
13
|
-
Scenario: bar first
|
14
|
-
Given missing
|
15
|
-
"""
|
16
|
-
Given a file named "features/second.feature" with:
|
17
|
-
"""
|
18
|
-
Feature: second
|
19
|
-
Scenario: foo second
|
20
|
-
Given missing
|
21
|
-
Scenario: bar second
|
22
|
-
Given missing
|
23
|
-
"""
|
24
|
-
Given a file named "features/outline.feature" with:
|
25
|
-
"""
|
26
|
-
Feature: outline
|
27
|
-
Scenario Outline: baz outline
|
28
|
-
Given outline step <name>
|
29
|
-
|
30
|
-
Examples: quux example
|
31
|
-
| name |
|
32
|
-
| a |
|
33
|
-
| b |
|
34
|
-
"""
|
35
|
-
|
36
|
-
@todo-windows
|
37
|
-
Scenario: Matching Feature names
|
38
|
-
When I run `cucumber -q --name feature`
|
39
|
-
Then it should pass with:
|
40
|
-
"""
|
41
|
-
Feature: first feature
|
42
|
-
|
43
|
-
Scenario: foo first
|
44
|
-
Given missing
|
45
|
-
|
46
|
-
Scenario: bar first
|
47
|
-
Given missing
|
48
|
-
|
49
|
-
2 scenarios (2 undefined)
|
50
|
-
2 steps (2 undefined)
|
51
|
-
"""
|
52
|
-
|
53
|
-
Scenario: Matching Scenario names
|
54
|
-
When I run `cucumber -q --name foo`
|
55
|
-
Then it should pass with:
|
56
|
-
"""
|
57
|
-
Feature: first feature
|
58
|
-
|
59
|
-
Scenario: foo first
|
60
|
-
Given missing
|
61
|
-
|
62
|
-
Feature: second
|
63
|
-
|
64
|
-
Scenario: foo second
|
65
|
-
Given missing
|
66
|
-
|
67
|
-
2 scenarios (2 undefined)
|
68
|
-
2 steps (2 undefined)
|
69
|
-
"""
|
70
|
-
|
71
|
-
Scenario: Matching Scenario Outline names
|
72
|
-
When I run `cucumber -q --name baz`
|
73
|
-
Then it should pass with:
|
74
|
-
"""
|
75
|
-
Feature: outline
|
76
|
-
|
77
|
-
Scenario Outline: baz outline
|
78
|
-
Given outline step <name>
|
79
|
-
|
80
|
-
Examples: quux example
|
81
|
-
| name |
|
82
|
-
| a |
|
83
|
-
| b |
|
84
|
-
|
85
|
-
2 scenarios (2 undefined)
|
86
|
-
2 steps (2 undefined)
|
87
|
-
"""
|
88
|
-
|
89
|
-
Scenario: Matching Example block names
|
90
|
-
When I run `cucumber -q --name quux`
|
91
|
-
Then it should pass with:
|
92
|
-
"""
|
93
|
-
Feature: outline
|
94
|
-
|
95
|
-
Scenario Outline: baz outline
|
96
|
-
Given outline step <name>
|
97
|
-
|
98
|
-
Examples: quux example
|
99
|
-
| name |
|
100
|
-
| a |
|
101
|
-
| b |
|
102
|
-
|
103
|
-
2 scenarios (2 undefined)
|
104
|
-
2 steps (2 undefined)
|
105
|
-
"""
|
@@ -1,77 +0,0 @@
|
|
1
|
-
Feature: Run specific scenarios
|
2
|
-
|
3
|
-
You can choose to run a specific scenario using the file:line format,
|
4
|
-
or you can pass in a file with a list of scenarios using @-notation.
|
5
|
-
|
6
|
-
The line number can fall anywhere within the body of a scenario, including
|
7
|
-
steps, tags, comments, description, data tables or doc strings.
|
8
|
-
|
9
|
-
For scenario outlines, if the line hits one example row, just that one
|
10
|
-
will be run. Otherwise all examples in the table or outline will be run.
|
11
|
-
|
12
|
-
Background:
|
13
|
-
Given the standard step definitions
|
14
|
-
|
15
|
-
Scenario: Two scenarios, run just one of them
|
16
|
-
Given a file named "features/test.feature" with:
|
17
|
-
"""
|
18
|
-
Feature:
|
19
|
-
|
20
|
-
Scenario: Miss
|
21
|
-
Given this step is undefined
|
22
|
-
|
23
|
-
Scenario: Hit
|
24
|
-
Given this step passes
|
25
|
-
"""
|
26
|
-
When I run `cucumber features/test.feature:7 --format pretty --quiet`
|
27
|
-
Then it should pass with exactly:
|
28
|
-
"""
|
29
|
-
Feature:
|
30
|
-
|
31
|
-
Scenario: Hit
|
32
|
-
Given this step passes
|
33
|
-
|
34
|
-
1 scenario (1 passed)
|
35
|
-
1 step (1 passed)
|
36
|
-
|
37
|
-
"""
|
38
|
-
|
39
|
-
Scenario: Use @-notation to specify a file containing feature file list
|
40
|
-
Given a file named "features/test.feature" with:
|
41
|
-
"""
|
42
|
-
Feature: Sample
|
43
|
-
Scenario: Passing
|
44
|
-
Given this step passes
|
45
|
-
"""
|
46
|
-
And a file named "list-of-features.txt" with:
|
47
|
-
"""
|
48
|
-
features/test.feature:2
|
49
|
-
"""
|
50
|
-
When I run `cucumber -q @list-of-features.txt`
|
51
|
-
Then it should pass with:
|
52
|
-
"""
|
53
|
-
Feature: Sample
|
54
|
-
|
55
|
-
Scenario: Passing
|
56
|
-
Given this step passes
|
57
|
-
|
58
|
-
1 scenario (1 passed)
|
59
|
-
1 step (1 passed)
|
60
|
-
"""
|
61
|
-
|
62
|
-
Scenario: Specify order of scenarios
|
63
|
-
Given a file named "features/test.feature" with:
|
64
|
-
"""
|
65
|
-
Feature:
|
66
|
-
Scenario:
|
67
|
-
Given this step passes
|
68
|
-
|
69
|
-
Scenario:
|
70
|
-
Given this step fails
|
71
|
-
"""
|
72
|
-
When I run `cucumber features/test.feature:5 features/test.feature:3 -f progress`
|
73
|
-
Then it should fail with:
|
74
|
-
"""
|
75
|
-
F.
|
76
|
-
"""
|
77
|
-
|
@@ -1,43 +0,0 @@
|
|
1
|
-
Feature: Showing differences to expected output
|
2
|
-
|
3
|
-
Cucumber will helpfully show you the expectation error that your
|
4
|
-
testing library gives you, in the context of the failing scenario.
|
5
|
-
When using RSpec, for example, this will show the difference between
|
6
|
-
the expected and the actual output.
|
7
|
-
|
8
|
-
Scenario: Run single failing scenario with default diff enabled
|
9
|
-
Given a file named "features/failing_expectation.feature" with:
|
10
|
-
"""
|
11
|
-
Feature: Failing expectation
|
12
|
-
|
13
|
-
Scenario: Failing expectation
|
14
|
-
Given failing expectation
|
15
|
-
"""
|
16
|
-
And a file named "features/step_definitions/steps.rb" with:
|
17
|
-
"""
|
18
|
-
Given /^failing expectation$/ do x=1
|
19
|
-
expect('this').to eq 'that'
|
20
|
-
end
|
21
|
-
"""
|
22
|
-
When I run `cucumber -q features/failing_expectation.feature`
|
23
|
-
Then it should fail with:
|
24
|
-
"""
|
25
|
-
Feature: Failing expectation
|
26
|
-
|
27
|
-
Scenario: Failing expectation
|
28
|
-
Given failing expectation
|
29
|
-
|
30
|
-
expected: "that"
|
31
|
-
got: "this"
|
32
|
-
|
33
|
-
(compared using ==)
|
34
|
-
(RSpec::Expectations::ExpectationNotMetError)
|
35
|
-
./features/step_definitions/steps.rb:2:in `/^failing expectation$/'
|
36
|
-
features/failing_expectation.feature:4:in `Given failing expectation'
|
37
|
-
|
38
|
-
Failing Scenarios:
|
39
|
-
cucumber features/failing_expectation.feature:3
|
40
|
-
|
41
|
-
1 scenario (1 failed)
|
42
|
-
1 step (1 failed)
|
43
|
-
"""
|
@@ -1,68 +0,0 @@
|
|
1
|
-
@spawn
|
2
|
-
Feature: Running multiple formatters
|
3
|
-
|
4
|
-
When running cucumber, you are able to using multiple different
|
5
|
-
formatters and redirect the output to text files.
|
6
|
-
Two formatters cannot both print to the same file (or to STDOUT)
|
7
|
-
|
8
|
-
Background:
|
9
|
-
Given a file named "features/test.feature" with:
|
10
|
-
"""
|
11
|
-
Feature: Lots of undefined
|
12
|
-
|
13
|
-
Scenario: Implement me
|
14
|
-
Given it snows in Sahara
|
15
|
-
Given it's 40 degrees in Norway
|
16
|
-
And it's 40 degrees in Norway
|
17
|
-
When I stop procrastinating
|
18
|
-
And there is world peace
|
19
|
-
"""
|
20
|
-
|
21
|
-
@todo-windows
|
22
|
-
Scenario: Multiple formatters and outputs
|
23
|
-
When I run `cucumber --no-color --format progress --out progress.txt --format pretty --out pretty.txt --no-source --dry-run --no-snippets features/test.feature`
|
24
|
-
Then the stderr should not contain anything
|
25
|
-
Then the file "progress.txt" should contain:
|
26
|
-
"""
|
27
|
-
UUUUU
|
28
|
-
|
29
|
-
1 scenario (1 undefined)
|
30
|
-
5 steps (5 undefined)
|
31
|
-
|
32
|
-
"""
|
33
|
-
And the file "pretty.txt" should contain:
|
34
|
-
"""
|
35
|
-
Feature: Lots of undefined
|
36
|
-
|
37
|
-
Scenario: Implement me
|
38
|
-
Given it snows in Sahara
|
39
|
-
Given it's 40 degrees in Norway
|
40
|
-
And it's 40 degrees in Norway
|
41
|
-
When I stop procrastinating
|
42
|
-
And there is world peace
|
43
|
-
|
44
|
-
1 scenario (1 undefined)
|
45
|
-
5 steps (5 undefined)
|
46
|
-
|
47
|
-
"""
|
48
|
-
|
49
|
-
@todo-windows
|
50
|
-
Scenario: Two formatters to stdout
|
51
|
-
When I run `cucumber -f progress -f pretty features/test.feature`
|
52
|
-
Then it should fail with:
|
53
|
-
"""
|
54
|
-
All but one formatter must use --out, only one can print to each stream (or STDOUT) (RuntimeError)
|
55
|
-
"""
|
56
|
-
|
57
|
-
@todo-windows
|
58
|
-
Scenario: Two formatters to stdout when using a profile
|
59
|
-
Given the following profiles are defined:
|
60
|
-
"""
|
61
|
-
default: -q
|
62
|
-
"""
|
63
|
-
When I run `cucumber -f progress -f pretty features/test.feature`
|
64
|
-
Then it should fail with:
|
65
|
-
"""
|
66
|
-
All but one formatter must use --out, only one can print to each stream (or STDOUT) (RuntimeError)
|
67
|
-
"""
|
68
|
-
|
@@ -1,70 +0,0 @@
|
|
1
|
-
Feature: Strict mode
|
2
|
-
|
3
|
-
Using the `--strict` flag will cause cucumber to fail unless all the
|
4
|
-
step definitions have been defined.
|
5
|
-
|
6
|
-
Background:
|
7
|
-
Given a file named "features/missing.feature" with:
|
8
|
-
"""
|
9
|
-
Feature: Missing
|
10
|
-
Scenario: Missing
|
11
|
-
Given this step passes
|
12
|
-
"""
|
13
|
-
And a file named "features/pending.feature" with:
|
14
|
-
"""
|
15
|
-
Feature: Pending
|
16
|
-
Scenario: Pending
|
17
|
-
Given this step is pending
|
18
|
-
"""
|
19
|
-
|
20
|
-
Scenario: Fail with --strict due to undefined step
|
21
|
-
When I run `cucumber -q features/missing.feature --strict`
|
22
|
-
Then it should fail with:
|
23
|
-
"""
|
24
|
-
Feature: Missing
|
25
|
-
|
26
|
-
Scenario: Missing
|
27
|
-
Given this step passes
|
28
|
-
Undefined step: "this step passes" (Cucumber::Undefined)
|
29
|
-
features/missing.feature:3:in `Given this step passes'
|
30
|
-
|
31
|
-
Undefined Scenarios:
|
32
|
-
cucumber features/missing.feature:2
|
33
|
-
|
34
|
-
1 scenario (1 undefined)
|
35
|
-
1 step (1 undefined)
|
36
|
-
"""
|
37
|
-
|
38
|
-
Scenario: Fail with --strict due to pending step
|
39
|
-
Given the standard step definitions
|
40
|
-
When I run `cucumber -q features/pending.feature --strict`
|
41
|
-
Then it should fail with:
|
42
|
-
"""
|
43
|
-
Feature: Pending
|
44
|
-
|
45
|
-
Scenario: Pending
|
46
|
-
Given this step is pending
|
47
|
-
TODO (Cucumber::Pending)
|
48
|
-
./features/step_definitions/steps.rb:3:in `/^this step is pending$/'
|
49
|
-
features/pending.feature:3:in `Given this step is pending'
|
50
|
-
|
51
|
-
Pending Scenarios:
|
52
|
-
cucumber features/pending.feature:2
|
53
|
-
|
54
|
-
1 scenario (1 pending)
|
55
|
-
1 step (1 pending)
|
56
|
-
"""
|
57
|
-
|
58
|
-
Scenario: Succeed with --strict
|
59
|
-
Given the standard step definitions
|
60
|
-
When I run `cucumber -q features/missing.feature --strict`
|
61
|
-
Then it should pass with:
|
62
|
-
"""
|
63
|
-
Feature: Missing
|
64
|
-
|
65
|
-
Scenario: Missing
|
66
|
-
Given this step passes
|
67
|
-
|
68
|
-
1 scenario (1 passed)
|
69
|
-
1 step (1 passed)
|
70
|
-
"""
|