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,33 +0,0 @@
|
|
1
|
-
Feature: Post Configuration Hook [#423]
|
2
|
-
|
3
|
-
In order to extend Cucumber
|
4
|
-
As a developer
|
5
|
-
I want to manipulate the Cucumber configuration after it has been created
|
6
|
-
|
7
|
-
Scenario: Changing the output format
|
8
|
-
Given a file named "features/support/env.rb" with:
|
9
|
-
"""
|
10
|
-
AfterConfiguration do |config|
|
11
|
-
config.formats << ['html', {}, config.out_stream]
|
12
|
-
end
|
13
|
-
"""
|
14
|
-
When I run `cucumber features`
|
15
|
-
Then the stderr should not contain anything
|
16
|
-
And the output should contain:
|
17
|
-
"""
|
18
|
-
html
|
19
|
-
"""
|
20
|
-
|
21
|
-
Scenario: feature directories read from configuration
|
22
|
-
Given a file named "features/support/env.rb" with:
|
23
|
-
"""
|
24
|
-
AfterConfiguration do |config|
|
25
|
-
config.out_stream << "AfterConfiguration hook read feature directories: #{config.feature_dirs.join(', ')}"
|
26
|
-
end
|
27
|
-
"""
|
28
|
-
When I run `cucumber features`
|
29
|
-
Then the stderr should not contain anything
|
30
|
-
And the output should contain:
|
31
|
-
"""
|
32
|
-
AfterConfiguration hook read feature directories: features
|
33
|
-
"""
|
@@ -1,120 +0,0 @@
|
|
1
|
-
Feature: Profiles
|
2
|
-
|
3
|
-
In order to save time and prevent carpal tunnel syndrome
|
4
|
-
Cucumber users can save and reuse commonly used cucumber flags in a 'cucumber.yml' file.
|
5
|
-
These named arguments are called profiles and the yml file should be in the root of your project.
|
6
|
-
Any cucumber argument is valid in a profile. To see all the available flags type 'cucumber --help'
|
7
|
-
For more information about profiles please see the wiki:
|
8
|
-
http://wiki.github.com/cucumber/cucumber/cucumber.yml
|
9
|
-
|
10
|
-
Background: Basic App
|
11
|
-
Given a file named "features/sample.feature" with:
|
12
|
-
"""
|
13
|
-
Feature: Sample
|
14
|
-
Scenario: this is a test
|
15
|
-
Given this step raises an error
|
16
|
-
"""
|
17
|
-
And an empty file named "features/support/env.rb"
|
18
|
-
And an empty file named "features/support/super_env.rb"
|
19
|
-
And the following profiles are defined:
|
20
|
-
"""
|
21
|
-
default: features/sample.feature --require features/support/env.rb -v
|
22
|
-
super: features/sample.feature --require features/support/super_env.rb -v
|
23
|
-
"""
|
24
|
-
|
25
|
-
Scenario: Explicitly defining a profile to run
|
26
|
-
When I run `cucumber features/sample.feature --profile super`
|
27
|
-
Then the output should contain:
|
28
|
-
"""
|
29
|
-
Using the super profile...
|
30
|
-
"""
|
31
|
-
And exactly these files should be loaded: features/support/super_env.rb
|
32
|
-
|
33
|
-
Scenario: Explicitly defining a profile defined in an ERB formatted file
|
34
|
-
Given the following profiles are defined:
|
35
|
-
"""
|
36
|
-
<% requires = "--require features/support/super_env.rb" %>
|
37
|
-
super: <%= "features/sample.feature #{requires} -v" %>
|
38
|
-
"""
|
39
|
-
When I run `cucumber features/sample.feature --profile super`
|
40
|
-
Then the output should contain:
|
41
|
-
"""
|
42
|
-
Using the super profile...
|
43
|
-
"""
|
44
|
-
And exactly these files should be loaded: features/support/super_env.rb
|
45
|
-
|
46
|
-
Scenario: Defining multiple profiles to run
|
47
|
-
When I run `cucumber features/sample.feature --profile default --profile super`
|
48
|
-
Then the output should contain:
|
49
|
-
"""
|
50
|
-
Using the default and super profiles...
|
51
|
-
"""
|
52
|
-
And exactly these files should be loaded: features/support/env.rb, features/support/super_env.rb
|
53
|
-
|
54
|
-
Scenario: Arguments passed in but no profile specified
|
55
|
-
When I run `cucumber -v`
|
56
|
-
Then the default profile should be used
|
57
|
-
And exactly these files should be loaded: features/support/env.rb
|
58
|
-
|
59
|
-
Scenario: Trying to use a missing profile
|
60
|
-
When I run `cucumber -p foo`
|
61
|
-
Then the stderr should contain:
|
62
|
-
"""
|
63
|
-
Could not find profile: 'foo'
|
64
|
-
|
65
|
-
Defined profiles in cucumber.yml:
|
66
|
-
* default
|
67
|
-
* super
|
68
|
-
|
69
|
-
"""
|
70
|
-
|
71
|
-
Scenario Outline: Disabling the default profile
|
72
|
-
When I run `cucumber -v features/ <flag>`
|
73
|
-
Then the output should contain:
|
74
|
-
"""
|
75
|
-
Disabling profiles...
|
76
|
-
"""
|
77
|
-
And exactly these files should be loaded: features/support/env.rb, features/support/super_env.rb
|
78
|
-
|
79
|
-
Examples:
|
80
|
-
| flag |
|
81
|
-
| -P |
|
82
|
-
| --no-profile |
|
83
|
-
|
84
|
-
Scenario: Overriding the profile's features to run
|
85
|
-
Given a file named "features/another.feature" with:
|
86
|
-
"""
|
87
|
-
Feature: Just this one should be run
|
88
|
-
"""
|
89
|
-
When I run `cucumber -p default features/another.feature`
|
90
|
-
Then exactly these features should be run: features/another.feature
|
91
|
-
|
92
|
-
Scenario: Overriding the profile's formatter
|
93
|
-
You will most likely want to define a formatter in your default formatter.
|
94
|
-
However, you often want to run your features with a different formatter
|
95
|
-
yet still use the other the other arguments in the profile. Cucumber will
|
96
|
-
allow you to do this by giving precedence to the formatter specified on the
|
97
|
-
command line and override the one in the profile.
|
98
|
-
|
99
|
-
Given the following profiles are defined:
|
100
|
-
"""
|
101
|
-
default: features/sample.feature --require features/support/env.rb -v --format profile
|
102
|
-
"""
|
103
|
-
When I run `cucumber features --format pretty`
|
104
|
-
Then the output should contain:
|
105
|
-
"""
|
106
|
-
Feature: Sample
|
107
|
-
"""
|
108
|
-
|
109
|
-
Scenario Outline: Showing profiles when listing failing scenarios
|
110
|
-
Given the standard step definitions
|
111
|
-
When I run `cucumber -q -p super -p default -f <format> features/sample.feature --require features/step_definitions/steps.rb`
|
112
|
-
Then it should fail with:
|
113
|
-
"""
|
114
|
-
cucumber -p super features/sample.feature:2
|
115
|
-
"""
|
116
|
-
|
117
|
-
Examples:
|
118
|
-
| format |
|
119
|
-
| pretty |
|
120
|
-
| progress |
|
@@ -1,146 +0,0 @@
|
|
1
|
-
@spawn
|
2
|
-
Feature: Rake task
|
3
|
-
In order to ease the development process
|
4
|
-
As a developer and CI server administrator
|
5
|
-
Cucumber features should be executable via Rake
|
6
|
-
|
7
|
-
Background:
|
8
|
-
And a file named "features/missing_step_definitions.feature" with:
|
9
|
-
"""
|
10
|
-
Feature: Sample
|
11
|
-
|
12
|
-
Scenario: Wanted
|
13
|
-
Given I want to run this
|
14
|
-
|
15
|
-
Scenario: Unwanted
|
16
|
-
Given I don't want this ran
|
17
|
-
"""
|
18
|
-
|
19
|
-
@todo-windows
|
20
|
-
Scenario: rake task with a defined profile
|
21
|
-
Given the following profile is defined:
|
22
|
-
"""
|
23
|
-
foo: --quiet --no-color features/missing_step_definitions.feature:3
|
24
|
-
"""
|
25
|
-
And a file named "Rakefile" with:
|
26
|
-
"""
|
27
|
-
require 'cucumber/rake/task'
|
28
|
-
|
29
|
-
Cucumber::Rake::Task.new do |t|
|
30
|
-
t.profile = "foo"
|
31
|
-
end
|
32
|
-
"""
|
33
|
-
When I run `rake cucumber`
|
34
|
-
Then it should pass with:
|
35
|
-
"""
|
36
|
-
Feature: Sample
|
37
|
-
|
38
|
-
Scenario: Wanted
|
39
|
-
Given I want to run this
|
40
|
-
|
41
|
-
1 scenario (1 undefined)
|
42
|
-
1 step (1 undefined)
|
43
|
-
"""
|
44
|
-
|
45
|
-
@todo-windows
|
46
|
-
Scenario: rake task without a profile
|
47
|
-
Given a file named "Rakefile" with:
|
48
|
-
"""
|
49
|
-
require 'cucumber/rake/task'
|
50
|
-
|
51
|
-
Cucumber::Rake::Task.new do |t|
|
52
|
-
t.cucumber_opts = %w{--quiet --no-color}
|
53
|
-
end
|
54
|
-
"""
|
55
|
-
When I run `rake cucumber`
|
56
|
-
Then it should pass with:
|
57
|
-
"""
|
58
|
-
Feature: Sample
|
59
|
-
|
60
|
-
Scenario: Wanted
|
61
|
-
Given I want to run this
|
62
|
-
|
63
|
-
Scenario: Unwanted
|
64
|
-
Given I don't want this ran
|
65
|
-
|
66
|
-
2 scenarios (2 undefined)
|
67
|
-
2 steps (2 undefined)
|
68
|
-
"""
|
69
|
-
|
70
|
-
@todo-windows
|
71
|
-
Scenario: rake task with a defined profile and cucumber_opts
|
72
|
-
Given the following profile is defined:
|
73
|
-
"""
|
74
|
-
bar: ['features/missing_step_definitions.feature:3']
|
75
|
-
"""
|
76
|
-
And a file named "Rakefile" with:
|
77
|
-
"""
|
78
|
-
require 'cucumber/rake/task'
|
79
|
-
|
80
|
-
Cucumber::Rake::Task.new do |t|
|
81
|
-
t.profile = "bar"
|
82
|
-
t.cucumber_opts = %w{--quiet --no-color}
|
83
|
-
end
|
84
|
-
"""
|
85
|
-
When I run `rake cucumber`
|
86
|
-
Then it should pass with:
|
87
|
-
"""
|
88
|
-
Feature: Sample
|
89
|
-
|
90
|
-
Scenario: Wanted
|
91
|
-
Given I want to run this
|
92
|
-
|
93
|
-
1 scenario (1 undefined)
|
94
|
-
1 step (1 undefined)
|
95
|
-
"""
|
96
|
-
|
97
|
-
@todo-windows
|
98
|
-
Scenario: respect requires
|
99
|
-
Given an empty file named "features/support/env.rb"
|
100
|
-
And an empty file named "features/support/dont_require_me.rb"
|
101
|
-
And the following profile is defined:
|
102
|
-
"""
|
103
|
-
no_bomb: features/missing_step_definitions.feature:3 --require features/support/env.rb --verbose
|
104
|
-
"""
|
105
|
-
And a file named "Rakefile" with:
|
106
|
-
"""
|
107
|
-
require 'cucumber/rake/task'
|
108
|
-
|
109
|
-
Cucumber::Rake::Task.new do |t|
|
110
|
-
t.profile = "no_bomb"
|
111
|
-
t.cucumber_opts = %w{--quiet --no-color}
|
112
|
-
end
|
113
|
-
"""
|
114
|
-
When I run `rake cucumber`
|
115
|
-
Then it should pass
|
116
|
-
And the output should not contain:
|
117
|
-
"""
|
118
|
-
* features/support/dont_require_me.rb
|
119
|
-
"""
|
120
|
-
|
121
|
-
@todo-windows
|
122
|
-
Scenario: feature files with spaces
|
123
|
-
Given a file named "features/spaces are nasty.feature" with:
|
124
|
-
"""
|
125
|
-
Feature: The futures green
|
126
|
-
|
127
|
-
Scenario: Orange
|
128
|
-
Given this is missing
|
129
|
-
"""
|
130
|
-
And a file named "Rakefile" with:
|
131
|
-
"""
|
132
|
-
require 'cucumber/rake/task'
|
133
|
-
|
134
|
-
Cucumber::Rake::Task.new do |t|
|
135
|
-
t.cucumber_opts = %w{--quiet --no-color}
|
136
|
-
end
|
137
|
-
"""
|
138
|
-
When I run `rake cucumber`
|
139
|
-
Then it should pass with:
|
140
|
-
"""
|
141
|
-
Feature: The futures green
|
142
|
-
|
143
|
-
Scenario: Orange
|
144
|
-
Given this is missing
|
145
|
-
|
146
|
-
"""
|
@@ -1,46 +0,0 @@
|
|
1
|
-
@spawn @wip-jruby
|
2
|
-
Feature: Raketask
|
3
|
-
|
4
|
-
In order to use cucumber's rake task
|
5
|
-
As a Cuker
|
6
|
-
I do not want to see rake's backtraces when it fails
|
7
|
-
Also I want to get zero exit status code on failures
|
8
|
-
And non-zero exit status code when it pases
|
9
|
-
|
10
|
-
Background:
|
11
|
-
Given the standard step definitions
|
12
|
-
Given a file named "features/passing_and_failing.feature" with:
|
13
|
-
"""
|
14
|
-
Feature: Sample
|
15
|
-
|
16
|
-
Scenario: Passing
|
17
|
-
Given this step passes
|
18
|
-
|
19
|
-
Scenario: Failing
|
20
|
-
Given this step raises an error
|
21
|
-
"""
|
22
|
-
Given a file named "Rakefile" with:
|
23
|
-
"""
|
24
|
-
require 'cucumber/rake/task'
|
25
|
-
|
26
|
-
SAMPLE_FEATURE_FILE = 'features/passing_and_failing.feature'
|
27
|
-
|
28
|
-
Cucumber::Rake::Task.new(:pass) do |t|
|
29
|
-
t.cucumber_opts = "#{SAMPLE_FEATURE_FILE}:3"
|
30
|
-
end
|
31
|
-
|
32
|
-
Cucumber::Rake::Task.new(:fail) do |t|
|
33
|
-
t.cucumber_opts = "#{SAMPLE_FEATURE_FILE}:6"
|
34
|
-
end
|
35
|
-
"""
|
36
|
-
|
37
|
-
@todo-windows
|
38
|
-
Scenario: Passing feature
|
39
|
-
When I run `bundle exec rake pass`
|
40
|
-
Then the exit status should be 0
|
41
|
-
|
42
|
-
@todo-windows
|
43
|
-
Scenario: Failing feature
|
44
|
-
When I run `bundle exec rake fail`
|
45
|
-
Then the exit status should be 1
|
46
|
-
But the output should not contain "rake aborted!"
|
@@ -1,157 +0,0 @@
|
|
1
|
-
@spawn
|
2
|
-
Feature: Cucumber --work-in-progress switch
|
3
|
-
In order to ensure that feature scenarios do not pass until they are expected to
|
4
|
-
Developers should be able to run cucumber in a mode that
|
5
|
-
- will fail if any scenario passes completely
|
6
|
-
- will not fail otherwise
|
7
|
-
|
8
|
-
Background: A passing and a pending feature
|
9
|
-
Given the standard step definitions
|
10
|
-
And a file named "features/wip.feature" with:
|
11
|
-
"""
|
12
|
-
Feature: WIP
|
13
|
-
@failing
|
14
|
-
Scenario: Failing
|
15
|
-
Given this step raises an error
|
16
|
-
|
17
|
-
@undefined
|
18
|
-
Scenario: Undefined
|
19
|
-
Given this step is undefined
|
20
|
-
|
21
|
-
@pending
|
22
|
-
Scenario: Pending
|
23
|
-
Given this step is pending
|
24
|
-
|
25
|
-
@passing
|
26
|
-
Scenario: Passing
|
27
|
-
Given this step passes
|
28
|
-
"""
|
29
|
-
And a file named "features/passing_outline.feature" with:
|
30
|
-
"""
|
31
|
-
Feature: Not WIP
|
32
|
-
Scenario Outline: Passing
|
33
|
-
Given this step <what>
|
34
|
-
|
35
|
-
Examples:
|
36
|
-
| what |
|
37
|
-
| passes |
|
38
|
-
"""
|
39
|
-
|
40
|
-
@todo-windows
|
41
|
-
Scenario: Pass with Failing Scenarios
|
42
|
-
When I run `cucumber -q -w -t @failing features/wip.feature`
|
43
|
-
Then the stderr should not contain anything
|
44
|
-
Then it should pass with:
|
45
|
-
"""
|
46
|
-
Feature: WIP
|
47
|
-
|
48
|
-
@failing
|
49
|
-
Scenario: Failing
|
50
|
-
Given this step raises an error
|
51
|
-
error (RuntimeError)
|
52
|
-
./features/step_definitions/steps.rb:2:in `/^this step raises an error$/'
|
53
|
-
features/wip.feature:4:in `Given this step raises an error'
|
54
|
-
|
55
|
-
Failing Scenarios:
|
56
|
-
cucumber features/wip.feature:3
|
57
|
-
|
58
|
-
1 scenario (1 failed)
|
59
|
-
1 step (1 failed)
|
60
|
-
"""
|
61
|
-
And the output should contain:
|
62
|
-
"""
|
63
|
-
The --wip switch was used, so the failures were expected. All is good.
|
64
|
-
|
65
|
-
"""
|
66
|
-
|
67
|
-
@todo-windows
|
68
|
-
Scenario: Pass with Undefined Scenarios
|
69
|
-
When I run `cucumber -q -w -t @undefined features/wip.feature`
|
70
|
-
Then it should pass with:
|
71
|
-
"""
|
72
|
-
Feature: WIP
|
73
|
-
|
74
|
-
@undefined
|
75
|
-
Scenario: Undefined
|
76
|
-
Given this step is undefined
|
77
|
-
|
78
|
-
1 scenario (1 undefined)
|
79
|
-
1 step (1 undefined)
|
80
|
-
"""
|
81
|
-
And the output should contain:
|
82
|
-
"""
|
83
|
-
The --wip switch was used, so the failures were expected. All is good.
|
84
|
-
|
85
|
-
"""
|
86
|
-
|
87
|
-
@todo-windows
|
88
|
-
Scenario: Pass with Undefined Scenarios
|
89
|
-
When I run `cucumber -q -w -t @pending features/wip.feature`
|
90
|
-
Then it should pass with:
|
91
|
-
"""
|
92
|
-
Feature: WIP
|
93
|
-
|
94
|
-
@pending
|
95
|
-
Scenario: Pending
|
96
|
-
Given this step is pending
|
97
|
-
TODO (Cucumber::Pending)
|
98
|
-
./features/step_definitions/steps.rb:3:in `/^this step is pending$/'
|
99
|
-
features/wip.feature:12:in `Given this step is pending'
|
100
|
-
|
101
|
-
1 scenario (1 pending)
|
102
|
-
1 step (1 pending)
|
103
|
-
"""
|
104
|
-
And the output should contain:
|
105
|
-
"""
|
106
|
-
The --wip switch was used, so the failures were expected. All is good.
|
107
|
-
|
108
|
-
"""
|
109
|
-
|
110
|
-
@todo-windows
|
111
|
-
Scenario: Fail with Passing Scenarios
|
112
|
-
When I run `cucumber -q -w -t @passing features/wip.feature`
|
113
|
-
Then it should fail with:
|
114
|
-
"""
|
115
|
-
Feature: WIP
|
116
|
-
|
117
|
-
@passing
|
118
|
-
Scenario: Passing
|
119
|
-
Given this step passes
|
120
|
-
|
121
|
-
1 scenario (1 passed)
|
122
|
-
1 step (1 passed)
|
123
|
-
"""
|
124
|
-
And the output should contain:
|
125
|
-
"""
|
126
|
-
The --wip switch was used, so I didn't expect anything to pass. These scenarios passed:
|
127
|
-
(::) passed scenarios (::)
|
128
|
-
|
129
|
-
features/wip.feature:15:in `Scenario: Passing'
|
130
|
-
|
131
|
-
"""
|
132
|
-
|
133
|
-
@todo-windows
|
134
|
-
Scenario: Fail with Passing Scenario Outline
|
135
|
-
When I run `cucumber -q -w features/passing_outline.feature`
|
136
|
-
Then it should fail with:
|
137
|
-
"""
|
138
|
-
Feature: Not WIP
|
139
|
-
|
140
|
-
Scenario Outline: Passing
|
141
|
-
Given this step <what>
|
142
|
-
|
143
|
-
Examples:
|
144
|
-
| what |
|
145
|
-
| passes |
|
146
|
-
|
147
|
-
1 scenario (1 passed)
|
148
|
-
1 step (1 passed)
|
149
|
-
"""
|
150
|
-
And the output should contain:
|
151
|
-
"""
|
152
|
-
The --wip switch was used, so I didn't expect anything to pass. These scenarios passed:
|
153
|
-
(::) passed scenarios (::)
|
154
|
-
|
155
|
-
features/passing_outline.feature:7:in `Scenario Outline: Passing, Examples (#1)'
|
156
|
-
|
157
|
-
"""
|