squirrel-cucumber 0.3.12
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +830 -0
- data/License.txt +20 -0
- data/Manifest.txt +410 -0
- data/README.txt +4 -0
- data/Rakefile +9 -0
- data/bin/cucumber +17 -0
- data/config/hoe.rb +76 -0
- data/config/requirements.rb +15 -0
- data/cucumber.yml +2 -0
- data/examples/cs/README.textile +1 -0
- data/examples/cs/Rakefile +12 -0
- data/examples/cs/compile.bat +1 -0
- data/examples/cs/features/addition.feature +16 -0
- data/examples/cs/features/step_definitons/calculator_steps.rb +19 -0
- data/examples/cs/src/demo/Calculator.cs +20 -0
- data/examples/dos_line_endings/Rakefile +6 -0
- data/examples/dos_line_endings/features/dos_line_endings.feature +9 -0
- data/examples/i18n/README.textile +18 -0
- data/examples/i18n/Rakefile +30 -0
- data/examples/i18n/ar/Rakefile +6 -0
- data/examples/i18n/ar/features/addition.feature +17 -0
- data/examples/i18n/ar/features/step_definitons/calculator_steps.rb +24 -0
- data/examples/i18n/ar/lib/calculator.rb +11 -0
- data/examples/i18n/bg/Rakefile +6 -0
- data/examples/i18n/bg/features/addition.feature +12 -0
- data/examples/i18n/bg/features/consecutive_calculations.feature +19 -0
- data/examples/i18n/bg/features/division.feature +17 -0
- data/examples/i18n/bg/features/step_definitons/calculator_steps.rb +24 -0
- data/examples/i18n/bg/features/support/env.rb +6 -0
- data/examples/i18n/bg/features/support/world.rb +8 -0
- data/examples/i18n/bg/lib/calculator.rb +24 -0
- data/examples/i18n/cat/Rakefile +6 -0
- data/examples/i18n/cat/features/step_definitons/calculator_steps.rb +21 -0
- data/examples/i18n/cat/features/suma.feature +17 -0
- data/examples/i18n/cat/lib/calculadora.rb +16 -0
- data/examples/i18n/da/Rakefile +6 -0
- data/examples/i18n/da/features/step_definitons/kalkulator_steps.rb +24 -0
- data/examples/i18n/da/features/summering.feature +18 -0
- data/examples/i18n/da/lib/kalkulator.rb +11 -0
- data/examples/i18n/de/Rakefile +6 -0
- data/examples/i18n/de/features/addition.feature +17 -0
- data/examples/i18n/de/features/division.feature +10 -0
- data/examples/i18n/de/features/step_definitons/calculator_steps.rb +24 -0
- data/examples/i18n/de/lib/calculator.rb +14 -0
- data/examples/i18n/en-lol/Rakefile +6 -0
- data/examples/i18n/en-lol/features/step_definitions/cucumbrz_steps.rb +16 -0
- data/examples/i18n/en-lol/features/stuffing.feature +8 -0
- data/examples/i18n/en-lol/features/support/env.rb +8 -0
- data/examples/i18n/en-lol/lib/basket.rb +12 -0
- data/examples/i18n/en-lol/lib/belly.rb +11 -0
- data/examples/i18n/en/Rakefile +6 -0
- data/examples/i18n/en/features/addition.feature +17 -0
- data/examples/i18n/en/features/division.feature +10 -0
- data/examples/i18n/en/features/step_definitons/calculator_steps.rb +24 -0
- data/examples/i18n/en/lib/calculator.rb +14 -0
- data/examples/i18n/es/Rakefile +6 -0
- data/examples/i18n/es/features/adicion.feature +17 -0
- data/examples/i18n/es/features/step_definitons/calculador_steps.rb +21 -0
- data/examples/i18n/es/lib/calculador.rb +14 -0
- data/examples/i18n/et/Rakefile +6 -0
- data/examples/i18n/et/features/jagamine.feature +10 -0
- data/examples/i18n/et/features/liitmine.feature +17 -0
- data/examples/i18n/et/features/step_definitions/kalkulaator_steps.rb +24 -0
- data/examples/i18n/et/lib/kalkulaator.rb +14 -0
- data/examples/i18n/fi/Rakefile +6 -0
- data/examples/i18n/fi/features/jakolasku.feature +10 -0
- data/examples/i18n/fi/features/step_definitons/laskin_steps.rb +24 -0
- data/examples/i18n/fi/features/yhteenlasku.feature +16 -0
- data/examples/i18n/fi/lib/laskin.rb +14 -0
- data/examples/i18n/fr/Rakefile +6 -0
- data/examples/i18n/fr/features/addition.feature +18 -0
- data/examples/i18n/fr/features/step_definitions/calculatrice_steps.rb +25 -0
- data/examples/i18n/fr/lib/calculatrice.rb +10 -0
- data/examples/i18n/he/Rakefile +6 -0
- data/examples/i18n/he/features/addition.feature +17 -0
- data/examples/i18n/he/features/division.feature +10 -0
- data/examples/i18n/he/features/step_definitons/calculator_steps.rb +24 -0
- data/examples/i18n/he/lib/calculator.rb +14 -0
- data/examples/i18n/hu/Rakefile +6 -0
- data/examples/i18n/hu/features/addition.feature +17 -0
- data/examples/i18n/hu/features/division.feature +10 -0
- data/examples/i18n/hu/features/step_definitons/calculator_steps.rb +25 -0
- data/examples/i18n/hu/lib/calculator.rb +14 -0
- data/examples/i18n/id/Rakefile +6 -0
- data/examples/i18n/id/features/addition.feature +17 -0
- data/examples/i18n/id/features/division.feature +10 -0
- data/examples/i18n/id/features/step_definitons/calculator_steps.rb +24 -0
- data/examples/i18n/id/lib/calculator.rb +14 -0
- data/examples/i18n/it/Rakefile +6 -0
- data/examples/i18n/it/features/somma.feature +11 -0
- data/examples/i18n/it/features/step_definitons/calcolatrice_steps.rb +24 -0
- data/examples/i18n/it/lib/calcolatrice.rb +11 -0
- data/examples/i18n/ja/Rakefile +6 -0
- data/examples/i18n/ja/features/addition.feature +17 -0
- data/examples/i18n/ja/features/division.feature +10 -0
- data/examples/i18n/ja/features/step_definitons/calculator_steps.rb +24 -0
- data/examples/i18n/ja/lib/calculator.rb +14 -0
- data/examples/i18n/ko/Rakefile +6 -0
- data/examples/i18n/ko/features/addition.feature +17 -0
- data/examples/i18n/ko/features/division.feature +11 -0
- data/examples/i18n/ko/features/step_definitons/calculator_steps.rb +24 -0
- data/examples/i18n/ko/lib/calculator.rb +14 -0
- data/examples/i18n/lt/Rakefile +6 -0
- data/examples/i18n/lt/features/addition.feature +17 -0
- data/examples/i18n/lt/features/division.feature +10 -0
- data/examples/i18n/lt/features/step_definitons/calculator_steps.rb +24 -0
- data/examples/i18n/lt/lib/calculator.rb +14 -0
- data/examples/i18n/lv/Rakefile +6 -0
- data/examples/i18n/lv/features/addition.feature +17 -0
- data/examples/i18n/lv/features/division.feature +10 -0
- data/examples/i18n/lv/features/step_definitons/calculator_steps.rb +24 -0
- data/examples/i18n/lv/lib/calculator.rb +14 -0
- data/examples/i18n/no/Rakefile +6 -0
- data/examples/i18n/no/features/step_definitons/kalkulator_steps.rb +17 -0
- data/examples/i18n/no/features/summering.feature +19 -0
- data/examples/i18n/no/features/support/env.rb +6 -0
- data/examples/i18n/no/lib/kalkulator.rb +11 -0
- data/examples/i18n/pl/Rakefile +6 -0
- data/examples/i18n/pl/features/addition.feature +17 -0
- data/examples/i18n/pl/features/division.feature +10 -0
- data/examples/i18n/pl/features/step_definitons/calculator_steps.rb +24 -0
- data/examples/i18n/pl/features/support/env.rb +6 -0
- data/examples/i18n/pl/lib/calculator.rb +14 -0
- data/examples/i18n/pt/Rakefile +6 -0
- data/examples/i18n/pt/features/adicao.feature +11 -0
- data/examples/i18n/pt/features/step_definitions/calculadora_steps.rb +20 -0
- data/examples/i18n/pt/features/support/env.rb +6 -0
- data/examples/i18n/pt/lib/calculadora.rb +10 -0
- data/examples/i18n/ro/Rakefile +6 -0
- data/examples/i18n/ro/features/step_definitons/calculator_steps.rb +24 -0
- data/examples/i18n/ro/features/suma.feature +11 -0
- data/examples/i18n/ro/lib/calculator.rb +11 -0
- data/examples/i18n/ru/Rakefile +6 -0
- data/examples/i18n/ru/features/addition.feature +11 -0
- data/examples/i18n/ru/features/consecutive_calculations.feature +17 -0
- data/examples/i18n/ru/features/division.feature +16 -0
- data/examples/i18n/ru/features/step_definitons/calculator_steps.rb +19 -0
- data/examples/i18n/ru/features/support/env.rb +6 -0
- data/examples/i18n/ru/features/support/world.rb +8 -0
- data/examples/i18n/ru/lib/calculator.rb +24 -0
- data/examples/i18n/se/Rakefile +6 -0
- data/examples/i18n/se/features/step_definitons/kalkulator_steps.rb +24 -0
- data/examples/i18n/se/features/summering.feature +18 -0
- data/examples/i18n/se/lib/kalkulator.rb +11 -0
- data/examples/i18n/sk/Rakefile +6 -0
- data/examples/i18n/sk/features/addition.feature +17 -0
- data/examples/i18n/sk/features/division.feature +10 -0
- data/examples/i18n/sk/features/step_definitons/calculator_steps.rb +24 -0
- data/examples/i18n/sk/lib/calculator.rb +14 -0
- data/examples/i18n/zh-CN/Rakefile +6 -0
- data/examples/i18n/zh-CN/features/addition.feature +18 -0
- data/examples/i18n/zh-CN/features/step_definitons/calculator_steps.rb +26 -0
- data/examples/i18n/zh-CN/lib/calculator.rb +10 -0
- data/examples/i18n/zh-TW/Rakefile +6 -0
- data/examples/i18n/zh-TW/features/addition.feature +17 -0
- data/examples/i18n/zh-TW/features/division.feature +11 -0
- data/examples/i18n/zh-TW/features/step_definitons/calculator_steps.rb +24 -0
- data/examples/i18n/zh-TW/lib/calculator.rb +14 -0
- data/examples/java/README.textile +18 -0
- data/examples/java/build.xml +33 -0
- data/examples/java/features/hello.feature +11 -0
- data/examples/java/features/step_definitons/hello_steps.rb +23 -0
- data/examples/java/features/step_definitons/tree_steps.rb +14 -0
- data/examples/java/features/tree.feature +9 -0
- data/examples/java/src/cucumber/demo/Hello.java +16 -0
- data/examples/junit/features/one_passing_one_failing.feature +8 -0
- data/examples/junit/features/pending.feature +5 -0
- data/examples/junit/features/step_definitions/steps.rb +11 -0
- data/examples/pure_java/README.textile +5 -0
- data/examples/selenium/Rakefile +6 -0
- data/examples/selenium/features/search.feature +9 -0
- data/examples/selenium/features/step_definitons/search_steps.rb +13 -0
- data/examples/selenium/features/support/env.rb +19 -0
- data/examples/selenium_webrat/Rakefile +6 -0
- data/examples/selenium_webrat/config.ru +0 -0
- data/examples/selenium_webrat/features/search.feature +9 -0
- data/examples/selenium_webrat/features/step_definitons/search_steps.rb +13 -0
- data/examples/selenium_webrat/features/support/env.rb +45 -0
- data/examples/self_test/README.textile +6 -0
- data/examples/self_test/Rakefile +6 -0
- data/examples/self_test/features/background/background_tagged_before_on_outline.feature +12 -0
- data/examples/self_test/features/background/background_with_name.feature +7 -0
- data/examples/self_test/features/background/failing_background.feature +12 -0
- data/examples/self_test/features/background/failing_background_after_success.feature +11 -0
- data/examples/self_test/features/background/multiline_args_background.feature +32 -0
- data/examples/self_test/features/background/passing_background.feature +10 -0
- data/examples/self_test/features/background/pending_background.feature +10 -0
- data/examples/self_test/features/background/scenario_outline_failing_background.feature +16 -0
- data/examples/self_test/features/background/scenario_outline_passing_background.feature +16 -0
- data/examples/self_test/features/call_undefined_step_from_step_def.feature +7 -0
- data/examples/self_test/features/failing_expectation.feature +4 -0
- data/examples/self_test/features/lots_of_undefined.feature +8 -0
- data/examples/self_test/features/multiline_name.feature +27 -0
- data/examples/self_test/features/outline_sample.feature +15 -0
- data/examples/self_test/features/sample.feature +21 -0
- data/examples/self_test/features/search_sample.feature +32 -0
- data/examples/self_test/features/step_definitions/sample_steps.rb +81 -0
- data/examples/self_test/features/support/env.rb +17 -0
- data/examples/self_test/features/tons_of_cukes.feature +52 -0
- data/examples/self_test/features/undefined_multiline_args.feature +12 -0
- data/examples/sinatra/Rakefile +6 -0
- data/examples/sinatra/app.rb +14 -0
- data/examples/sinatra/features/add.feature +11 -0
- data/examples/sinatra/features/step_definitions/add_steps.rb +15 -0
- data/examples/sinatra/features/support/env.rb +28 -0
- data/examples/sinatra/views/add.erb +5 -0
- data/examples/sinatra/views/layout.erb +8 -0
- data/examples/test_unit/Rakefile +6 -0
- data/examples/test_unit/features/step_definitions/test_unit_steps.rb +23 -0
- data/examples/test_unit/features/test_unit.feature +9 -0
- data/examples/tickets/Rakefile +16 -0
- data/examples/tickets/features/172.feature +28 -0
- data/examples/tickets/features/177/1.feature +29 -0
- data/examples/tickets/features/177/2.feature +21 -0
- data/examples/tickets/features/177/3.feature +18 -0
- data/examples/tickets/features/180.feature +7 -0
- data/examples/tickets/features/229/tagged_hooks.feature +8 -0
- data/examples/tickets/features/229/tagged_hooks.rb +14 -0
- data/examples/tickets/features/236.feature +13 -0
- data/examples/tickets/features/241.feature +13 -0
- data/examples/tickets/features/246.feature +4 -0
- data/examples/tickets/features/248.feature +11 -0
- data/examples/tickets/features/270/back.feature +14 -0
- data/examples/tickets/features/270/back.steps.rb +14 -0
- data/examples/tickets/features/272/hooks.feature +26 -0
- data/examples/tickets/features/272/hooks_steps.rb +53 -0
- data/examples/tickets/features/279/py_string_indent.feature +25 -0
- data/examples/tickets/features/279/py_string_indent.steps.rb +12 -0
- data/examples/tickets/features/279/wrong.feature_ +11 -0
- data/examples/tickets/features/301/filter_background_tagged_hooks.feature +6 -0
- data/examples/tickets/features/301/filter_background_tagged_hooks_steps.rb +12 -0
- data/examples/tickets/features/306/only_background.feature +4 -0
- data/examples/tickets/features/lib/eatting_machine.rb +18 -0
- data/examples/tickets/features/lib/pantry.rb +20 -0
- data/examples/tickets/features/scenario_outline.feature +95 -0
- data/examples/tickets/features/step_definitons/246_steps.rb +3 -0
- data/examples/tickets/features/step_definitons/248_steps.rb +15 -0
- data/examples/tickets/features/step_definitons/scenario_outline_steps.rb +42 -0
- data/examples/tickets/features/step_definitons/tickets_steps.rb +66 -0
- data/examples/tickets/features/tickets.feature +28 -0
- data/examples/watir/README.textile +16 -0
- data/examples/watir/Rakefile +6 -0
- data/examples/watir/features/search.feature +12 -0
- data/examples/watir/features/step_definitons/search_steps.rb +22 -0
- data/examples/watir/features/support/env.rb +32 -0
- data/features/after_block_exceptions.feature +102 -0
- data/features/after_step_block_exceptions.feature +104 -0
- data/features/background.feature +311 -0
- data/features/bug_371.feature +32 -0
- data/features/cucumber_cli.feature +549 -0
- data/features/cucumber_cli_diff_disabled.feature +53 -0
- data/features/cucumber_cli_outlines.feature +109 -0
- data/features/custom_formatter.feature +11 -0
- data/features/drb_server_integration.feature +115 -0
- data/features/exclude_files.feature +20 -0
- data/features/expand.feature +49 -0
- data/features/html_formatter.feature +7 -0
- data/features/html_formatter/a.html +185 -0
- data/features/junit_formatter.feature +71 -0
- data/features/language_from_header.feature +30 -0
- data/features/multiline_names.feature +43 -0
- data/features/rake_task.feature +150 -0
- data/features/report_called_undefined_steps.feature +35 -0
- data/features/snippet.feature +22 -0
- data/features/step_definitions/cucumber_steps.rb +130 -0
- data/features/step_definitions/extra_steps.rb +2 -0
- data/features/support/env.rb +120 -0
- data/features/usage.feature +126 -0
- data/features/work_in_progress.feature +151 -0
- data/gem_tasks/deployment.rake +11 -0
- data/gem_tasks/environment.rake +7 -0
- data/gem_tasks/features.rake +10 -0
- data/gem_tasks/fix_cr_lf.rake +10 -0
- data/gem_tasks/flog.rake +4 -0
- data/gem_tasks/gemspec.rake +10 -0
- data/gem_tasks/rspec.rake +45 -0
- data/gem_tasks/sass.rake +4 -0
- data/gem_tasks/yard.rake +8 -0
- data/lib/autotest/cucumber.rb +6 -0
- data/lib/autotest/cucumber_mixin.rb +125 -0
- data/lib/autotest/cucumber_rails.rb +6 -0
- data/lib/autotest/cucumber_rails_rspec.rb +6 -0
- data/lib/autotest/cucumber_rspec.rb +6 -0
- data/lib/autotest/discover.rb +9 -0
- data/lib/cucumber.rb +11 -0
- data/lib/cucumber/ast.rb +29 -0
- data/lib/cucumber/ast/background.rb +62 -0
- data/lib/cucumber/ast/comment.rb +30 -0
- data/lib/cucumber/ast/examples.rb +26 -0
- data/lib/cucumber/ast/feature.rb +58 -0
- data/lib/cucumber/ast/feature_element.rb +57 -0
- data/lib/cucumber/ast/features.rb +30 -0
- data/lib/cucumber/ast/outline_table.rb +143 -0
- data/lib/cucumber/ast/py_string.rb +57 -0
- data/lib/cucumber/ast/scenario.rb +83 -0
- data/lib/cucumber/ast/scenario_outline.rb +93 -0
- data/lib/cucumber/ast/step.rb +112 -0
- data/lib/cucumber/ast/step_collection.rb +75 -0
- data/lib/cucumber/ast/step_invocation.rb +136 -0
- data/lib/cucumber/ast/table.rb +334 -0
- data/lib/cucumber/ast/tags.rb +33 -0
- data/lib/cucumber/ast/visitor.rb +116 -0
- data/lib/cucumber/broadcaster.rb +13 -0
- data/lib/cucumber/cli/configuration.rb +425 -0
- data/lib/cucumber/cli/drb_client.rb +20 -0
- data/lib/cucumber/cli/language_help_formatter.rb +59 -0
- data/lib/cucumber/cli/main.rb +136 -0
- data/lib/cucumber/core_ext/exception.rb +53 -0
- data/lib/cucumber/core_ext/instance_exec.rb +67 -0
- data/lib/cucumber/core_ext/proc.rb +29 -0
- data/lib/cucumber/core_ext/string.rb +48 -0
- data/lib/cucumber/feature_file.rb +47 -0
- data/lib/cucumber/filter.rb +50 -0
- data/lib/cucumber/formatter/ansicolor.rb +110 -0
- data/lib/cucumber/formatter/color_io.rb +23 -0
- data/lib/cucumber/formatter/console.rb +149 -0
- data/lib/cucumber/formatter/cucumber.css +132 -0
- data/lib/cucumber/formatter/cucumber.sass +139 -0
- data/lib/cucumber/formatter/duration.rb +10 -0
- data/lib/cucumber/formatter/html.rb +258 -0
- data/lib/cucumber/formatter/junit.rb +75 -0
- data/lib/cucumber/formatter/pretty.rb +188 -0
- data/lib/cucumber/formatter/profile.rb +77 -0
- data/lib/cucumber/formatter/progress.rb +60 -0
- data/lib/cucumber/formatter/rerun.rb +44 -0
- data/lib/cucumber/formatter/tag_cloud.rb +28 -0
- data/lib/cucumber/formatter/unicode.rb +35 -0
- data/lib/cucumber/formatter/usage.rb +85 -0
- data/lib/cucumber/formatters/unicode.rb +7 -0
- data/lib/cucumber/languages.yml +532 -0
- data/lib/cucumber/parser.rb +6 -0
- data/lib/cucumber/parser/feature.rb +1787 -0
- data/lib/cucumber/parser/feature.tt +324 -0
- data/lib/cucumber/parser/i18n.tt +42 -0
- data/lib/cucumber/parser/i18n/language.rb +80 -0
- data/lib/cucumber/parser/table.rb +414 -0
- data/lib/cucumber/parser/table.tt +71 -0
- data/lib/cucumber/parser/treetop_ext.rb +52 -0
- data/lib/cucumber/platform.rb +23 -0
- data/lib/cucumber/rails/rspec.rb +10 -0
- data/lib/cucumber/rails/world.rb +99 -0
- data/lib/cucumber/rake/task.rb +233 -0
- data/lib/cucumber/rspec_neuter.rb +23 -0
- data/lib/cucumber/step_definition.rb +122 -0
- data/lib/cucumber/step_match.rb +61 -0
- data/lib/cucumber/step_mother.rb +362 -0
- data/lib/cucumber/version.rb +10 -0
- data/lib/cucumber/webrat/mechanize_world.rb +79 -0
- data/lib/cucumber/world.rb +53 -0
- data/rails_generators/cucumber/USAGE +11 -0
- data/rails_generators/cucumber/cucumber_generator.rb +66 -0
- data/rails_generators/cucumber/templates/cucumber +8 -0
- data/rails_generators/cucumber/templates/cucumber.rake +20 -0
- data/rails_generators/cucumber/templates/cucumber_environment.rb +23 -0
- data/rails_generators/cucumber/templates/env.rb +26 -0
- data/rails_generators/cucumber/templates/paths.rb +27 -0
- data/rails_generators/cucumber/templates/spork_env.rb +36 -0
- data/rails_generators/cucumber/templates/webrat_steps.rb +147 -0
- data/rails_generators/feature/USAGE +12 -0
- data/rails_generators/feature/feature_generator.rb +40 -0
- data/rails_generators/feature/templates/feature.erb +31 -0
- data/rails_generators/feature/templates/steps.erb +20 -0
- data/spec/cucumber/ast/background_spec.rb +50 -0
- data/spec/cucumber/ast/feature_element_spec.rb +40 -0
- data/spec/cucumber/ast/feature_factory.rb +63 -0
- data/spec/cucumber/ast/feature_spec.rb +38 -0
- data/spec/cucumber/ast/py_string_spec.rb +51 -0
- data/spec/cucumber/ast/scenario_outline_spec.rb +67 -0
- data/spec/cucumber/ast/scenario_spec.rb +38 -0
- data/spec/cucumber/ast/step_collection_spec.rb +17 -0
- data/spec/cucumber/ast/step_spec.rb +66 -0
- data/spec/cucumber/ast/table_spec.rb +186 -0
- data/spec/cucumber/ast/visitor_spec.rb +27 -0
- data/spec/cucumber/broadcaster_spec.rb +15 -0
- data/spec/cucumber/cli/configuration_spec.rb +396 -0
- data/spec/cucumber/cli/drb_client_spec.rb +43 -0
- data/spec/cucumber/cli/main_spec.rb +140 -0
- data/spec/cucumber/core_ext/proc_spec.rb +54 -0
- data/spec/cucumber/core_ext/string_spec.rb +42 -0
- data/spec/cucumber/formatter/ansicolor_spec.rb +35 -0
- data/spec/cucumber/formatter/color_io_spec.rb +27 -0
- data/spec/cucumber/formatter/duration_spec.rb +22 -0
- data/spec/cucumber/formatter/progress_spec.rb +36 -0
- data/spec/cucumber/parser/feature_parser_spec.rb +387 -0
- data/spec/cucumber/parser/table_parser_spec.rb +48 -0
- data/spec/cucumber/rails/stubs/mini_rails.rb +18 -0
- data/spec/cucumber/rails/stubs/test_help.rb +1 -0
- data/spec/cucumber/rails/world_spec.rb +11 -0
- data/spec/cucumber/sell_cucumbers.feature +19 -0
- data/spec/cucumber/step_definition_spec.rb +101 -0
- data/spec/cucumber/step_mother_spec.rb +155 -0
- data/spec/cucumber/treetop_parser/empty_feature.feature +4 -0
- data/spec/cucumber/treetop_parser/empty_scenario.feature +9 -0
- data/spec/cucumber/treetop_parser/empty_scenario_outline.feature +3 -0
- data/spec/cucumber/treetop_parser/fit_scenario.feature +8 -0
- data/spec/cucumber/treetop_parser/given_scenario.feature +9 -0
- data/spec/cucumber/treetop_parser/invalid_scenario_outlines.feature +7 -0
- data/spec/cucumber/treetop_parser/multiline_steps.feature +17 -0
- data/spec/cucumber/treetop_parser/multiple_tables.feature +27 -0
- data/spec/cucumber/treetop_parser/scenario_outline.feature +16 -0
- data/spec/cucumber/treetop_parser/spaces.feature +12 -0
- data/spec/cucumber/treetop_parser/test_dos.feature +25 -0
- data/spec/cucumber/treetop_parser/with_comments.feature +10 -0
- data/spec/cucumber/treetop_parser/with_tags.feature +18 -0
- data/spec/cucumber/world/pending_spec.rb +47 -0
- data/spec/spec.opts +2 -0
- data/spec/spec_helper.rb +13 -0
- metadata +503 -0
data/History.txt
ADDED
@@ -0,0 +1,830 @@
|
|
1
|
+
== 0.3.12 (In Git)
|
2
|
+
|
3
|
+
The Egality release
|
4
|
+
|
5
|
+
English is not the world's most spoken language, so why should Cucumber force non-English speakers to use the
|
6
|
+
--language flag? As of this release you're no longer forced to do that. Instead, you can add a comment header
|
7
|
+
to your .feature files:
|
8
|
+
|
9
|
+
# language: fr
|
10
|
+
Fonctionnalité: Trou de boulette
|
11
|
+
|
12
|
+
If you don't have that header, Cucumber will work as before - using whatever you specified with --language,
|
13
|
+
or default to English if no --language option was specified. A nice side effect of this is that you can now
|
14
|
+
have features in several languages side by side and run them in the same cucumber. (Not recommended unless
|
15
|
+
you want to take polyglot programming to an extreme level).
|
16
|
+
|
17
|
+
Another useful new feature is the ability to define environment variables on Cucumber's command line (just
|
18
|
+
like you can with Rake). Example:
|
19
|
+
|
20
|
+
cucumber FOO=BAR --format progress features
|
21
|
+
|
22
|
+
You can now pick up ENV['FOO'] in ruby (for example in env.rb) and take actions according to the value,
|
23
|
+
for example enabling your super hack that validates all HTTP responses for XHTML validity.
|
24
|
+
|
25
|
+
This release also has several bugfixes related to --format and Before/Adter hooks.
|
26
|
+
|
27
|
+
=== Bugfixes
|
28
|
+
* Before and After hooks run after everything is finished whn there are 2+ --format options (#371 Aslak Hellesøy)
|
29
|
+
* When using --out and two --format the first is not delivered inline with execution of features (#361 Aslak Hellesøy)
|
30
|
+
* Profile Formatter broken (#370 Aslak Hellesøy)
|
31
|
+
* Default profile usage with --drb flag degrades gracefully with no server. (#367 Ben Mabey)
|
32
|
+
* JUnit formatter uses original file name instead of narrative to avoid accidental duplicate XML files (Aslak Hellesøy)
|
33
|
+
* rake gems no longer lists cucumber as a [F]ramework gem (David Chelimsky)
|
34
|
+
* CLI issues correct exit code when using --drb. Requires Spork version >= 0.5.1. (#355 Ben Mabey)
|
35
|
+
* Make sure script/generate cucumber --spork uses the cucumber Rails environment (Philippe Lafoucrière)
|
36
|
+
|
37
|
+
=== New Features
|
38
|
+
* New --format steps formatter. Variant of the usage formatter that lists available step definitions (Demetrius Nunes)
|
39
|
+
* Possibility to specify scenario language as part of the .feature file (#345 Aslak Hellesøy)
|
40
|
+
* Support specifying environment variables using foo=bar syntax on command line or in profiles (#362 Bryan Helmkamp)
|
41
|
+
* Display failing scenarios at the end of pretty format to make it easier for people to play them back (#360 Ryan Bigg)
|
42
|
+
|
43
|
+
=== Changed Features
|
44
|
+
* The data returned from Table#hashes and similar methods are frozen. Dup if you need to modify. (Aslak Hellesøy)
|
45
|
+
|
46
|
+
== 0.3.11 2009-06-05
|
47
|
+
|
48
|
+
This release just fixes a tiny bug in the formatter to fix an incompatibility
|
49
|
+
with the latest RedMine release. It should have been included in 0.3.10, but
|
50
|
+
was forgotten.
|
51
|
+
|
52
|
+
=== Bugfixes
|
53
|
+
* Formatter API was broken in 0.3.9 (Roman Chernyatchik)
|
54
|
+
|
55
|
+
== 0.3.10 2009-06-05
|
56
|
+
|
57
|
+
The Spork Release!
|
58
|
+
|
59
|
+
This release has an exciting new feature - a new --drb switch! This magic switch lets you run your
|
60
|
+
features much faster than before, because you can eliminate the startup time for your code. This is
|
61
|
+
thanks to a brand new gem called Spork by Tim Harper and Ben Mabey. (You can find out more about Spork
|
62
|
+
here: http://github.com/timcharper/spork/tree/master). You can start Spork and have it preload your
|
63
|
+
application in a separate process. Spork listens for DRb connections, and when you run cucumber with
|
64
|
+
--drb the features will run inside the Spork server instead. Spork provides two simple hooks for preloading
|
65
|
+
your application - one for framework/stable code (Spork.prefork) and one for the code that *you* write and
|
66
|
+
change often (Spork.each_run). Keep in mind that all World, Before, and other Cucumber hooks need to be
|
67
|
+
in the Spork.each_run block. Using Spork works great for Ruby on Rails, which can take a while to load,
|
68
|
+
but --drb and Spork aren't tied to Rails at all. The new --drb switch also works great alongside autotest
|
69
|
+
(just add --drb to your autotest profile in cucumber.yml), so now you can get even faster feedback.
|
70
|
+
|
71
|
+
Cucumber's built-in cucumber generator now has a new --spork switch, so when you bootstrap your Rails
|
72
|
+
application for cucumber, you can have spork configuration set up out of the box. (It's just a
|
73
|
+
slightly different env.rb.)
|
74
|
+
|
75
|
+
Although Spork was in mind when the --drb switch was added it is important to realize that all that was added
|
76
|
+
to Cucumber was a DRb client. Any DRb server that adheres to this protocol can be used with Cucumber's --drb
|
77
|
+
switch. While Spork is geared towards removing the load time to give you a faster feedback loop you could
|
78
|
+
just as easily use this client with a server that distributes your features to run in parallel. Someone just
|
79
|
+
needs to write such a server. ;)
|
80
|
+
|
81
|
+
This release also has some minor bugfixes related to RSpec and Rails interop.
|
82
|
+
|
83
|
+
=== Bugfixes
|
84
|
+
* RSpec's be_* matchers did not work in 0.3.9 and probably earlier versions. Now they do. (Aslak Hellesøy)
|
85
|
+
* The Rails cucumber environment won't declare gem dependencies if the plugin exists. (Aslak Hellesøy)
|
86
|
+
* The Rails cucumber generator will no longer declare gem dependencies on rspec if you use --testunit. (Aslak Hellesøy)
|
87
|
+
|
88
|
+
=== New features
|
89
|
+
* Spork support via --drb. (Ben Mabey)
|
90
|
+
* Added a Ast::Feature#name method for convenience. (Aslak Hellesøy)
|
91
|
+
|
92
|
+
=== Changed features
|
93
|
+
* The HTML formatter wraps examples in a div, and distinguishes between Scenario and Scenario Outline. (Aslak Hellesøy)
|
94
|
+
|
95
|
+
== 0.3.9 2009-05-27
|
96
|
+
|
97
|
+
Bugfix release for 0.3.8 released earlier today. 0.3.8 had a bug in the Rails cucumber
|
98
|
+
generator which is fixed in 0.3.9.
|
99
|
+
|
100
|
+
=== Bugfixes
|
101
|
+
* Fix broken Rails cucumber generator (Tim Glen)
|
102
|
+
* The Cucumber Rake task in non-fork mode will properly cause Rake to exit with 1 when Cucumber fails. (Aslak Hellesøy)
|
103
|
+
|
104
|
+
== 0.3.8 2009-05-27
|
105
|
+
|
106
|
+
This Cucumber version fixes several bugs related to Ruby on Rails and RSpec. If you
|
107
|
+
use Cucumber with a Rails app we *strongly* recommend you bootstrap Cucumber again:
|
108
|
+
|
109
|
+
ruby script/generate cucumber
|
110
|
+
|
111
|
+
=== New Features
|
112
|
+
* Rails cucumber generator sets up default gem dependencies in cucumber environment.
|
113
|
+
* The duration of a run is reported by formatters - same format as the Linux time command (#228 Aslak Hellesøy)
|
114
|
+
* Scenario and ExampleRow objects (passed to Before and After hooks) have #name and #line methods (#316 Aslak Hellesøy)
|
115
|
+
* Rails generator creates a cucumber environment file to avoid potential cache_classes conflicts in test.rb (#165, Ben Mabey)
|
116
|
+
* HTML formatter renders @tags (but the CSS is still ugly)
|
117
|
+
|
118
|
+
=== Removed/changed features
|
119
|
+
* The Cucumber Rake task will again fork by default (as 0.3.3 and earlier). Forking must be turned off explicitly. (Aslak Hellesøy)
|
120
|
+
|
121
|
+
=== Bugfixes
|
122
|
+
* Better coexistence with RSpec - Cucumber now *neuters* the part of RSpec that tries to parse ARGV.
|
123
|
+
* The differ= exception is gone (#325, #340 Aslak Hellesøy)
|
124
|
+
|
125
|
+
== 0.3.7 2009-05-22
|
126
|
+
|
127
|
+
This is the "Help JetBrains RubyMine" release!
|
128
|
+
|
129
|
+
=== New Features
|
130
|
+
* Added new Given alias for Catalan: Donat|Donada (Lleïr Borràs Metje)
|
131
|
+
* New --expand option. This will print Scenario Outlines once for each Example row - with values expanded. (#327 Aslak Hellesøy)
|
132
|
+
* You can override the formatter in Rails-generated rake tasks with the CUCUMBER_FORMAT environment variable (#335 Aslak Hellesøy)
|
133
|
+
|
134
|
+
=== Bugfixes
|
135
|
+
* 'specs' folder needs to be renamed back to 'spec' (#339 Aslak Hellesøy)
|
136
|
+
* CUCUMBER_OPTS doesn't work for cucumber rake tasks (#336 Aslak Hellesøy)
|
137
|
+
|
138
|
+
== 0.3.6 2009-05-20
|
139
|
+
|
140
|
+
Kanban! With this release you can tag features or scenarios that are work in progress
|
141
|
+
with a tag and use the new --wip switch.
|
142
|
+
|
143
|
+
Another handy feature in this release is that you can package your own formatters in RubyGems.
|
144
|
+
|
145
|
+
=== New features
|
146
|
+
* New --wip switch. See http://www.jroller.com/perryn/entry/bdd_on_a_multi_disciplined (Perryn Fowler)
|
147
|
+
* Added a AfterStep hook (Luke Melia)
|
148
|
+
* New aliases for Vietnamese (Ngoc Dao)
|
149
|
+
* Automatic require of custom formatters. --require is no longer needed to load them, and they can be in Ruby gems. (Aslak Hellesøy)
|
150
|
+
* Lazy loading of built-in formatters. Should improve startup time a little bit.
|
151
|
+
|
152
|
+
=== Bugfixes
|
153
|
+
* Gracefully handle exceptions in After block (#330 Matt Wynne)
|
154
|
+
* Feature with only Background doesn't run hooks (#314, #329 Aslak Hellesøy)
|
155
|
+
|
156
|
+
== 0.3.5 2009-05-14
|
157
|
+
|
158
|
+
Let's make a new release today because two annoying bugs are fixed.
|
159
|
+
|
160
|
+
=== Bugfixes
|
161
|
+
* Allow feature element names to contain Gherkin keywords as long as they are not the first word on a newline (#319, #307 Joseph Wilk)
|
162
|
+
|
163
|
+
== 0.3.4 2009-05-14
|
164
|
+
|
165
|
+
A couple of great new features in this release. Running with Rake is faster than before,
|
166
|
+
and there is a brand new JUnit formatter - great for Continuous Integration reports!
|
167
|
+
|
168
|
+
This release was made especially for the Oslo XP Meetup today.
|
169
|
+
|
170
|
+
** IMPORTANT UPGRADE NOTES FOR RAILS USERS **
|
171
|
+
|
172
|
+
Running Cucumber features in the same Ruby interpreter as Rake doesn't seem to work,
|
173
|
+
so you have to explicitly tell the task to fork (like it was doing by default in prior
|
174
|
+
versions). In lib/tasks/cucumber.rake:
|
175
|
+
|
176
|
+
Cucumber::Rake::Task.new(:features) do |t|
|
177
|
+
t.fork = true # Explicitly fork
|
178
|
+
t.cucumber_opts = %w{--format pretty}
|
179
|
+
end
|
180
|
+
|
181
|
+
(If you run script/generate cucumber this will be done for you).
|
182
|
+
Alternatively you can omit forking and run features like this:
|
183
|
+
|
184
|
+
RAILS_ENV=test rake features
|
185
|
+
|
186
|
+
However, setting the RAILS_ENV is easy to forget, so I don't recommend relying on this.
|
187
|
+
|
188
|
+
=== Bugfixes
|
189
|
+
* Hooks (World, Before, After) are no longer executed when --dry-run (Aslak Hellesøy)
|
190
|
+
* Proper UTF8 use in HTML formatter (Herminio Torres)
|
191
|
+
* Problem with multiple terms in languages.yml (#321 Aslak Hellesøy)
|
192
|
+
|
193
|
+
=== New features
|
194
|
+
* New JUnit formatter (Gareth Jones)
|
195
|
+
* Support for Vietnamese (Ngoc Dao)
|
196
|
+
* Added aliases for Feature and But in Japanese (Leonard Chin)
|
197
|
+
* Support for Catalan (Francesc Esplugas)
|
198
|
+
|
199
|
+
=== Changed features
|
200
|
+
* --exclude flag now works on ruby files in addition to feature files (#312 Ben Mabey)
|
201
|
+
* The Java example under examples/java uses Ant instead of Rake - and the new JUnit formatter.
|
202
|
+
* Rake task should not shell out (#297 Aslak Hellesøy)
|
203
|
+
The Cucumber Rake task will run Cucumber in the same Ruby interpreter as Rake itself
|
204
|
+
unless explicitly told to fork a new interpreter. This is to increase speed. You can
|
205
|
+
force a new interpreter by setting fork=true or rcov=true in the task.
|
206
|
+
|
207
|
+
== 0.3.3 2009-05-10
|
208
|
+
|
209
|
+
Minor bugfix release, made specially for EuRuKo!
|
210
|
+
|
211
|
+
=== Bugfixes
|
212
|
+
* Summaries are no longer printed in an empty () if there are no scenarios/steps (Aslak Hellesøy)
|
213
|
+
* Background, Scenario Outline, Before Hook interaction (#309 Aslak Hellesøy)
|
214
|
+
* Multiline String snippets no longer give misleading info. It's a String, not a PyString that's sent to step def.
|
215
|
+
|
216
|
+
=== Removed/changed features
|
217
|
+
* New aliases: --no-source/-s, --name/-n (#317 Lonnon Foster)
|
218
|
+
|
219
|
+
== 0.3.2 2009-05-05
|
220
|
+
|
221
|
+
This release has some minor bug fixes and new features.
|
222
|
+
Nothing major, but we need a release for RailsConf'09 in Las Vegas!
|
223
|
+
|
224
|
+
=== Bugfixes
|
225
|
+
* rake tasks with profiles not respecting --require flags (#311 Ben Mabey)
|
226
|
+
* Step table with blank cell fails (#308 JohnnyT)
|
227
|
+
* Fixed error where unused table cells in Examples where raising exceptions due to having no status (#302 Joseph Wilk)
|
228
|
+
|
229
|
+
=== New features
|
230
|
+
* Support for Hebrew (Ido Kanner)
|
231
|
+
* Summary should report scenarios (#32 Aslak Hellesøy)
|
232
|
+
* Examples and the associated tables are indented one level deeper than Scenario Outline. (Aslak Hellesøy)
|
233
|
+
* Added support for Examples selection when using --name. (#295 Joseph Wilk)
|
234
|
+
|
235
|
+
== 0.3.1 2009-04-26
|
236
|
+
|
237
|
+
This release has several minor bug fixes and new features. With the addition of Latvian and Hungarian Cucumber
|
238
|
+
now supports 32(!!) languages.
|
239
|
+
|
240
|
+
=== New features
|
241
|
+
* Support multiline names for Scenarios, Scenario Outlines, Backgrounds, Examples (#231 Joseph Wilk)
|
242
|
+
* Added #headers to Cucumber::Ast::Table (Ben Mabey)
|
243
|
+
* New translation for Latvian (Vitauts Stočka)
|
244
|
+
* New translation for Hungarian (#287 Bence Golda)
|
245
|
+
* Pick up failure on after hook (#272 Aslak Hellesøy)
|
246
|
+
|
247
|
+
=== Bugfixes
|
248
|
+
* Pretty formatter not colouring Examples tables correctly (#304 Aslak Hellesøy)
|
249
|
+
* Problem using --scenario and Scenario Outline (#298 Aslak Hellesøy)
|
250
|
+
* Tag Hook gets executed always there is a background (#301 Aslak Hellesøy)
|
251
|
+
* Feature which only has a Background with steps causes an exception (#306 Aslak Hellesøy)
|
252
|
+
* Gem no longer depends on Hoe (Aslak Hellesøy)
|
253
|
+
* Span html tags appear on HTML results with 0.3.0 (#299 Aslak Hellesøy)
|
254
|
+
* Fixed incorrect colours in pretty formatter's table headers for outline tables (Aslak Hellesøy)
|
255
|
+
* Exceptions from steps called within hooks are now reraised. (#294 Ben Mabey)
|
256
|
+
|
257
|
+
=== Removed/changed features
|
258
|
+
* --scenario handle has been removed and replaced with --name which supports partial matches, regexp special characters, running named backgrounds (#295 Joseph Wilk)
|
259
|
+
|
260
|
+
== 0.3.0 2009-04-14
|
261
|
+
|
262
|
+
This release has some minor changes to the APIs, but big enough that a new major release is in order.
|
263
|
+
The biggest change is the new semantics of the #World method. Previously you would call this method
|
264
|
+
several times, passing a Proc and extending the world object of the previous one with a Ruby module.
|
265
|
+
The problem was that there was no nice way to ensure the order in which these procs were called, which
|
266
|
+
led to some unexpected situations. In this release you can only register a single World proc. If you
|
267
|
+
want to extend a world with certain modules, you simply call the #World method with the module(s)
|
268
|
+
you wish to extend the World with. The Sinatra example illustrates how to do this. Also check out
|
269
|
+
the RDoc for Cucumber::StepMother#World.
|
270
|
+
|
271
|
+
The Visitor API (which is used for formatters) has also changed slightly. However, we have tried to
|
272
|
+
do this in a backwards compatible way, so if you have custom formatters for Cucumber 0.2 they should
|
273
|
+
still work.
|
274
|
+
|
275
|
+
One of the most significant new features is Tagged Hooks: http://wiki.github.com/aslakhellesoy/cucumber/hooks
|
276
|
+
This lets you associate Before and After blocks with specific scenarios.
|
277
|
+
|
278
|
+
We are also deprecating the step_list, step_pattern, feature_list, and feature_pattern accessors on
|
279
|
+
Cucumber::Rake::Task. These accessors will be completely removed in version 0.4. For complex settings
|
280
|
+
please rely on cucumber profiles in your rake tasks:
|
281
|
+
http://wiki.github.com/aslakhellesoy/cucumber/using-rake#profiles
|
282
|
+
|
283
|
+
=== New features
|
284
|
+
* Use Hooks with @tags (#229 Aslak Hellesøy)
|
285
|
+
* Rake task supports cucumber.yml profiles (#187 Ben Mabey)
|
286
|
+
* Field value steps for Webrat (Jack Chen)
|
287
|
+
* Added translation for Bulgarian (Krasimir Angelov)
|
288
|
+
* Updated translation for Polish (#273 Grzegorz Marszałek)
|
289
|
+
* Only a single World proc can be registered. World extension now happens by calling #World with ruby modules.
|
290
|
+
* Portuguese uses Funcionalidade in stead of Característica and accented words are aliased with unaccented ones (Alexandre da Silva and Felipe Coury).
|
291
|
+
* The usage formatter also prints unused step definitions (Aslak Hellesøy)
|
292
|
+
* Better exception if a World proc returns nil. (Aslak Hellesøy)
|
293
|
+
* Allow Step Definitions to use |*varargs|, but only on Ruby 1.9. (Aslak Hellesøy)
|
294
|
+
* Snippets for steps that use Step Tables or PyStrings include block param and object type hint comment (#247 Joseph Wilk)
|
295
|
+
* Support description string for Backgrounds (#271 Joseph Wilk)
|
296
|
+
|
297
|
+
=== Bugfixes
|
298
|
+
* After methods not being executed when Background fails (#288 Luismi Cavallé)
|
299
|
+
* Fixed dependency on internal files in rspec breaks cucumber w/ rspec-1.2.4 (#291 Aslak Hellesøy)
|
300
|
+
* Fix color use when using autotest on Linux. (Hans de Graaff)
|
301
|
+
* Fixed incorrect calculation of pystring indentation (#279 Eugene Naydanov)
|
302
|
+
* Fixed --format html leads to an error (#252 Aslak Hellesøy)
|
303
|
+
* Fixed Background runs twice (#255 Aslak Hellesøy)
|
304
|
+
* Fixed Background Transactions and :xx (#270 Aslak Hellesøy)
|
305
|
+
* Fixed Autospec failing with cucumber 0.2 (#254 Aslak Hellesøy)
|
306
|
+
* Sibling file detecting not working (#278 Aslak Hellesøy)
|
307
|
+
|
308
|
+
=== Removed/changed features
|
309
|
+
* The visitor API has changed slightly:
|
310
|
+
** #visit_step_name, #visit_multiline_arg and #visit_exception are no longer official API methods.
|
311
|
+
** #visit_step_result replaces those 3 methods.
|
312
|
+
** Table and PyString no longer hold status information. Each visitor subclass should store state in @state if needed.
|
313
|
+
** #visit_py_string no longer takes a status argument.
|
314
|
+
|
315
|
+
== 0.2.3 2009-03-30
|
316
|
+
|
317
|
+
This release sports 4 updated languages, slightly better help with snippets if you "quote" arguments
|
318
|
+
in your steps. Windows/JRuby users can enjoy colours and you get some more sugar with Tables.
|
319
|
+
|
320
|
+
=== New features
|
321
|
+
* Added new Then /^I should be on (.+)$/ do |page_name| step (Grant Hollingworth)
|
322
|
+
* Use skipped_param color for examples table header (#266 Eugene Naydanov)
|
323
|
+
* Added new Cucumber::Ast::Table#rows_hash method (Torbjørn Vatn)
|
324
|
+
* Windows/JRuby users can now enjoy colourful output (via http://github.com/aslakhellesoy/ansicolor) (#166 Aslak Hellesøy)
|
325
|
+
* Ambiguous step errors hint about --guess (unless --guess already on) (Aslak Hellesøy)
|
326
|
+
* Added translation for Slovak (Ahmed Al Hafoudh)
|
327
|
+
* Updated translation for Dutch (Bart Zonneveld)
|
328
|
+
* Updated translation for Italian (Alessandro Baroni)
|
329
|
+
* Updated translation for Japanese (KAKUTANI Shintaro)
|
330
|
+
|
331
|
+
=== Bugfixes
|
332
|
+
* Fixed step name after step keyword without space (#265 Aslak Hellesøy)
|
333
|
+
* Backtrace is back in HTML reports (Aslak Hellesøy)
|
334
|
+
|
335
|
+
== 0.2.2 2009-03-25
|
336
|
+
|
337
|
+
This release includes some minor changes to make Cucumber work with pure Java. Cucumber
|
338
|
+
has already worked with Java for a while (using JRuby and step definitions in Ruby),
|
339
|
+
but now you can write step definitions in pure Java!
|
340
|
+
|
341
|
+
Check out the Cucumber Java project for more details:
|
342
|
+
http://github.com/aslakhellesoy/cucumber_java/tree/master
|
343
|
+
|
344
|
+
== 0.2.1 2009-03-25
|
345
|
+
|
346
|
+
This release fixes a few minor bugs and adds a couple of new features.
|
347
|
+
|
348
|
+
== Bugfixes
|
349
|
+
* Fixed Cucumber, and rails controller error handling (#49 Matt Patterson)
|
350
|
+
* HTML Formatter doesn't work correctly with scenario Outlines. (#260 Aslak Hellesøy)
|
351
|
+
* After blocks are run in reverse order of registration. (#113 Aslak Hellesøy)
|
352
|
+
* Snippets are showing 'Ands' (#249 Aslak Hellesøy)
|
353
|
+
|
354
|
+
=== New features
|
355
|
+
* Snippets use a regexp and block arguments if the step name has "quoted" arguments. (Aslak Hellesøy)
|
356
|
+
* Cucumber::Ast::Feature#to_sexp includes the file name. (Aslak Hellesøy)
|
357
|
+
* support/env.rb is not loaded when --dry-run is specified. This is to increase performance. (Aslak Hellesøy)
|
358
|
+
* New usage formatter. This is the foundation for editor autocompletion and navigation between steps and step definitions. (#209 Aslak Hellesøy)
|
359
|
+
|
360
|
+
=== Removed features
|
361
|
+
* -S/--step-definitions option introduced in 0.2.0 is removed. Use --format usage [--dry-run] [--no-color].
|
362
|
+
|
363
|
+
== 0.2.0 2009-03-18
|
364
|
+
|
365
|
+
This release sports a bunch of new and exciting features, as well a major rewrite of Cucumber's internals.
|
366
|
+
The rewrite was done to address technical debt and to have a code base that is easier to evolve and maintain.
|
367
|
+
|
368
|
+
There are some changes to the Gherkin language that breaks backwards compatible with the 0.1.x series.
|
369
|
+
Most importantly, "GivenScenario" and "More Examples" no longer exist. See the "Removed features" section
|
370
|
+
below for more details on how to use alternatives.
|
371
|
+
|
372
|
+
Since the grammar has changed, there are some new keywords. We have to rely on the community
|
373
|
+
to provide updated translations. This is much easier than before - just update languages.yml.
|
374
|
+
There is no static code generation anymore. To list all languages:
|
375
|
+
|
376
|
+
cucumber --lang help
|
377
|
+
|
378
|
+
And to list the keywords for a particular language:
|
379
|
+
|
380
|
+
cucumber --lang en-lol help
|
381
|
+
|
382
|
+
There are some really awesome new features in this release: Tagging, Autoformatting, automatic
|
383
|
+
aliasing of keywords in all languages, full Ruby 1.9 support and improved output
|
384
|
+
for multiline arguments are some of the highlights.
|
385
|
+
|
386
|
+
== Bugfixes
|
387
|
+
* New StepInvocation breaks console formatter for pending steps. (#241 Jacob Radford)
|
388
|
+
* Within Scenario Outlines when replacing with a nil in a step name use empty string instead. (#237 Joseph Wilk)
|
389
|
+
* Fixed bug with Scenario Outlines incorrectly replacing values in step tables with nil. (#237 Joseph Wilk)
|
390
|
+
* Within Scenario Outlines when replacing with a nil in multiline strings use empty string instead. (#238 Joseph Wilk)
|
391
|
+
* Re-structure the ast: Feature -> Background -> (Scenario|ScenarioOutline)*. Fixes bug with background being called outside transactions. (#181 Joseph Wilk)
|
392
|
+
* --strict always exits with status 1 (#230 Tim Cuthbertson)
|
393
|
+
* Fix error with nil values in tables raising an exception (#227 Joseph Wilk)
|
394
|
+
* Add support for using << in formatters to ensure the html formatter works (#210 Joseph Wilk)
|
395
|
+
* Explicitly require env.rb files first to avoid potential load order problems. (#213, Ben Mabey, Randy Harmon)
|
396
|
+
* Depend on polyglot version (0.2.4) to avoid masking require errors. (Aslak Hellesøy).
|
397
|
+
* -n option does not suppress the line info for a Scenario Outline (#175 Aslak Hellesøy)
|
398
|
+
* Errors with rspec-rails matchers in cucumber 0.1.99 (#173 David Chelimsky)
|
399
|
+
* Can't use an empty string as a table value in a scenario outline (#172 Aslak Hellesøy)
|
400
|
+
* Really skip skipped steps (#90 Aslak Hellesøy)
|
401
|
+
* No output for multi-line strings (#71 Aslak Hellesøy)
|
402
|
+
* Fix cucumber/formatter/unicode flaws on Windows (#145 Michael)
|
403
|
+
* Autotest-related Bugs: YAML missing (#136 Tobias Pape)
|
404
|
+
* Overeager "rescue LoadError" hides lots of errors (#137 Jonathan del Strother)
|
405
|
+
* Nested steps don't show mismatch (#116 Aslak Hellesøy)
|
406
|
+
* Pending steps in > steps called from steps (#65 Aslak Hellesøy)
|
407
|
+
|
408
|
+
=== New features
|
409
|
+
* Australian translation (Josh Graham)
|
410
|
+
* Added World#announce(announcment) which lets you output text to the formatted output (#222 Rob Kaufmann)
|
411
|
+
* Added Table#transpose to to allow use of vertically aligned table keys (Torbjørn Vatn, Aslak Hellesøy)
|
412
|
+
* Added Table#map_headers to to allow use of more readable headers (Rob Holland)
|
413
|
+
* New -S/--step-definitions option. Useful (among other things) for tools that implement automcompletion. (#208 Aslak Hellesøy).
|
414
|
+
* The cucumber.rake file defines a dummy :features task if Cucumber is not installed (#225 Josh Nichols)
|
415
|
+
* Added Table#map_column! to ease casting of cell values into relevant types (#223 Rob Holland)
|
416
|
+
* New --no-diff option (#218 Bryan Ash)
|
417
|
+
* Rails generators supports testunit and rspec option, defaulting to rspec (#217 Josh Nichols)
|
418
|
+
* Sinatra Example (#204 Rob Holland)
|
419
|
+
* Keywords can be aliased in languages.yml. See English for an example (examples: Examples|Scenarios)
|
420
|
+
* Adding support for Background (#153 Joseph Wilk)
|
421
|
+
* Added Česky/Czech (Vojtech Salbaba)
|
422
|
+
* New --no-multiline option to reduce noise in output. Useful if lots of features are failing. (Aslak Hellesøy)
|
423
|
+
* Added ability to pass URIs to cucumber in addition to files and directories. Useful for troubleshooting! (Aslak Hellesøy)
|
424
|
+
* Groups of tabular scenarios (#57 Aslak Hellesøy)
|
425
|
+
* Tagging scenarios and features. Pick the ones to run with --tags (#54 Aslak Hellesøy)
|
426
|
+
* Make the current scenario available to the steps. (#44 Aslak Hellesøy)
|
427
|
+
* Step definition snippets contain a 'pending' call (#84 Aslak Hellesøy)
|
428
|
+
* Call multiline steps from other steps (#144 Aslak Hellesøy)
|
429
|
+
* Run cucumber with --autoformat DIR to reformat (pretty print) all of your feature files. (Aslak Hellesøy)
|
430
|
+
* New --strict option exits with an error code if there are undefined steps. (#52 Aslak Hellesøy)
|
431
|
+
* Given, When, Then methods (used in step definitions) are automatically aliased to current language. Use $KCODE='u' in env.rb if needed.
|
432
|
+
* Run cucumber --language help to see all supported languages. (Aslak Hellesøy)
|
433
|
+
* Run cucumber --language LANG help to see keywords for a given language. (Aslak Hellesøy)
|
434
|
+
* Multiline arguments (tables and """ strings) are printed in the output. (Aslak Hellesøy)
|
435
|
+
* It's no longer necessary to compile the Treetop grammar when adding a new language. Localised parser is generated at runtime. (Aslak Hellesøy)
|
436
|
+
* New --guess option tries to guess the best step definition match instead of raising Cucumber::Multiple. (Jake Howerton)
|
437
|
+
|
438
|
+
=== Removed features
|
439
|
+
* "GivenScenario" is gone. Instead you can call Steps from Step Definitions, or use the new Background feature (#153)
|
440
|
+
* "More Examples" is gone. "Scenario" + "More Examples" is no longer supported. Use "Scenario Outline" + "Examples" instead.
|
441
|
+
* Pure Ruby features are no longer supported.
|
442
|
+
* Remove --color option in autotest. Can be added manually in cucumber.yml (#215 Jean-Michel Garnier)
|
443
|
+
|
444
|
+
== (0.1.16.4 aslakhellesoy-cucumber gem on GitHub)
|
445
|
+
|
446
|
+
Bugfix release.
|
447
|
+
|
448
|
+
IMPORTANT NOTE FOR RAILS USERS.
|
449
|
+
The template used to generate your features/support/env.rb has changed. You have to apply a minor change
|
450
|
+
manually for existing Rails projects when you upgrade to this version. Change this:
|
451
|
+
|
452
|
+
require 'webrat/rspec-rails'
|
453
|
+
|
454
|
+
to this:
|
455
|
+
|
456
|
+
require 'webrat/core/matchers'
|
457
|
+
|
458
|
+
=== New features
|
459
|
+
* Finnish translation (Tero Tilus)
|
460
|
+
* Use Webrat's #contain matcher in generated "I should (not) see" step definitions (Bryan Helmkamp)
|
461
|
+
|
462
|
+
== Bugfixes
|
463
|
+
* Escaped quotes - \" - inside multiline strings will be unescaped.
|
464
|
+
* Flush output in HTML formatter since JRuby doesnt do it automatically (Diego Carrion)
|
465
|
+
* Better handling of ARGV (#169 David Chelimsky, Ben Mabey)
|
466
|
+
* Compatibility with ruby-debug (do ARGV.dup in bin/cucumber so it can restart ruby with same args) (Aslak Hellesøy)
|
467
|
+
|
468
|
+
== 0.1.16 2009-01-19
|
469
|
+
|
470
|
+
This is a small bugfix release. The most notable improvement is compatibility with Webrat 0.4. Rails/Webrat users should
|
471
|
+
upgrade both Cucumber and Webrat gems.
|
472
|
+
|
473
|
+
=== New features
|
474
|
+
* Allow argument placeholders in step tables and multiline comments (#121 Joseph Wilk)
|
475
|
+
* Scenario Outline can be followed by several named Examples sections (#123 Aslak Hellesøy)
|
476
|
+
* Add the #binary= method back to the Rake task. It is needed by merb_cucumber for running the features of a merb app with it's bundled gems. (Thomas Marek)
|
477
|
+
* Added a /^When I go to (.+)$/ step definition to webrat_steps.rb and a simple page name to path mapping method (Bryan Helmkamp)
|
478
|
+
|
479
|
+
=== Bugfixes
|
480
|
+
* Fix to run single scenarios when the line number specified doesn't correspond to a step (i.e. blank lines or rows) (#160 Luismi Cavallé)
|
481
|
+
|
482
|
+
=== Removed features
|
483
|
+
|
484
|
+
== 0.1.15 2009-01-08
|
485
|
+
|
486
|
+
Bugfix release
|
487
|
+
|
488
|
+
=== New features
|
489
|
+
* 한국어! (Korean!) (John Hwang)
|
490
|
+
|
491
|
+
=== Bugfixes
|
492
|
+
* --dry-run skips running before/after/steps (#147 Ian Dees)
|
493
|
+
* Fix a minor bug in the console formatter's summary (David Chelimsky)
|
494
|
+
* Better quoting of Scenario names in Autotest (Peter Jaros)
|
495
|
+
* Added some small workarounds for unicode handling on Windows (Aslak Hellesøy)
|
496
|
+
|
497
|
+
== 0.1.14 2009-01-04
|
498
|
+
|
499
|
+
This is the first release of Cucumber that runs on Ruby 1.9. There are still some encoding-related issues
|
500
|
+
with Arabic (ar), Japanese (ja) and Simplified Chinese (zh-CN). Patches are welcome. Other than that -
|
501
|
+
a couple of minor bug fixes and polishing.
|
502
|
+
|
503
|
+
=== New features
|
504
|
+
* Pretty formatter shows number of scenarios (#139 Joseph Wilk)
|
505
|
+
* Rudimentary support for Ruby 1.9. Now it's ok to file Ruby 1.9-related bugs.
|
506
|
+
|
507
|
+
=== Bugfixes
|
508
|
+
* Fixed "No such file or directory -- cucumber (LoadError)" bug with AutoTest (Aslak Hellesøy)
|
509
|
+
* Fixed `load_missing_constant': uninitialized constant Dispatcher error with Rails (Aslak Hellesøy)
|
510
|
+
|
511
|
+
=== Removed features
|
512
|
+
* The #binary= method is gone from the Rake task. It will always point to the binary in the current gem. (Aslak Hellesøy)
|
513
|
+
|
514
|
+
== 0.1.13 2008-12-20
|
515
|
+
|
516
|
+
It's time for some new features again. Output is now much better since you can use diffing, tweak
|
517
|
+
the output colours and get the full --backtrace if you want. Managing your support/* files became
|
518
|
+
a little easier since they are now always loaded before the step definitions. Life became easier
|
519
|
+
for Windows users in Norway (and other countries using unicode in the features). Plus several other
|
520
|
+
bug fixes.
|
521
|
+
|
522
|
+
Enjoy!
|
523
|
+
|
524
|
+
=== New features
|
525
|
+
* Console output is no longer bold, but regular. Step arguments are bold instead of blold+underlined. (Aslak Hellesøy)
|
526
|
+
* Console output can be configured with CUCUMBER_COLORS in your shell. (Aslak Hellesøy)
|
527
|
+
* Added new --backtrace option to show full backtrace (Aslak Hellesøy)
|
528
|
+
* Enable RSpec's diffing automatically if RSpec is loaded (Aslak Hellesøy)
|
529
|
+
* Files in support directories are loaded before any other file (i.e. step definitions.) (#120, Ben Mabey)
|
530
|
+
* The Rails features generator got some love and is now tested: http://github.com/aslakhellesoy/cucumber_rails (Aslak Hellesøy)
|
531
|
+
* --language is aliased to -l instead of -a (-l became available when --line was refactored) (Aslak Hellesøy)
|
532
|
+
* Scenario Outlines which through placeholders in the steps allow control of how scenario table values are used. (#57 Joseph Wilk)
|
533
|
+
* Scenario Outlines are now usable in pure ruby (Joseph Wilk)
|
534
|
+
* Add support for calling 'pending' from step definitions. (#112 Joseph Wilk)
|
535
|
+
|
536
|
+
=== Bugfixes
|
537
|
+
* Make rails before filters work correctly (#122, #129 Guillermo Álvarez Fernández)
|
538
|
+
* Proper Unicode support for Windows command shells: Just require cucumber/formatter/unicode in env.rb (Aslak Hellesøy)
|
539
|
+
* Fixed disappearing "a" on Windows (#81 Aslak Hellesøy)
|
540
|
+
* Fixed a bug where row step outlines were loosing step tables. (#121 Joseph Wilk, Ben Mabey)
|
541
|
+
* The Cucumber Autotest plugin now launches JRuby if autotest is run with JRuby (Aslak Hellesøy)
|
542
|
+
* Provide helpful and non-confusing error message when specified profile is blank. (#118, Ben Mabey)
|
543
|
+
* Improve handling and error messages for malformed cucumber.yml files. (#117, Ben Mabey)
|
544
|
+
* document :x run option in command line help (#114, Aslak Hellesøy)
|
545
|
+
* Change 'visits' to 'visit' in features generator to comply with new Webrat API (Darius Roberts)
|
546
|
+
|
547
|
+
=== Removed features
|
548
|
+
|
549
|
+
== 0.1.12 2008-12-04
|
550
|
+
|
551
|
+
This is the "getting serious with IronRuby release" - largely based on
|
552
|
+
"Patrick Gannon":http://www.patrickgannon.net/archive/2008/10/23/bdd-style-feature-tests-using-ironruby-and-rspeccucumber.aspx's
|
553
|
+
blog entry.
|
554
|
+
|
555
|
+
== New features
|
556
|
+
* Cucumber works with IronRuby/.NET - http://github.com/aslakhellesoy/cucumber/wikis/ironruby-and-net (Aslak Hellesøy)
|
557
|
+
|
558
|
+
== Bugfixes
|
559
|
+
* Fixed bug which was preventing coloring under Autotest (#111, Alan Larkin)
|
560
|
+
|
561
|
+
== Removed features
|
562
|
+
None
|
563
|
+
|
564
|
+
== 0.1.11 2008-12-02
|
565
|
+
|
566
|
+
Bugfix release with a couple of minor additional features to the command line options.
|
567
|
+
|
568
|
+
=== New features
|
569
|
+
* Capture output from cucumber in Autotest (Alan Larkin)
|
570
|
+
* Update cucumber generator to work with latest Webrat (Bryan Helkamp)
|
571
|
+
* CUCUMBR LIKEZ 2 SPEEK WIF KATS. KTHXBAI (Aimee Daniells)
|
572
|
+
* Support for dynamically pluggable formatters (#99 Joseph Wilk)
|
573
|
+
* --verbose mode to see ruby files and feature files loaded by Cucumber (#106 Joseph Wilk)
|
574
|
+
|
575
|
+
=== Bugfixes
|
576
|
+
* The jcode library is not loaded on JRuby/Rails. Workaround for http://tinyurl.com/55uu3u. (Aslak Hellesøy)
|
577
|
+
* Support including modules for class passed to --format (#109 Joseph Wilk)
|
578
|
+
|
579
|
+
=== Removed features
|
580
|
+
* The cucumber gem no longer depends on the rspec gem. It must be downloaded manually if RSpec is used. (Jeff Rafter)
|
581
|
+
|
582
|
+
== 0.1.10 2008-11-25
|
583
|
+
|
584
|
+
This release mostly has smaller bugfixes. The most significant new feature is how
|
585
|
+
line numbers are specified. You can now run multiple features at specific lines numbers like this:
|
586
|
+
|
587
|
+
cucumber foo.feature:15 bar.feature:6:45:111
|
588
|
+
|
589
|
+
This will run foo.feature at line 15 and bar.feature at line 6, 45 and 111.
|
590
|
+
|
591
|
+
=== New features
|
592
|
+
* Added example showing how to use Cucumber with Test::Unit + Matchy instead of RSpec (Aslak Hellesøy)
|
593
|
+
* Yield existing world object to World block (#87 Aslak Hellesøy)
|
594
|
+
* AUTOFEATURE=tRue works (case insensitive) (Aslak Hellesøy)
|
595
|
+
* Initial support for .NET via IronRuby. (Aslak Hellesøy)
|
596
|
+
* Lithuanian translation (sauliusgrigaitis)
|
597
|
+
* New webrat step defintions to wrap the new selects_time, selects_date, and selects_datetime methods. (Ben Mabey)
|
598
|
+
* Try to load webrat gem if it's not installed as a plugin (Aslak Hellesøy)
|
599
|
+
* Support example.feature:20 or example.feature:10:20:30 syntax for running features at specific line number(s). (#88 Joseph Wilk)
|
600
|
+
|
601
|
+
=== Bugfixes
|
602
|
+
* Windows - all the 'a' characters in the output have gone on strike (#81 Luis Lavena, Joseph Wilk, Aslak Hellesøy)
|
603
|
+
* Raise a nice error when encountering step definition without block (#95 Aslak Hellesøy)
|
604
|
+
* Features written using Ruby where breaking due to missing a line number (#91 Joseph Wilk)
|
605
|
+
* Directly creating a Table meant the scenario table header was never set which was causing a formatter error (#91 Joseph Wilk)
|
606
|
+
|
607
|
+
=== Removed features
|
608
|
+
* $KCODE='u' is no longer done automatically. Developers should do that explicitly when needed in step definitions or env.rb.
|
609
|
+
* Step definition without a block being treated as pending (#64 Joseph Wilk)
|
610
|
+
* The --line option has been removed. Use the new file.feature:line format instead.
|
611
|
+
|
612
|
+
== 0.1.9 2008-11-12
|
613
|
+
|
614
|
+
With this release Cucumber supports 19 (!) natural languages:
|
615
|
+
|
616
|
+
* Arabic
|
617
|
+
* Chinese Simplified
|
618
|
+
* Danish
|
619
|
+
* Dutch
|
620
|
+
* Estonian
|
621
|
+
* French
|
622
|
+
* German
|
623
|
+
* Italian
|
624
|
+
* Japanese
|
625
|
+
* Malay
|
626
|
+
* Norwegian
|
627
|
+
* Polish
|
628
|
+
* Portuguese
|
629
|
+
* Romanian
|
630
|
+
* Russian
|
631
|
+
* Spanish
|
632
|
+
* Swedish
|
633
|
+
* Texan
|
634
|
+
* Welsh
|
635
|
+
|
636
|
+
Thanks a lot to everyone who has contributed translations. If you don't see your language here, please
|
637
|
+
add it: http://github.com/aslakhellesoy/cucumber/wikis/spoken-languages
|
638
|
+
|
639
|
+
Main functional changes in this release is "Autotest":http://github.com/aslakhellesoy/cucumber/wikis/autotest-integration
|
640
|
+
support and how multiline strings work in feature files:
|
641
|
+
|
642
|
+
# In your .feature file
|
643
|
+
Then I should see
|
644
|
+
"""
|
645
|
+
A string
|
646
|
+
that "indents"
|
647
|
+
and spans
|
648
|
+
several lines
|
649
|
+
|
650
|
+
"""
|
651
|
+
|
652
|
+
# In your steps.rb file
|
653
|
+
Then 'I should see' do |text|
|
654
|
+
text.should == "A string\n that \"indents\"\nand spans\nseveral lines\n"
|
655
|
+
end
|
656
|
+
|
657
|
+
The triple quotes are used to define the start and end of a string, and it also defines what gets stripped away
|
658
|
+
in the inside string. If the triple quotes are indented 4 spaces, then the text within will have the 4 first
|
659
|
+
spaces removed too.
|
660
|
+
|
661
|
+
=== New features
|
662
|
+
* Added --[no-]color option to force color on or off (Peter Jaros)
|
663
|
+
* Step definition without a block will be treated as pending (#64 Joseph Wilk)
|
664
|
+
* Added support for Welsh (improvements welcome) (Joseph Wilk)
|
665
|
+
* Added --quiet option to hide all development aid output when using Pretty formatter (#69 Joseph Wilk)
|
666
|
+
* Added --no-snippets option to hide snippets for pending steps when using Pretty formatter (#69 Joseph Wilk)
|
667
|
+
* Added error messages concerning cucumber.yml. (#70 Ben Mabey)
|
668
|
+
* Added Autotest support - work in progress... (Peter Jaros)
|
669
|
+
* Added new --exclude option (Bryan Helkamp)
|
670
|
+
* Added new --scenario option (Peter Jaros)
|
671
|
+
* Renamed common_webrat.rb to webrat_steps.rb (Ben Mabey, Aslak Hellesøy)
|
672
|
+
* Added new feature[:feature_path] task (Roman Gonzalez)
|
673
|
+
* Added support for Polish (Joseph Wilk)
|
674
|
+
* Support specifying multiple formatters and multiple outputs (#47 Joseph Wilk)
|
675
|
+
* Added support for Japanese. (Kakutani Shintaro)
|
676
|
+
* Added support for Texan (improvements welcome). (Aslak Hellesøy)
|
677
|
+
|
678
|
+
=== Bugfixes
|
679
|
+
* Pending step snippets should escape special Regexp characters (#82 Joseph Wilk)
|
680
|
+
* Scenario without a body shouldn't show up as complete (#63 Josh Knowles)
|
681
|
+
* Fixed bug where utf-8 strings where breaking comment alighments. (#79 Joseph Wilk)
|
682
|
+
* Fixed next_column_index not resetting after large tables (#60, Barry Mitchelson)
|
683
|
+
* The HTML formatter was rendering everything twice. Cannot invoke visit_feature on formatters in executor (#72 Joseph Wilk)
|
684
|
+
* Row Scenarios need to support pending? in order for the Profile formatter to work (Joseph Wilk)
|
685
|
+
* Snippets are not shown for steps which already have a step definition (#65 Joseph Wilk)
|
686
|
+
* Prevent feature/scenario/pending step comments from containing '//' when running features by specifying a directory with a trailing '/' (Joseph Wilk)
|
687
|
+
* Scenario tables need spacing after them (#59 Joseph Wilk)
|
688
|
+
* Support running scenario table rows when using --line argument (#55 Joseph Wilk)
|
689
|
+
* Don't load cucumber.yml unless it exists (Aslak Hellesøy)
|
690
|
+
* Fixing bug where specifying line number 1 in a feature which starts with a scenario with a scenario table was raising an error (#56 Joseph Wilk)
|
691
|
+
|
692
|
+
=== Removed features
|
693
|
+
|
694
|
+
|
695
|
+
== 0.1.8 2008-10-18
|
696
|
+
|
697
|
+
This release extends the support for tables. PLEASE NOTE THAT TABLES ARE STILL EXPERIMENTAL.
|
698
|
+
In previous releases it has been possible to use tables to define "more examples" of a scenario i
|
699
|
+
n a FIT-style column fixture kind of way. Now you can also use tables as arguments to steps.
|
700
|
+
|
701
|
+
Tables used to define more examples after a scenario must now be prefixed. In English it looks like this:
|
702
|
+
|
703
|
+
Feature: Addition
|
704
|
+
In order to avoid silly mistakes
|
705
|
+
As a math idiot
|
706
|
+
I want to be told the sum of two numbers
|
707
|
+
|
708
|
+
Scenario: Add two numbers
|
709
|
+
Given I have entered 50 into the calculator
|
710
|
+
And I have entered 70 into the calculator
|
711
|
+
When I press add
|
712
|
+
Then the result should be 120 on the screen
|
713
|
+
|
714
|
+
More Examples:
|
715
|
+
| input_1 | input_2 | button | output |
|
716
|
+
| 20 | 30 | add | 50 |
|
717
|
+
| 2 | 5 | add | 7 |
|
718
|
+
| 0 | 40 | add | 40 |
|
719
|
+
|
720
|
+
Languages that are not updated yet will have to use "More Examples" until we get the translations.
|
721
|
+
|
722
|
+
Tables can also be used as arguments to individual steps. In fact, steps now support a single argument
|
723
|
+
that can span several lines. This can be a table or a string.
|
724
|
+
|
725
|
+
Example:
|
726
|
+
|
727
|
+
Given the following people exist:
|
728
|
+
| name | email | phone |
|
729
|
+
| Aslak | aslak@email.com | 123 |
|
730
|
+
| Joe | joe@email.com | 234 |
|
731
|
+
| Bryan | bryan@email.org | 456 |
|
732
|
+
When I search for email.com
|
733
|
+
Then I should see:
|
734
|
+
| name | email | phone |
|
735
|
+
| Aslak | aslak@email.com | 123 |
|
736
|
+
| Joe | joe@email.com | 234 |
|
737
|
+
And I should see:
|
738
|
+
"Some text
|
739
|
+
on several lines"
|
740
|
+
|
741
|
+
The step definitions for such multiline steps must define an extra block argument for the argument:
|
742
|
+
|
743
|
+
Given /the following people exist:/ do |people_table|
|
744
|
+
# people_table is of type Cucumber::Model::Table
|
745
|
+
# See RDoc for more info
|
746
|
+
end
|
747
|
+
|
748
|
+
Then /I should see:/ do |string|
|
749
|
+
# string is a plain old ruby String with leading spaces on each line removed
|
750
|
+
end
|
751
|
+
|
752
|
+
=== New features
|
753
|
+
* Added profile formatter. (#35, Joseph Wilk)
|
754
|
+
* Added support for Chinese Simplified. (Liming Lian)
|
755
|
+
* Added support for Dutch. (Sjoerd Tieleman)
|
756
|
+
* Multiline steps are now supported. (#4, Aslak Hellesøy)
|
757
|
+
* Tables used to define more examples for a scenario must be prefixed "More Examples" (see languages.yml for other languages)
|
758
|
+
* Show the file and line number for scenarios as a comment when displaying with the pretty formatter. (#40, Joseph Wilk)
|
759
|
+
* Show the file for the feature as a comment when displaying with the pretty formatter. (#40, Joseph Wilk)
|
760
|
+
* Show the feature file and line for pending steps as a comment when displaying with the pretty formatter. (#40, Joseph Wilk)
|
761
|
+
|
762
|
+
=== Bugfixes
|
763
|
+
* Fixed speling errors in Spanish (Daniel Cadenas)
|
764
|
+
* ActionMailer delivery_method should not be set to test (#41, Luke Melia)
|
765
|
+
* Reverse incorrectly ordered args in webrat select step (#43, David Chelimsky)
|
766
|
+
* Support comments above the first scenario (#31, Aslak Hellesøy)
|
767
|
+
* Fixed the HTML Formatter to use actual values for FIT table headers (#30, Joseph Wilk)
|
768
|
+
|
769
|
+
=== Removed features
|
770
|
+
* Removed the /^I go to (.*)$/ step from common_webrat.rb - it's not language agnostic and provides little value.
|
771
|
+
|
772
|
+
=== New features
|
773
|
+
* Added new --out option to make it easier to specify output from Rake and cucumber.yml
|
774
|
+
|
775
|
+
== 0.1.7 2008-10-05
|
776
|
+
|
777
|
+
This release fixes a few bugs and adds some new features. The most notable features are:
|
778
|
+
|
779
|
+
=== Calling steps from steps
|
780
|
+
|
781
|
+
Step definitions are a little bit closer to having regular method semantics.
|
782
|
+
You define them, but now you can also call them from other steps. Here is an
|
783
|
+
example:
|
784
|
+
|
785
|
+
Given /I am logged in as an (.*) named (.*)$/ do |role, name|
|
786
|
+
Given "I am registered as #{role}, #{name}, secret"
|
787
|
+
When "I log in with #{name}, secret"
|
788
|
+
end
|
789
|
+
|
790
|
+
Given /I am registered as (.*), (.*), (.*)/ do |role, name, password|
|
791
|
+
# (Code removed for brevity)
|
792
|
+
end
|
793
|
+
|
794
|
+
When /I log in with (.*), (.*)/ do |name, password|
|
795
|
+
# (Code removed for brevity)
|
796
|
+
end
|
797
|
+
|
798
|
+
This means that steps can be reused in other steps. The GivenScenario feature achieves a similar
|
799
|
+
effect (on the scenario level), but this feature is something we're not very happy with, mostly
|
800
|
+
because it's not parameterisable. Calling steps from steps is.
|
801
|
+
|
802
|
+
GivenScenario will still be working several releases, but the plan is to remove it completely in
|
803
|
+
the 0.3.0 release.
|
804
|
+
|
805
|
+
=== Seeing where a step is defined
|
806
|
+
|
807
|
+
Prior to this release it could be hard to find out where the ruby step definition matching
|
808
|
+
a plain text step is defined. Not anymore! Cucumber will now output this:
|
809
|
+
|
810
|
+
Scenario: Regular numbers
|
811
|
+
Given I have entered 3 into the calculator # features/steps/calculator_steps.rb:12
|
812
|
+
And I have entered 2 into the calculator # features/steps/calculator_steps.rb:12
|
813
|
+
When I press divide # features/steps/calculator_steps.rb:16
|
814
|
+
Then the result should be 1.5 on the screen # features/steps/calculator_steps.rb:20
|
815
|
+
And the result class should be Float # features/steps/calculator_steps.rb:24
|
816
|
+
|
817
|
+
=== Bugfixes
|
818
|
+
* Fixed a bug in the command line args being lost when using --profile (#27, Joseph Wilk)
|
819
|
+
* Fixed a bug in Webrat selects (Tim Glen)
|
820
|
+
* Fixed parsing of DOS line endings (#2, #28, Aslak Hellesøy)
|
821
|
+
|
822
|
+
=== New features
|
823
|
+
* Steps can be called from other steps (#3, Bryan Helmkamp, Aslak Hellesøy)
|
824
|
+
* Added But keyword to all languages (#21, Aslak Hellesøy)
|
825
|
+
* Added --no-source option to display step definition location next to step text (#26, Joseph Wilk, Aslak Hellesøy)
|
826
|
+
* Added more Webrat steps (#25, Tim Glen)
|
827
|
+
|
828
|
+
== 0.1.6 2008-10-01
|
829
|
+
|
830
|
+
First gem release!
|