cucumber 3.0.0 → 3.1.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 +4 -4
- data/CHANGELOG.md +53 -3
- data/CONTRIBUTING.md +2 -4
- data/README.md +6 -5
- data/lib/cucumber/cli/options.rb +3 -1
- data/lib/cucumber/errors.rb +1 -1
- data/lib/cucumber/events/test_step_finished.rb +0 -2
- data/lib/cucumber/events/test_step_started.rb +0 -2
- data/lib/cucumber/events.rb +0 -1
- data/lib/cucumber/filters/quit.rb +0 -1
- data/lib/cucumber/formatter/html.rb +1 -1
- data/lib/cucumber/formatter/html_builder.rb +1 -1
- data/lib/cucumber/formatter/ignore_missing_messages.rb +0 -1
- data/lib/cucumber/formatter/json.rb +1 -1
- data/lib/cucumber/formatter/json_pretty.rb +0 -1
- data/lib/cucumber/formatter/junit.rb +6 -2
- data/lib/cucumber/formatter/rerun.rb +1 -1
- data/lib/cucumber/formatter/summary.rb +0 -1
- data/lib/cucumber/glue/dsl.rb +6 -2
- data/lib/cucumber/glue/proto_world.rb +2 -0
- data/lib/cucumber/glue/step_definition.rb +1 -1
- data/lib/cucumber/glue/world_factory.rb +1 -1
- data/lib/cucumber/hooks.rb +12 -0
- data/lib/cucumber/multiline_argument/data_table/diff_matrices.rb +0 -1
- data/lib/cucumber/multiline_argument/data_table.rb +6 -10
- data/lib/cucumber/multiline_argument.rb +1 -1
- data/lib/cucumber/step_definitions.rb +1 -1
- data/lib/cucumber/step_match.rb +4 -1
- data/lib/cucumber/step_match_search.rb +1 -1
- data/lib/cucumber/version +1 -1
- metadata +32 -571
- 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 -69
- 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/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/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/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 -53
- 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,548 +0,0 @@
|
|
|
1
|
-
Feature: Background
|
|
2
|
-
|
|
3
|
-
Often you find that several scenarios in the same feature start with
|
|
4
|
-
a common context.
|
|
5
|
-
|
|
6
|
-
Cucumber provides a mechanism for this, by providing a `Background` keyword
|
|
7
|
-
where you can specify steps that should be run before each scenario in the
|
|
8
|
-
feature. Typically these will be `Given` steps, but you can use any steps
|
|
9
|
-
that you need to.
|
|
10
|
-
|
|
11
|
-
**Hint:** if you find that some of the scenarios don't fit the background,
|
|
12
|
-
consider splitting them into a separate feature.
|
|
13
|
-
|
|
14
|
-
Background:
|
|
15
|
-
Given a file named "features/passing_background.feature" with:
|
|
16
|
-
"""
|
|
17
|
-
Feature: Passing background sample
|
|
18
|
-
|
|
19
|
-
Background:
|
|
20
|
-
Given '10' cukes
|
|
21
|
-
|
|
22
|
-
Scenario: passing background
|
|
23
|
-
Then I should have '10' cukes
|
|
24
|
-
|
|
25
|
-
Scenario: another passing background
|
|
26
|
-
Then I should have '10' cukes
|
|
27
|
-
"""
|
|
28
|
-
And a file named "features/scenario_outline_passing_background.feature" with:
|
|
29
|
-
"""
|
|
30
|
-
Feature: Passing background with scenario outlines sample
|
|
31
|
-
|
|
32
|
-
Background:
|
|
33
|
-
Given '10' cukes
|
|
34
|
-
|
|
35
|
-
Scenario Outline: passing background
|
|
36
|
-
Then I should have '<count>' cukes
|
|
37
|
-
Examples:
|
|
38
|
-
|count|
|
|
39
|
-
| 10 |
|
|
40
|
-
|
|
41
|
-
Scenario Outline: another passing background
|
|
42
|
-
Then I should have '<count>' cukes
|
|
43
|
-
Examples:
|
|
44
|
-
|count|
|
|
45
|
-
| 10 |
|
|
46
|
-
"""
|
|
47
|
-
And a file named "features/background_tagged_before_on_outline.feature" with:
|
|
48
|
-
"""
|
|
49
|
-
@background_tagged_before_on_outline
|
|
50
|
-
Feature: Background tagged Before on Outline
|
|
51
|
-
|
|
52
|
-
Background:
|
|
53
|
-
Given this step passes
|
|
54
|
-
|
|
55
|
-
Scenario Outline: passing background
|
|
56
|
-
Then I should have '<count>' cukes
|
|
57
|
-
|
|
58
|
-
Examples:
|
|
59
|
-
| count |
|
|
60
|
-
| 888 |
|
|
61
|
-
"""
|
|
62
|
-
And a file named "features/failing_background.feature" with:
|
|
63
|
-
"""
|
|
64
|
-
Feature: Failing background sample
|
|
65
|
-
|
|
66
|
-
Background:
|
|
67
|
-
Given this step raises an error
|
|
68
|
-
And '10' cukes
|
|
69
|
-
|
|
70
|
-
Scenario: failing background
|
|
71
|
-
Then I should have '10' cukes
|
|
72
|
-
|
|
73
|
-
Scenario: another failing background
|
|
74
|
-
Then I should have '10' cukes
|
|
75
|
-
"""
|
|
76
|
-
And a file named "features/scenario_outline_failing_background.feature" with:
|
|
77
|
-
"""
|
|
78
|
-
Feature: Failing background with scenario outlines sample
|
|
79
|
-
|
|
80
|
-
Background:
|
|
81
|
-
Given this step raises an error
|
|
82
|
-
|
|
83
|
-
Scenario Outline: failing background
|
|
84
|
-
Then I should have '<count>' cukes
|
|
85
|
-
Examples:
|
|
86
|
-
|count|
|
|
87
|
-
| 10 |
|
|
88
|
-
|
|
89
|
-
Scenario Outline: another failing background
|
|
90
|
-
Then I should have '<count>' cukes
|
|
91
|
-
Examples:
|
|
92
|
-
|count|
|
|
93
|
-
| 10 |
|
|
94
|
-
"""
|
|
95
|
-
And a file named "features/pending_background.feature" with:
|
|
96
|
-
"""
|
|
97
|
-
Feature: Pending background sample
|
|
98
|
-
|
|
99
|
-
Background:
|
|
100
|
-
Given this step is pending
|
|
101
|
-
|
|
102
|
-
Scenario: pending background
|
|
103
|
-
Then I should have '10' cukes
|
|
104
|
-
|
|
105
|
-
Scenario: another pending background
|
|
106
|
-
Then I should have '10' cukes
|
|
107
|
-
"""
|
|
108
|
-
And a file named "features/failing_background_after_success.feature" with:
|
|
109
|
-
"""
|
|
110
|
-
Feature: Failing background after previously successful background sample
|
|
111
|
-
|
|
112
|
-
Background:
|
|
113
|
-
Given this step passes
|
|
114
|
-
And '10' global cukes
|
|
115
|
-
|
|
116
|
-
Scenario: passing background
|
|
117
|
-
Then I should have '10' global cukes
|
|
118
|
-
|
|
119
|
-
Scenario: failing background
|
|
120
|
-
Then I should have '10' global cukes
|
|
121
|
-
"""
|
|
122
|
-
And a file named "features/failing_background_after_success_outline.feature" with:
|
|
123
|
-
"""
|
|
124
|
-
Feature: Failing background after previously successful background sample
|
|
125
|
-
|
|
126
|
-
Background:
|
|
127
|
-
Given this step passes
|
|
128
|
-
And '10' global cukes
|
|
129
|
-
|
|
130
|
-
Scenario Outline: passing background
|
|
131
|
-
Then I should have '<count>' global cukes
|
|
132
|
-
|
|
133
|
-
Examples:
|
|
134
|
-
| count |
|
|
135
|
-
| 10 |
|
|
136
|
-
|
|
137
|
-
Scenario Outline: failing background
|
|
138
|
-
Then I should have '<count>' global cukes
|
|
139
|
-
|
|
140
|
-
Examples:
|
|
141
|
-
| count |
|
|
142
|
-
| 10 |
|
|
143
|
-
|
|
144
|
-
"""
|
|
145
|
-
And a file named "features/multiline_args_background.feature" with:
|
|
146
|
-
"""
|
|
147
|
-
Feature: Passing background with multiline args
|
|
148
|
-
|
|
149
|
-
Background:
|
|
150
|
-
Given table
|
|
151
|
-
|a|b|
|
|
152
|
-
|c|d|
|
|
153
|
-
And multiline string
|
|
154
|
-
\"\"\"
|
|
155
|
-
I'm a cucumber and I'm okay.
|
|
156
|
-
I sleep all night and I test all day
|
|
157
|
-
\"\"\"
|
|
158
|
-
|
|
159
|
-
Scenario: passing background
|
|
160
|
-
Then the table should be
|
|
161
|
-
|a|b|
|
|
162
|
-
|c|d|
|
|
163
|
-
Then the multiline string should be
|
|
164
|
-
\"\"\"
|
|
165
|
-
I'm a cucumber and I'm okay.
|
|
166
|
-
I sleep all night and I test all day
|
|
167
|
-
\"\"\"
|
|
168
|
-
|
|
169
|
-
Scenario: another passing background
|
|
170
|
-
Then the table should be
|
|
171
|
-
|a|b|
|
|
172
|
-
|c|d|
|
|
173
|
-
Then the multiline string should be
|
|
174
|
-
\"\"\"
|
|
175
|
-
I'm a cucumber and I'm okay.
|
|
176
|
-
I sleep all night and I test all day
|
|
177
|
-
\"\"\"
|
|
178
|
-
"""
|
|
179
|
-
And the standard step definitions
|
|
180
|
-
And a file named "features/step_definitions/cuke_steps.rb" with:
|
|
181
|
-
"""
|
|
182
|
-
Given /^'(.+)' cukes$/ do |cukes| x=1
|
|
183
|
-
raise "We already have #{@cukes} cukes!" if @cukes
|
|
184
|
-
@cukes = cukes
|
|
185
|
-
end
|
|
186
|
-
|
|
187
|
-
Given /^'(.+)' global cukes$/ do |cukes| x=1
|
|
188
|
-
$scenario_runs ||= 0
|
|
189
|
-
raise 'FAIL' if $scenario_runs >= 1
|
|
190
|
-
$cukes = cukes
|
|
191
|
-
$scenario_runs += 1
|
|
192
|
-
end
|
|
193
|
-
|
|
194
|
-
Then /^I should have '(.+)' global cukes$/ do |cukes| x=1
|
|
195
|
-
expect($cukes).to eq cukes
|
|
196
|
-
end
|
|
197
|
-
|
|
198
|
-
Then /^I should have '(.+)' cukes$/ do |cukes| x=1
|
|
199
|
-
expect(@cukes).to eq cukes
|
|
200
|
-
end
|
|
201
|
-
|
|
202
|
-
Before('@background_tagged_before_on_outline') do
|
|
203
|
-
@cukes = '888'
|
|
204
|
-
end
|
|
205
|
-
|
|
206
|
-
After('@background_tagged_before_on_outline') do
|
|
207
|
-
expect(@cukes).to eq '888'
|
|
208
|
-
end
|
|
209
|
-
"""
|
|
210
|
-
|
|
211
|
-
Scenario: run a specific scenario with a background
|
|
212
|
-
When I run `cucumber -q features/passing_background.feature:9`
|
|
213
|
-
Then it should pass with exactly:
|
|
214
|
-
"""
|
|
215
|
-
Feature: Passing background sample
|
|
216
|
-
|
|
217
|
-
Background:
|
|
218
|
-
Given '10' cukes
|
|
219
|
-
|
|
220
|
-
Scenario: another passing background
|
|
221
|
-
Then I should have '10' cukes
|
|
222
|
-
|
|
223
|
-
1 scenario (1 passed)
|
|
224
|
-
2 steps (2 passed)
|
|
225
|
-
|
|
226
|
-
"""
|
|
227
|
-
|
|
228
|
-
Scenario: run a feature with a background that passes
|
|
229
|
-
When I run `cucumber -q features/passing_background.feature`
|
|
230
|
-
Then it should pass with exactly:
|
|
231
|
-
"""
|
|
232
|
-
Feature: Passing background sample
|
|
233
|
-
|
|
234
|
-
Background:
|
|
235
|
-
Given '10' cukes
|
|
236
|
-
|
|
237
|
-
Scenario: passing background
|
|
238
|
-
Then I should have '10' cukes
|
|
239
|
-
|
|
240
|
-
Scenario: another passing background
|
|
241
|
-
Then I should have '10' cukes
|
|
242
|
-
|
|
243
|
-
2 scenarios (2 passed)
|
|
244
|
-
4 steps (4 passed)
|
|
245
|
-
|
|
246
|
-
"""
|
|
247
|
-
|
|
248
|
-
Scenario: run a feature with scenario outlines that has a background that passes
|
|
249
|
-
When I run `cucumber -q features/scenario_outline_passing_background.feature`
|
|
250
|
-
Then it should pass with exactly:
|
|
251
|
-
"""
|
|
252
|
-
Feature: Passing background with scenario outlines sample
|
|
253
|
-
|
|
254
|
-
Background:
|
|
255
|
-
Given '10' cukes
|
|
256
|
-
|
|
257
|
-
Scenario Outline: passing background
|
|
258
|
-
Then I should have '<count>' cukes
|
|
259
|
-
|
|
260
|
-
Examples:
|
|
261
|
-
| count |
|
|
262
|
-
| 10 |
|
|
263
|
-
|
|
264
|
-
Scenario Outline: another passing background
|
|
265
|
-
Then I should have '<count>' cukes
|
|
266
|
-
|
|
267
|
-
Examples:
|
|
268
|
-
| count |
|
|
269
|
-
| 10 |
|
|
270
|
-
|
|
271
|
-
2 scenarios (2 passed)
|
|
272
|
-
4 steps (4 passed)
|
|
273
|
-
|
|
274
|
-
"""
|
|
275
|
-
|
|
276
|
-
Scenario: run a feature with scenario outlines that has a background that passes
|
|
277
|
-
When I run `cucumber -q features/background_tagged_before_on_outline.feature`
|
|
278
|
-
Then it should pass with exactly:
|
|
279
|
-
"""
|
|
280
|
-
@background_tagged_before_on_outline
|
|
281
|
-
Feature: Background tagged Before on Outline
|
|
282
|
-
|
|
283
|
-
Background:
|
|
284
|
-
Given this step passes
|
|
285
|
-
|
|
286
|
-
Scenario Outline: passing background
|
|
287
|
-
Then I should have '<count>' cukes
|
|
288
|
-
|
|
289
|
-
Examples:
|
|
290
|
-
| count |
|
|
291
|
-
| 888 |
|
|
292
|
-
|
|
293
|
-
1 scenario (1 passed)
|
|
294
|
-
2 steps (2 passed)
|
|
295
|
-
|
|
296
|
-
"""
|
|
297
|
-
|
|
298
|
-
@spawn @todo-windows
|
|
299
|
-
Scenario: run a feature with a background that fails
|
|
300
|
-
When I run `cucumber -q features/failing_background.feature`
|
|
301
|
-
Then it should fail with exactly:
|
|
302
|
-
"""
|
|
303
|
-
Feature: Failing background sample
|
|
304
|
-
|
|
305
|
-
Background:
|
|
306
|
-
Given this step raises an error
|
|
307
|
-
error (RuntimeError)
|
|
308
|
-
./features/step_definitions/steps.rb:2:in `/^this step raises an error$/'
|
|
309
|
-
features/failing_background.feature:4:in `Given this step raises an error'
|
|
310
|
-
And '10' cukes
|
|
311
|
-
|
|
312
|
-
Scenario: failing background
|
|
313
|
-
Then I should have '10' cukes
|
|
314
|
-
|
|
315
|
-
Scenario: another failing background
|
|
316
|
-
Then I should have '10' cukes
|
|
317
|
-
|
|
318
|
-
Failing Scenarios:
|
|
319
|
-
cucumber features/failing_background.feature:7
|
|
320
|
-
cucumber features/failing_background.feature:10
|
|
321
|
-
|
|
322
|
-
2 scenarios (2 failed)
|
|
323
|
-
6 steps (2 failed, 4 skipped)
|
|
324
|
-
|
|
325
|
-
"""
|
|
326
|
-
|
|
327
|
-
@spawn @todo-windows
|
|
328
|
-
Scenario: run a feature with scenario outlines that has a background that fails
|
|
329
|
-
When I run `cucumber -q features/scenario_outline_failing_background.feature`
|
|
330
|
-
Then it should fail with exactly:
|
|
331
|
-
"""
|
|
332
|
-
Feature: Failing background with scenario outlines sample
|
|
333
|
-
|
|
334
|
-
Background:
|
|
335
|
-
Given this step raises an error
|
|
336
|
-
error (RuntimeError)
|
|
337
|
-
./features/step_definitions/steps.rb:2:in `/^this step raises an error$/'
|
|
338
|
-
features/scenario_outline_failing_background.feature:4:in `Given this step raises an error'
|
|
339
|
-
|
|
340
|
-
Scenario Outline: failing background
|
|
341
|
-
Then I should have '<count>' cukes
|
|
342
|
-
|
|
343
|
-
Examples:
|
|
344
|
-
| count |
|
|
345
|
-
| 10 |
|
|
346
|
-
|
|
347
|
-
Scenario Outline: another failing background
|
|
348
|
-
Then I should have '<count>' cukes
|
|
349
|
-
|
|
350
|
-
Examples:
|
|
351
|
-
| count |
|
|
352
|
-
| 10 |
|
|
353
|
-
|
|
354
|
-
Failing Scenarios:
|
|
355
|
-
cucumber features/scenario_outline_failing_background.feature:10
|
|
356
|
-
cucumber features/scenario_outline_failing_background.feature:16
|
|
357
|
-
|
|
358
|
-
2 scenarios (2 failed)
|
|
359
|
-
4 steps (2 failed, 2 skipped)
|
|
360
|
-
|
|
361
|
-
"""
|
|
362
|
-
|
|
363
|
-
Scenario: run a feature with a background that is pending
|
|
364
|
-
When I run `cucumber -q features/pending_background.feature`
|
|
365
|
-
Then it should pass with exactly:
|
|
366
|
-
"""
|
|
367
|
-
Feature: Pending background sample
|
|
368
|
-
|
|
369
|
-
Background:
|
|
370
|
-
Given this step is pending
|
|
371
|
-
TODO (Cucumber::Pending)
|
|
372
|
-
./features/step_definitions/steps.rb:3:in `/^this step is pending$/'
|
|
373
|
-
features/pending_background.feature:4:in `Given this step is pending'
|
|
374
|
-
|
|
375
|
-
Scenario: pending background
|
|
376
|
-
Then I should have '10' cukes
|
|
377
|
-
|
|
378
|
-
Scenario: another pending background
|
|
379
|
-
Then I should have '10' cukes
|
|
380
|
-
|
|
381
|
-
2 scenarios (2 pending)
|
|
382
|
-
4 steps (2 skipped, 2 pending)
|
|
383
|
-
|
|
384
|
-
"""
|
|
385
|
-
|
|
386
|
-
@spawn @todo-windows
|
|
387
|
-
Scenario: background passes with first scenario but fails with second
|
|
388
|
-
When I run `cucumber -q features/failing_background_after_success.feature`
|
|
389
|
-
Then it should fail with exactly:
|
|
390
|
-
"""
|
|
391
|
-
Feature: Failing background after previously successful background sample
|
|
392
|
-
|
|
393
|
-
Background:
|
|
394
|
-
Given this step passes
|
|
395
|
-
And '10' global cukes
|
|
396
|
-
|
|
397
|
-
Scenario: passing background
|
|
398
|
-
Then I should have '10' global cukes
|
|
399
|
-
|
|
400
|
-
Scenario: failing background
|
|
401
|
-
And '10' global cukes
|
|
402
|
-
FAIL (RuntimeError)
|
|
403
|
-
./features/step_definitions/cuke_steps.rb:8:in `/^'(.+)' global cukes$/'
|
|
404
|
-
features/failing_background_after_success.feature:5:in `And '10' global cukes'
|
|
405
|
-
Then I should have '10' global cukes
|
|
406
|
-
|
|
407
|
-
Failing Scenarios:
|
|
408
|
-
cucumber features/failing_background_after_success.feature:10
|
|
409
|
-
|
|
410
|
-
2 scenarios (1 failed, 1 passed)
|
|
411
|
-
6 steps (1 failed, 1 skipped, 4 passed)
|
|
412
|
-
|
|
413
|
-
"""
|
|
414
|
-
|
|
415
|
-
@spawn @todo-windows
|
|
416
|
-
Scenario: background passes with first outline scenario but fails with second
|
|
417
|
-
When I run `cucumber -q features/failing_background_after_success_outline.feature`
|
|
418
|
-
Then it should fail with exactly:
|
|
419
|
-
"""
|
|
420
|
-
Feature: Failing background after previously successful background sample
|
|
421
|
-
|
|
422
|
-
Background:
|
|
423
|
-
Given this step passes
|
|
424
|
-
And '10' global cukes
|
|
425
|
-
|
|
426
|
-
Scenario Outline: passing background
|
|
427
|
-
Then I should have '<count>' global cukes
|
|
428
|
-
|
|
429
|
-
Examples:
|
|
430
|
-
| count |
|
|
431
|
-
| 10 |
|
|
432
|
-
|
|
433
|
-
Scenario Outline: failing background
|
|
434
|
-
Then I should have '<count>' global cukes
|
|
435
|
-
|
|
436
|
-
Examples:
|
|
437
|
-
| count |
|
|
438
|
-
| 10 |
|
|
439
|
-
FAIL (RuntimeError)
|
|
440
|
-
./features/step_definitions/cuke_steps.rb:8:in `/^'(.+)' global cukes$/'
|
|
441
|
-
features/failing_background_after_success_outline.feature:5:in `And '10' global cukes'
|
|
442
|
-
|
|
443
|
-
Failing Scenarios:
|
|
444
|
-
cucumber features/failing_background_after_success_outline.feature:19
|
|
445
|
-
|
|
446
|
-
2 scenarios (1 failed, 1 passed)
|
|
447
|
-
6 steps (1 failed, 1 skipped, 4 passed)
|
|
448
|
-
|
|
449
|
-
"""
|
|
450
|
-
|
|
451
|
-
@spawn @todo-windows
|
|
452
|
-
Scenario: background passes with first outline scenario but fails with second (--expand)
|
|
453
|
-
When I run `cucumber -x -q features/failing_background_after_success_outline.feature`
|
|
454
|
-
Then it should fail with exactly:
|
|
455
|
-
"""
|
|
456
|
-
Feature: Failing background after previously successful background sample
|
|
457
|
-
|
|
458
|
-
Background:
|
|
459
|
-
Given this step passes
|
|
460
|
-
And '10' global cukes
|
|
461
|
-
|
|
462
|
-
Scenario Outline: passing background
|
|
463
|
-
Then I should have '<count>' global cukes
|
|
464
|
-
|
|
465
|
-
Examples:
|
|
466
|
-
|
|
467
|
-
Scenario: | 10 |
|
|
468
|
-
Then I should have '10' global cukes
|
|
469
|
-
|
|
470
|
-
Scenario Outline: failing background
|
|
471
|
-
Then I should have '<count>' global cukes
|
|
472
|
-
|
|
473
|
-
Examples:
|
|
474
|
-
|
|
475
|
-
Scenario: | 10 |
|
|
476
|
-
And '10' global cukes
|
|
477
|
-
FAIL (RuntimeError)
|
|
478
|
-
./features/step_definitions/cuke_steps.rb:8:in `/^'(.+)' global cukes$/'
|
|
479
|
-
features/failing_background_after_success_outline.feature:5:in `And '10' global cukes'
|
|
480
|
-
Then I should have '10' global cukes
|
|
481
|
-
|
|
482
|
-
Failing Scenarios:
|
|
483
|
-
cucumber features/failing_background_after_success_outline.feature:19
|
|
484
|
-
|
|
485
|
-
2 scenarios (1 failed, 1 passed)
|
|
486
|
-
6 steps (1 failed, 1 skipped, 4 passed)
|
|
487
|
-
|
|
488
|
-
"""
|
|
489
|
-
|
|
490
|
-
Scenario: background with multline args
|
|
491
|
-
Given a file named "features/step_definitions/steps.rb" with:
|
|
492
|
-
"""
|
|
493
|
-
Given /^table$/ do |table| x=1
|
|
494
|
-
@table = table
|
|
495
|
-
end
|
|
496
|
-
|
|
497
|
-
Given /^multiline string$/ do |string| x=1
|
|
498
|
-
@multiline = string
|
|
499
|
-
end
|
|
500
|
-
|
|
501
|
-
Then /^the table should be$/ do |table| x=1
|
|
502
|
-
expect(@table.raw).to eq table.raw
|
|
503
|
-
end
|
|
504
|
-
|
|
505
|
-
Then /^the multiline string should be$/ do |string| x=1
|
|
506
|
-
expect(@multiline).to eq string
|
|
507
|
-
end
|
|
508
|
-
"""
|
|
509
|
-
When I run `cucumber -q features/multiline_args_background.feature`
|
|
510
|
-
Then it should pass with exactly:
|
|
511
|
-
"""
|
|
512
|
-
Feature: Passing background with multiline args
|
|
513
|
-
|
|
514
|
-
Background:
|
|
515
|
-
Given table
|
|
516
|
-
| a | b |
|
|
517
|
-
| c | d |
|
|
518
|
-
And multiline string
|
|
519
|
-
\"\"\"
|
|
520
|
-
I'm a cucumber and I'm okay.
|
|
521
|
-
I sleep all night and I test all day
|
|
522
|
-
\"\"\"
|
|
523
|
-
|
|
524
|
-
Scenario: passing background
|
|
525
|
-
Then the table should be
|
|
526
|
-
| a | b |
|
|
527
|
-
| c | d |
|
|
528
|
-
Then the multiline string should be
|
|
529
|
-
\"\"\"
|
|
530
|
-
I'm a cucumber and I'm okay.
|
|
531
|
-
I sleep all night and I test all day
|
|
532
|
-
\"\"\"
|
|
533
|
-
|
|
534
|
-
Scenario: another passing background
|
|
535
|
-
Then the table should be
|
|
536
|
-
| a | b |
|
|
537
|
-
| c | d |
|
|
538
|
-
Then the multiline string should be
|
|
539
|
-
\"\"\"
|
|
540
|
-
I'm a cucumber and I'm okay.
|
|
541
|
-
I sleep all night and I test all day
|
|
542
|
-
\"\"\"
|
|
543
|
-
|
|
544
|
-
2 scenarios (2 passed)
|
|
545
|
-
8 steps (8 passed)
|
|
546
|
-
|
|
547
|
-
"""
|
|
548
|
-
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
Feature: Doc strings
|
|
2
|
-
|
|
3
|
-
If you need to specify information in a scenario that won't fit on a single line,
|
|
4
|
-
you can use a DocString.
|
|
5
|
-
|
|
6
|
-
A DocString follows a step, and starts and ends with three double quotes, like this:
|
|
7
|
-
|
|
8
|
-
```gherkin
|
|
9
|
-
When I ask to reset my password
|
|
10
|
-
Then I should receive an email with:
|
|
11
|
-
"""
|
|
12
|
-
Dear bozo,
|
|
13
|
-
|
|
14
|
-
Please click this link to reset your password
|
|
15
|
-
"""
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
It's possible to annotate the DocString with the type of content it contains. This is used by
|
|
19
|
-
formatting tools like http://relishapp.com which will render the contents of the DocString
|
|
20
|
-
appropriately. You specify the content type after the triple quote, like this:
|
|
21
|
-
|
|
22
|
-
```gherkin
|
|
23
|
-
Given there is some Ruby code:
|
|
24
|
-
"""ruby
|
|
25
|
-
puts "hello world"
|
|
26
|
-
"""
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
You can read the content type from the argument passed into your step definition, as shown
|
|
30
|
-
in the example below.
|
|
31
|
-
|
|
32
|
-
@todo-windows
|
|
33
|
-
Scenario: Plain text Docstring
|
|
34
|
-
Given a scenario with a step that looks like this:
|
|
35
|
-
"""gherkin
|
|
36
|
-
Given I have a lot to say:
|
|
37
|
-
\"\"\"
|
|
38
|
-
One
|
|
39
|
-
Two
|
|
40
|
-
Three
|
|
41
|
-
\"\"\"
|
|
42
|
-
"""
|
|
43
|
-
And a step definition that looks like this:
|
|
44
|
-
"""ruby
|
|
45
|
-
Given /say/ do |text|
|
|
46
|
-
puts text
|
|
47
|
-
end
|
|
48
|
-
"""
|
|
49
|
-
When I run the feature with the progress formatter
|
|
50
|
-
Then the output should contain:
|
|
51
|
-
"""
|
|
52
|
-
One
|
|
53
|
-
Two
|
|
54
|
-
Three
|
|
55
|
-
"""
|
|
56
|
-
|
|
57
|
-
@todo-windows
|
|
58
|
-
Scenario: DocString passed as String
|
|
59
|
-
Given a scenario with a step that looks like this:
|
|
60
|
-
"""gherkin
|
|
61
|
-
Given I have some code for you:
|
|
62
|
-
\"\"\"
|
|
63
|
-
hello
|
|
64
|
-
\"\"\"
|
|
65
|
-
"""
|
|
66
|
-
And a step definition that looks like this:
|
|
67
|
-
"""ruby
|
|
68
|
-
Given /code/ do |text|
|
|
69
|
-
puts text.class
|
|
70
|
-
end
|
|
71
|
-
"""
|
|
72
|
-
When I run the feature with the progress formatter
|
|
73
|
-
Then the output should contain:
|
|
74
|
-
"""
|
|
75
|
-
String
|
|
76
|
-
"""
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
Feature: Scenario outlines --expand option
|
|
2
|
-
|
|
3
|
-
In order to make it easier to write certain editor plugins and also
|
|
4
|
-
for some people to understand scenarios, Cucumber will expand examples
|
|
5
|
-
in outlines if you add the `--expand` option when running them.
|
|
6
|
-
|
|
7
|
-
@todo-windows
|
|
8
|
-
Scenario:
|
|
9
|
-
Given a file named "features/test.feature" with:
|
|
10
|
-
"""
|
|
11
|
-
Feature:
|
|
12
|
-
Scenario Outline:
|
|
13
|
-
Given the secret code is <code>
|
|
14
|
-
When I guess <guess>
|
|
15
|
-
Then I am <verdict>
|
|
16
|
-
|
|
17
|
-
Examples:
|
|
18
|
-
| code | guess | verdict |
|
|
19
|
-
| blue | blue | right |
|
|
20
|
-
| red | blue | wrong |
|
|
21
|
-
"""
|
|
22
|
-
When I run `cucumber -i -q --expand`
|
|
23
|
-
Then the stderr should not contain anything
|
|
24
|
-
And it should pass with:
|
|
25
|
-
"""
|
|
26
|
-
Feature:
|
|
27
|
-
|
|
28
|
-
Scenario Outline:
|
|
29
|
-
Given the secret code is <code>
|
|
30
|
-
When I guess <guess>
|
|
31
|
-
Then I am <verdict>
|
|
32
|
-
|
|
33
|
-
Examples:
|
|
34
|
-
|
|
35
|
-
Scenario: | blue | blue | right |
|
|
36
|
-
Given the secret code is blue
|
|
37
|
-
When I guess blue
|
|
38
|
-
Then I am right
|
|
39
|
-
|
|
40
|
-
Scenario: | red | blue | wrong |
|
|
41
|
-
Given the secret code is red
|
|
42
|
-
When I guess blue
|
|
43
|
-
Then I am wrong
|
|
44
|
-
|
|
45
|
-
2 scenarios (2 undefined)
|
|
46
|
-
6 steps (6 undefined)
|
|
47
|
-
"""
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
Feature: Choosing the language from the feature file header
|
|
2
|
-
|
|
3
|
-
In order to simplify command line and settings in IDEs, Cucumber picks
|
|
4
|
-
up the parser language from a `# language` comment at the beginning of
|
|
5
|
-
any feature file. See the examples below for the exact syntax.
|
|
6
|
-
|
|
7
|
-
Scenario: LOLCAT
|
|
8
|
-
Given a file named "features/lolcat.feature" with:
|
|
9
|
-
"""
|
|
10
|
-
# language: en-lol
|
|
11
|
-
OH HAI: STUFFING
|
|
12
|
-
B4: HUNGRY
|
|
13
|
-
I CAN HAZ EMPTY BELLY
|
|
14
|
-
MISHUN: CUKES
|
|
15
|
-
DEN KTHXBAI
|
|
16
|
-
"""
|
|
17
|
-
When I run `cucumber -i features/lolcat.feature -q`
|
|
18
|
-
Then it should pass with:
|
|
19
|
-
"""
|
|
20
|
-
# language: en-lol
|
|
21
|
-
OH HAI: STUFFING
|
|
22
|
-
|
|
23
|
-
B4: HUNGRY
|
|
24
|
-
I CAN HAZ EMPTY BELLY
|
|
25
|
-
|
|
26
|
-
MISHUN: CUKES
|
|
27
|
-
DEN KTHXBAI
|
|
28
|
-
|
|
29
|
-
1 scenario (1 undefined)
|
|
30
|
-
2 steps (2 undefined)
|
|
31
|
-
|
|
32
|
-
"""
|