cucumber 3.0.0.pre.2 → 4.0.0.rc.5
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/{History.md → CHANGELOG.md} +267 -14
- data/CONTRIBUTING.md +4 -21
- data/README.md +14 -15
- data/bin/cucumber +2 -1
- data/lib/autotest/cucumber.rb +1 -0
- data/lib/autotest/cucumber_mixin.rb +36 -40
- 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 +2 -1
- data/lib/cucumber/cli/configuration.rb +8 -7
- data/lib/cucumber/cli/main.rb +14 -14
- data/lib/cucumber/cli/options.rb +141 -120
- data/lib/cucumber/cli/profile_loader.rb +50 -29
- data/lib/cucumber/cli/rerun_file.rb +1 -0
- data/lib/cucumber/configuration.rb +40 -30
- data/lib/cucumber/constantize.rb +8 -10
- data/lib/cucumber/core_ext/string.rb +1 -0
- data/lib/cucumber/deprecate.rb +33 -9
- data/lib/cucumber/encoding.rb +2 -1
- data/lib/cucumber/errors.rb +10 -8
- data/lib/cucumber/events.rb +14 -9
- data/lib/cucumber/events/envelope.rb +9 -0
- data/lib/cucumber/events/gherkin_source_parsed.rb +11 -0
- data/lib/cucumber/events/gherkin_source_read.rb +1 -4
- data/lib/cucumber/events/hook_test_step_created.rb +13 -0
- data/lib/cucumber/events/step_activated.rb +6 -6
- data/lib/cucumber/events/step_definition_registered.rb +4 -8
- data/lib/cucumber/events/test_case_created.rb +13 -0
- data/lib/cucumber/events/test_case_finished.rb +1 -5
- data/lib/cucumber/events/test_case_ready.rb +12 -0
- data/lib/cucumber/events/{test_case_starting.rb → test_case_started.rb} +1 -5
- data/lib/cucumber/events/test_run_finished.rb +2 -3
- data/lib/cucumber/events/{test_run_starting.rb → test_run_started.rb} +3 -5
- data/lib/cucumber/events/test_step_created.rb +13 -0
- data/lib/cucumber/events/test_step_finished.rb +0 -6
- data/lib/cucumber/events/{test_step_starting.rb → test_step_started.rb} +2 -8
- data/lib/cucumber/file_specs.rb +7 -6
- data/lib/cucumber/filters.rb +3 -1
- data/lib/cucumber/filters/activate_steps.rb +11 -5
- 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_case_ready_event.rb +12 -0
- data/lib/cucumber/filters/{broadcast_test_run_starting_event.rb → broadcast_test_run_started_event.rb} +4 -3
- data/lib/cucumber/filters/gated_receiver.rb +1 -2
- data/lib/cucumber/filters/prepare_world.rb +6 -13
- data/lib/cucumber/filters/quit.rb +3 -7
- 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 +3 -6
- data/lib/cucumber/formatter/ansicolor.rb +33 -37
- data/lib/cucumber/formatter/ast_lookup.rb +165 -0
- data/lib/cucumber/formatter/backtrace_filter.rb +10 -10
- data/lib/cucumber/formatter/console.rb +37 -74
- data/lib/cucumber/formatter/console_counts.rb +4 -9
- data/lib/cucumber/formatter/console_issues.rb +10 -7
- data/lib/cucumber/formatter/duration.rb +2 -1
- data/lib/cucumber/formatter/duration_extractor.rb +4 -2
- data/lib/cucumber/formatter/errors.rb +6 -0
- data/lib/cucumber/formatter/fail_fast.rb +9 -6
- data/lib/cucumber/formatter/fanout.rb +3 -3
- data/lib/cucumber/formatter/html.rb +11 -603
- data/lib/cucumber/formatter/http_io.rb +93 -0
- data/lib/cucumber/formatter/ignore_missing_messages.rb +2 -4
- data/lib/cucumber/formatter/interceptor.rb +10 -12
- data/lib/cucumber/formatter/io.rb +19 -12
- data/lib/cucumber/formatter/json.rb +106 -112
- data/lib/cucumber/formatter/junit.rb +81 -76
- data/lib/cucumber/formatter/message.rb +22 -0
- data/lib/cucumber/formatter/message_builder.rb +241 -0
- data/lib/cucumber/formatter/pretty.rb +353 -153
- data/lib/cucumber/formatter/progress.rb +30 -33
- data/lib/cucumber/formatter/query/hook_by_test_step.rb +31 -0
- data/lib/cucumber/formatter/query/pickle_by_test.rb +26 -0
- data/lib/cucumber/formatter/query/pickle_step_by_test_step.rb +26 -0
- data/lib/cucumber/formatter/query/step_definitions_by_test_step.rb +40 -0
- data/lib/cucumber/formatter/query/test_case_started_by_test_case.rb +40 -0
- data/lib/cucumber/formatter/rerun.rb +24 -5
- data/lib/cucumber/formatter/stepdefs.rb +2 -2
- data/lib/cucumber/formatter/steps.rb +4 -5
- data/lib/cucumber/formatter/summary.rb +18 -11
- data/lib/cucumber/formatter/unicode.rb +16 -18
- data/lib/cucumber/formatter/usage.rb +30 -26
- data/lib/cucumber/gherkin/data_table_parser.rb +18 -6
- data/lib/cucumber/gherkin/formatter/ansi_escapes.rb +83 -86
- data/lib/cucumber/gherkin/formatter/escaping.rb +13 -12
- data/lib/cucumber/gherkin/i18n.rb +1 -0
- data/lib/cucumber/gherkin/steps_parser.rb +18 -8
- data/lib/cucumber/glue/dsl.rb +13 -26
- data/lib/cucumber/glue/hook.rb +35 -11
- data/lib/cucumber/glue/invoke_in_world.rb +15 -20
- data/lib/cucumber/glue/proto_world.rb +48 -42
- data/lib/cucumber/glue/registry_and_more.rb +58 -23
- data/lib/cucumber/glue/snippet.rb +23 -26
- data/lib/cucumber/glue/step_definition.rb +51 -28
- data/lib/cucumber/glue/world_factory.rb +2 -4
- data/lib/cucumber/hooks.rb +27 -17
- data/lib/cucumber/load_path.rb +1 -0
- data/lib/cucumber/multiline_argument.rb +7 -17
- data/lib/cucumber/multiline_argument/data_table.rb +113 -82
- data/lib/cucumber/multiline_argument/data_table/diff_matrices.rb +8 -12
- data/lib/cucumber/multiline_argument/doc_string.rb +2 -1
- data/lib/cucumber/platform.rb +4 -3
- data/lib/cucumber/project_initializer.rb +2 -2
- data/lib/cucumber/rake/task.rb +28 -21
- data/lib/cucumber/rspec/disable_option_parser.rb +10 -8
- data/lib/cucumber/rspec/doubles.rb +1 -0
- data/lib/cucumber/running_test_case.rb +4 -54
- data/lib/cucumber/runtime.rb +32 -63
- data/lib/cucumber/runtime/after_hooks.rb +9 -4
- data/lib/cucumber/runtime/before_hooks.rb +9 -4
- data/lib/cucumber/runtime/for_programming_languages.rb +12 -9
- data/lib/cucumber/runtime/step_hooks.rb +5 -2
- data/lib/cucumber/runtime/support_code.rb +16 -22
- data/lib/cucumber/runtime/user_interface.rb +12 -23
- data/lib/cucumber/step_definition_light.rb +6 -4
- data/lib/cucumber/step_definitions.rb +3 -2
- data/lib/cucumber/step_match.rb +29 -14
- data/lib/cucumber/step_match_search.rb +10 -10
- data/lib/cucumber/term/ansicolor.rb +39 -39
- data/lib/cucumber/unit.rb +1 -0
- data/lib/cucumber/version +1 -1
- data/lib/simplecov_setup.rb +1 -0
- metadata +206 -678
- data/.coveralls.yml +0 -1
- data/.cucumberproignore +0 -6
- data/.github/ISSUE_TEMPLATE.md +0 -48
- data/.github/PULL_REQUEST_TEMPLATE.md +0 -39
- data/.rspec +0 -1
- data/.rubocop.yml +0 -13
- data/.rubocop_todo.yml +0 -1075
- data/.ruby-gemset +0 -1
- data/.travis.yml +0 -69
- data/.yardopts +0 -1
- data/Gemfile +0 -28
- data/Rakefile +0 -32
- data/appveyor.yml +0 -26
- 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 -24
- 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 -5
- data/examples/i18n/bg/features/support/world.rb +0 -8
- data/examples/i18n/bg/lib/calculator.rb +0 -24
- data/examples/i18n/ca/Rakefile +0 -6
- data/examples/i18n/ca/features/step_definitions/calculator_steps.rb +0 -21
- 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 -24
- 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 -24
- 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 -24
- 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 -24
- 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 -7
- 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 -24
- 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 -24
- 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 -21
- 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 -24
- 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 -24
- 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 -5
- 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 -24
- 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 -24
- 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 -25
- 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 -25
- 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 -24
- 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 -24
- 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 -5
- 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 -24
- 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 -24
- 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 -24
- 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 -6
- 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 -24
- data/examples/i18n/pl/features/support/env.rb +0 -5
- 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 -5
- 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 -21
- 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 -5
- data/examples/i18n/ru/features/support/world.rb +0 -8
- data/examples/i18n/ru/lib/calculator.rb +0 -24
- 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 -24
- 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 -5
- 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 -24
- 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 -24
- 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 -24
- 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 -5
- data/examples/i18n/uk/features/support/world.rb +0 -8
- data/examples/i18n/uk/lib/calculator.rb +0 -24
- 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 -5
- data/examples/i18n/uz/features/support/world.rb +0 -8
- data/examples/i18n/uz/lib/calculator.rb +0 -24
- 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 -26
- 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 -24
- 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 -10
- 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 -6
- 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 -26
- data/examples/watir/features/support/env.rb +0 -35
- 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 -117
- 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/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_starting_event.feature +0 -54
- data/features/docs/events/test_run_finished_event.feature +0 -40
- data/features/docs/events/test_run_starting_event.feature +0 -41
- data/features/docs/events/test_step_finished_event.feature +0 -47
- data/features/docs/events/test_step_starting_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 -122
- data/features/docs/formatters/api_methods.feature +0 -37
- data/features/docs/formatters/formatter_step_file_colon_line.feature +0 -44
- 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 -160
- 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 -75
- 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 -13
- 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 -86
- 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 -8
- 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 -11
- 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/lib/cucumber/formatter/cucumber.css +0 -286
- data/lib/cucumber/formatter/cucumber.sass +0 -247
- data/lib/cucumber/formatter/hook_query_visitor.rb +0 -41
- data/lib/cucumber/formatter/html_builder.rb +0 -110
- data/lib/cucumber/formatter/inline-js.js +0 -30
- data/lib/cucumber/formatter/jquery-min.js +0 -154
- data/lib/cucumber/formatter/json_pretty.rb +0 -11
- data/lib/cucumber/formatter/legacy_api/adapter.rb +0 -1012
- data/lib/cucumber/formatter/legacy_api/ast.rb +0 -386
- data/lib/cucumber/formatter/legacy_api/results.rb +0 -50
- data/lib/cucumber/formatter/legacy_api/runtime_facade.rb +0 -32
- data/lib/cucumber/step_argument.rb +0 -24
- data/scripts/invite-collaborator +0 -40
- data/scripts/update-history +0 -83
- data/spec/cucumber/cli/configuration_spec.rb +0 -434
- 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 -840
- data/spec/cucumber/formatter/junit_spec.rb +0 -251
- data/spec/cucumber/formatter/legacy_api/adapter_spec.rb +0 -2187
- data/spec/cucumber/formatter/pretty_spec.rb +0 -920
- 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 -648
- data/spec/cucumber/project_initializer_spec.rb +0 -88
- data/spec/cucumber/rake/forked_spec.rb +0 -54
- 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,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
|
-
"""
|
@@ -1,181 +0,0 @@
|
|
1
|
-
Feature: Nested Steps
|
2
|
-
|
3
|
-
Background:
|
4
|
-
Given a scenario with a step that looks like this:
|
5
|
-
"""gherkin
|
6
|
-
Given two turtles
|
7
|
-
"""
|
8
|
-
And a step definition that looks like this:
|
9
|
-
"""ruby
|
10
|
-
Given /a turtle/ do
|
11
|
-
puts "turtle!"
|
12
|
-
end
|
13
|
-
"""
|
14
|
-
|
15
|
-
@todo-windows
|
16
|
-
Scenario: Use #steps to call several steps at once
|
17
|
-
Given a step definition that looks like this:
|
18
|
-
"""ruby
|
19
|
-
Given /two turtles/ do
|
20
|
-
steps %{
|
21
|
-
Given a turtle
|
22
|
-
And a turtle
|
23
|
-
}
|
24
|
-
end
|
25
|
-
"""
|
26
|
-
When I run the feature with the progress formatter
|
27
|
-
Then the output should contain:
|
28
|
-
"""
|
29
|
-
turtle!
|
30
|
-
|
31
|
-
turtle!
|
32
|
-
|
33
|
-
"""
|
34
|
-
|
35
|
-
@todo-windows
|
36
|
-
Scenario: Use #step to call a single step
|
37
|
-
Given a step definition that looks like this:
|
38
|
-
"""ruby
|
39
|
-
Given /two turtles/ do
|
40
|
-
step "a turtle"
|
41
|
-
step "a turtle"
|
42
|
-
end
|
43
|
-
"""
|
44
|
-
When I run the feature with the progress formatter
|
45
|
-
Then the output should contain:
|
46
|
-
"""
|
47
|
-
turtle!
|
48
|
-
|
49
|
-
turtle!
|
50
|
-
|
51
|
-
"""
|
52
|
-
|
53
|
-
@todo-windows
|
54
|
-
Scenario: Use #steps to call a table
|
55
|
-
Given a step definition that looks like this:
|
56
|
-
"""ruby
|
57
|
-
Given /turtles:/ do |table|
|
58
|
-
table.hashes.each do |row|
|
59
|
-
puts row[:name]
|
60
|
-
end
|
61
|
-
end
|
62
|
-
"""
|
63
|
-
And a step definition that looks like this:
|
64
|
-
"""ruby
|
65
|
-
Given /two turtles/ do
|
66
|
-
steps %{
|
67
|
-
Given turtles:
|
68
|
-
| name |
|
69
|
-
| Sturm |
|
70
|
-
| Liouville |
|
71
|
-
}
|
72
|
-
end
|
73
|
-
"""
|
74
|
-
When I run the feature with the progress formatter
|
75
|
-
Then the output should contain:
|
76
|
-
"""
|
77
|
-
Sturm
|
78
|
-
|
79
|
-
Liouville
|
80
|
-
|
81
|
-
"""
|
82
|
-
|
83
|
-
@todo-windows
|
84
|
-
Scenario: Use #steps to call a multi-line string
|
85
|
-
Given a step definition that looks like this:
|
86
|
-
"""ruby
|
87
|
-
Given /two turtles/ do
|
88
|
-
steps %Q{
|
89
|
-
Given turtles:
|
90
|
-
\"\"\"
|
91
|
-
Sturm
|
92
|
-
Liouville
|
93
|
-
\"\"\"
|
94
|
-
}
|
95
|
-
end
|
96
|
-
"""
|
97
|
-
And a step definition that looks like this:
|
98
|
-
"""ruby
|
99
|
-
Given /turtles:/ do |string|
|
100
|
-
puts string
|
101
|
-
end
|
102
|
-
"""
|
103
|
-
When I run the feature with the progress formatter
|
104
|
-
Then the output should contain:
|
105
|
-
"""
|
106
|
-
Sturm
|
107
|
-
Liouville
|
108
|
-
"""
|
109
|
-
|
110
|
-
@spawn @todo-windows
|
111
|
-
Scenario: Backtrace doesn't skip nested steps
|
112
|
-
Given a step definition that looks like this:
|
113
|
-
"""ruby
|
114
|
-
Given /two turtles/ do
|
115
|
-
step "I have a couple turtles"
|
116
|
-
end
|
117
|
-
|
118
|
-
When(/I have a couple turtles/) { raise 'error' }
|
119
|
-
"""
|
120
|
-
When I run the feature with the progress formatter
|
121
|
-
Then it should fail with:
|
122
|
-
"""
|
123
|
-
error (RuntimeError)
|
124
|
-
./features/step_definitions/steps2.rb:5:in `/I have a couple turtles/'
|
125
|
-
./features/step_definitions/steps2.rb:2:in `/two turtles/'
|
126
|
-
features/test_feature_1.feature:3:in `Given two turtles'
|
127
|
-
|
128
|
-
Failing Scenarios:
|
129
|
-
cucumber features/test_feature_1.feature:2 # Scenario: Test Scenario 1
|
130
|
-
|
131
|
-
1 scenario (1 failed)
|
132
|
-
1 step (1 failed)
|
133
|
-
"""
|
134
|
-
|
135
|
-
Scenario: Undefined nested step
|
136
|
-
Given a file named "features/call_undefined_step_from_step_def.feature" with:
|
137
|
-
"""
|
138
|
-
Feature: Calling undefined step
|
139
|
-
|
140
|
-
Scenario: Call directly
|
141
|
-
Given a step that calls an undefined step
|
142
|
-
|
143
|
-
Scenario: Call via another
|
144
|
-
Given a step that calls a step that calls an undefined step
|
145
|
-
"""
|
146
|
-
And a file named "features/step_definitions/steps.rb" with:
|
147
|
-
"""
|
148
|
-
Given /^a step that calls an undefined step$/ do
|
149
|
-
step 'this does not exist'
|
150
|
-
end
|
151
|
-
|
152
|
-
Given /^a step that calls a step that calls an undefined step$/ do
|
153
|
-
step 'a step that calls an undefined step'
|
154
|
-
end
|
155
|
-
"""
|
156
|
-
When I run `cucumber -q features/call_undefined_step_from_step_def.feature`
|
157
|
-
Then it should fail with exactly:
|
158
|
-
"""
|
159
|
-
Feature: Calling undefined step
|
160
|
-
|
161
|
-
Scenario: Call directly
|
162
|
-
Given a step that calls an undefined step
|
163
|
-
Undefined dynamic step: "this does not exist" (Cucumber::UndefinedDynamicStep)
|
164
|
-
./features/step_definitions/steps.rb:2:in `/^a step that calls an undefined step$/'
|
165
|
-
features/call_undefined_step_from_step_def.feature:4:in `Given a step that calls an undefined step'
|
166
|
-
|
167
|
-
Scenario: Call via another
|
168
|
-
Given a step that calls a step that calls an undefined step
|
169
|
-
Undefined dynamic step: "this does not exist" (Cucumber::UndefinedDynamicStep)
|
170
|
-
./features/step_definitions/steps.rb:2:in `/^a step that calls an undefined step$/'
|
171
|
-
./features/step_definitions/steps.rb:6:in `/^a step that calls a step that calls an undefined step$/'
|
172
|
-
features/call_undefined_step_from_step_def.feature:7:in `Given a step that calls a step that calls an undefined step'
|
173
|
-
|
174
|
-
Failing Scenarios:
|
175
|
-
cucumber features/call_undefined_step_from_step_def.feature:3
|
176
|
-
cucumber features/call_undefined_step_from_step_def.feature:6
|
177
|
-
|
178
|
-
2 scenarios (2 failed)
|
179
|
-
2 steps (2 failed)
|
180
|
-
|
181
|
-
"""
|
@@ -1,37 +0,0 @@
|
|
1
|
-
Feature: Nested Steps in I18n
|
2
|
-
|
3
|
-
Background:
|
4
|
-
Given a scenario with a step that looks like this in japanese:
|
5
|
-
"""gherkin
|
6
|
-
前提 two turtles
|
7
|
-
"""
|
8
|
-
And a step definition that looks like this:
|
9
|
-
"""ruby
|
10
|
-
# -*- coding: utf-8 -*-
|
11
|
-
# frozen_string_literal: true
|
12
|
-
前提 /a turtle/ do
|
13
|
-
puts "turtle!"
|
14
|
-
end
|
15
|
-
"""
|
16
|
-
|
17
|
-
@todo-windows
|
18
|
-
Scenario: Use #steps to call several steps at once
|
19
|
-
Given a step definition that looks like this:
|
20
|
-
"""ruby
|
21
|
-
# -*- coding: utf-8 -*-
|
22
|
-
# frozen_string_literal: true
|
23
|
-
前提 /two turtles/ do
|
24
|
-
steps %{
|
25
|
-
前提 a turtle
|
26
|
-
かつ a turtle
|
27
|
-
}
|
28
|
-
end
|
29
|
-
"""
|
30
|
-
When I run the feature with the progress formatter
|
31
|
-
Then the output should contain:
|
32
|
-
"""
|
33
|
-
turtle!
|
34
|
-
|
35
|
-
turtle!
|
36
|
-
|
37
|
-
"""
|