features/rails3.feature in cucumber-rails-0.3.0 vs features/rails3.feature in cucumber-rails-0.3.1
- old
+ new
@@ -4,49 +4,90 @@
Cucumber-Rails should work on major versions
of Rails2 and Ruby, with Capybara, Spork and DatabaseCleaner
Scenario: Install Cucumber-Rails
Given I am using rvm "1.8.7"
- And I am using rvm gemset "cucumber-rails-3.0.0.beta"
+ And I am using rvm gemset "cucumber-rails-3.0.0.beta" with Gemfile:
+ """
+ gem 'rails', '3.0.0.beta'
+ gem 'sqlite3-ruby', '1.2.5'
+ gem 'capybara', '0.3.7'
+ """
When I successfully run "rails rails-3-app"
Then it should pass with:
"""
README
"""
And I cd to "rails-3-app"
And I symlink this repo to "vendor/plugins/cucumber-rails"
- When I successfully run "rails generate cucumber:skeleton"
+ When I successfully run "rails generate cucumber:skeleton --capybara"
Then the following files should exist:
| config/cucumber.yml |
| script/cucumber |
| features/step_definitions/web_steps.rb |
| features/support/env.rb |
| features/support/paths.rb |
| lib/tasks/cucumber.rake |
And the file "features/support/env.rb" should contain "require 'cucumber/rails/world'"
And the file "features/support/env.rb" should contain "require 'capybara/rails'"
- Scenario: Run Cucumber
- Given I am using rvm "1.8.7"
- And I am using rvm gemset "cucumber-rails-3.0.0.beta"
+ Scenario Outline: Run Cucumber
+ Given I am using rvm "<ruby_version>"
+ And I am using rvm gemset "cucumber-rails-3.0.0.beta" with Gemfile:
+ """
+ source :gemcutter
+
+ gem 'rails', '3.0.0.beta'
+ gem 'sqlite3-ruby', '1.2.5'
+ gem 'capybara', '0.3.7'
+ gem 'rspec-rails', '<rspec_version>'
+ """
And I successfully run "rails rails-3-app"
And I cd to "rails-3-app"
And I symlink this repo to "vendor/plugins/cucumber-rails"
- And I successfully run "rails generate cucumber:skeleton"
+ And I successfully run "rails generate cucumber:skeleton --capybara"
And I successfully run "rails generate cucumber:feature post title:string body:text published:boolean"
And I successfully run "rails generate scaffold post title:string body:text published:boolean"
+ And I successfully run "rails generate scaffold cukes name:string"
And I append to "Gemfile" with:
"""
- gem 'cucumber'
- gem 'database_cleaner'
- gem 'capybara', :git => 'git://github.com/jnicklas/capybara.git'
+ gem 'capybara', '0.3.7'
+ gem 'cucumber', '0.7.2'
"""
- And I run "bundle install"
+ And I write to "app/controllers/cukes_controller.rb" with:
+ """
+ class CukesController < ApplicationController
+ def index
+ redirect_to cuke_path(10, :overwrite_params => {:name => 'cucumber', :what => 'vegetable'})
+ end
+
+ def show
+ render :text => "Cuke #{params[:id]}"
+ end
+ end
+ """
+ And I write to "features/tests.feature" with:
+ """
+ Feature: Tests
+ Scenario: Tests
+ When I go to the cukes page
+ Then I should have the following query string:
+ |name|cucumber|
+ |what|vegetable|
+ |controller|cukes|
+ |action|index|
+ And I should see "Cuke 10"
+ """
+ And I successfully run "bundle install"
And I successfully run "rake db:migrate"
- And I run "rake cucumber"
+ And I successfully run "rake cucumber"
Then it should pass with:
"""
- 2 scenarios (2 passed)
- 11 steps (11 passed)
+ 3 scenarios (3 passed)
+ 14 steps (14 passed)
"""
-
+
+ Examples:
+ | ruby_version | rspec_version |
+ | 1.8.7 | 1.3.2 |
+ | 1.9.1 | 2.0.0.beta.8 |