cucumber-rails 0.3.2 → 0.4.0.beta.1
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.
- data/.gitignore +2 -0
- data/.rspec +1 -0
- data/.rvmrc +1 -0
- data/Gemfile +2 -0
- data/History.txt +7 -0
- data/README.rdoc +2 -2
- data/Rakefile +3 -19
- data/cucumber-rails.gemspec +25 -106
- data/dev_tasks/rspec.rake +6 -11
- data/features/rails2.feature +5 -24
- data/features/rails3.feature +82 -56
- data/features/step_definitions/cucumber_rails_steps.rb +3 -25
- data/features/support/env.rb +3 -1
- data/generators/cucumber/cucumber_generator.rb +1 -17
- data/lib/cucumber/rails.rb +29 -0
- data/lib/cucumber/rails/capybara/javascript_emulation.rb +83 -0
- data/lib/cucumber/rails/capybara/select_dates_and_times.rb +43 -0
- data/lib/cucumber/rails/hooks/allow_rescue.rb +8 -0
- data/lib/cucumber/rails/hooks/database_cleaner.rb +25 -0
- data/lib/cucumber/rails/hooks/mail.rb +5 -0
- data/lib/cucumber/rails/rspec.rb +0 -3
- data/lib/cucumber/rails/version.rb +15 -0
- data/lib/cucumber/rails/world.rb +2 -36
- data/lib/cucumber/rails2.rb +16 -0
- data/lib/cucumber/rails2/action_controller.rb +29 -0
- data/lib/cucumber/rails3.rb +16 -0
- data/lib/cucumber/rails3/action_controller.rb +12 -0
- data/lib/cucumber/rails3/application.rb +17 -0
- data/lib/generators/cucumber/feature/feature_generator.rb +1 -1
- data/lib/generators/cucumber/install/install_base.rb +40 -53
- data/lib/generators/cucumber/install/install_generator.rb +10 -22
- data/spec/cucumber/web/tableish_spec.rb +47 -0
- data/spec/generators/cucumber/install/install_base_spec.rb +0 -9
- data/spec/spec_helper.rb +1 -4
- data/templates/install/step_definitions/capybara_steps.rb.erb +1 -1
- data/templates/install/step_definitions/web_steps_da.rb.erb +1 -1
- data/templates/install/step_definitions/web_steps_no.rb.erb +1 -1
- data/templates/install/step_definitions/web_steps_pt-BR.rb.erb +2 -1
- data/templates/install/support/_rails_each_run.rb.erb +16 -15
- data/templates/install/support/_rails_prefork.rb.erb +1 -12
- data/templates/install/support/capybara.rb +0 -4
- metadata +137 -30
- data/lib/cucumber/rails/action_controller.rb +0 -65
- data/lib/cucumber/rails/active_record.rb +0 -34
- data/lib/cucumber/rails/capybara_javascript_emulation.rb +0 -72
- data/lib/cucumber/rails/test_unit.rb +0 -7
- data/spec/spec.opts +0 -2
data/.gitignore
CHANGED
data/.rspec
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
--format progress --colour
|
data/.rvmrc
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
rvm @cucumber
|
data/Gemfile
ADDED
data/History.txt
CHANGED
data/README.rdoc
CHANGED
@@ -15,8 +15,8 @@ Before you can use the generator, add the necessary gems to your project's Gemfi
|
|
15
15
|
gem 'capybara'
|
16
16
|
gem 'database_cleaner'
|
17
17
|
gem 'cucumber-rails'
|
18
|
-
gem 'cucumber'
|
19
|
-
gem 'rspec-rails'
|
18
|
+
gem 'cucumber'
|
19
|
+
gem 'rspec-rails'
|
20
20
|
gem 'spork'
|
21
21
|
gem 'launchy' # So you can do Then show me the page
|
22
22
|
|
data/Rakefile
CHANGED
@@ -1,23 +1,7 @@
|
|
1
1
|
# encoding: utf-8
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
Jeweler::Tasks.new do |gemspec|
|
6
|
-
gemspec.name = "cucumber-rails"
|
7
|
-
gemspec.summary = "Cucumber Generators and Runtime for Rails"
|
8
|
-
gemspec.description = "Cucumber Generators and Runtime for Rails"
|
9
|
-
gemspec.email = "cukes@googlegroups.com"
|
10
|
-
gemspec.homepage = "http://cukes.info"
|
11
|
-
gemspec.authors = ["Dennis Blöte", "Aslak Hellesøy", "Rob Holland"]
|
12
|
-
gemspec.homepage = "http://github.com/aslakhellesoy/cucumber-rails"
|
13
|
-
|
14
|
-
gemspec.add_dependency 'cucumber', '>= 0.8.0'
|
15
|
-
gemspec.add_development_dependency 'aruba', '>= 0.1.9'
|
16
|
-
end
|
17
|
-
Jeweler::GemcutterTasks.new
|
18
|
-
rescue LoadError
|
19
|
-
puts "Jeweler not available. Install it with: sudo gem install jeweler"
|
20
|
-
end
|
2
|
+
require 'rubygems'
|
3
|
+
require 'bundler/setup'
|
4
|
+
Bundler::GemHelper.install_tasks
|
21
5
|
|
22
6
|
$:.unshift(File.dirname(__FILE__) + '/lib')
|
23
7
|
Dir["#{File.dirname(__FILE__)}/dev_tasks/*.rake"].sort.each { |ext| load ext }
|
data/cucumber-rails.gemspec
CHANGED
@@ -1,111 +1,30 @@
|
|
1
|
-
# Generated by jeweler
|
2
|
-
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
-
# Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
|
4
1
|
# -*- encoding: utf-8 -*-
|
2
|
+
$LOAD_PATH.unshift File.expand_path("../lib", __FILE__)
|
3
|
+
require 'cucumber/rails/version'
|
5
4
|
|
6
5
|
Gem::Specification.new do |s|
|
7
|
-
s.name
|
8
|
-
s.version
|
6
|
+
s.name = 'cucumber-rails'
|
7
|
+
s.version = Cucumber::Rails::VERSION
|
8
|
+
s.authors = ["Aslak Hellesøy", "Dennis Blöte", "Rob Holland"]
|
9
|
+
s.description = "Cucumber Generators and Runtime for Rails"
|
10
|
+
s.summary = "cucumber-rails-#{s.version}"
|
11
|
+
s.email = 'cukes@googlegroups.com'
|
12
|
+
s.homepage = "http://cukes.info"
|
9
13
|
|
10
|
-
s.
|
11
|
-
s.
|
12
|
-
s.
|
13
|
-
s.
|
14
|
-
s.
|
15
|
-
s.
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
s.
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
"
|
25
|
-
"
|
26
|
-
"VERSION",
|
27
|
-
"config/.gitignore",
|
28
|
-
"cucumber-rails.gemspec",
|
29
|
-
"dev_tasks/cucumber.rake",
|
30
|
-
"dev_tasks/rspec.rake",
|
31
|
-
"features/rails2.feature",
|
32
|
-
"features/rails3.feature",
|
33
|
-
"features/rerun_profile.feature",
|
34
|
-
"features/step_definitions/cucumber_rails_steps.rb",
|
35
|
-
"features/support/env.rb",
|
36
|
-
"features/support/matchers/files.rb",
|
37
|
-
"generators/cucumber/USAGE",
|
38
|
-
"generators/cucumber/cucumber_generator.rb",
|
39
|
-
"generators/feature/USAGE",
|
40
|
-
"generators/feature/feature_generator.rb",
|
41
|
-
"lib/cucumber/rails/action_controller.rb",
|
42
|
-
"lib/cucumber/rails/active_record.rb",
|
43
|
-
"lib/cucumber/rails/capybara_javascript_emulation.rb",
|
44
|
-
"lib/cucumber/rails/rspec.rb",
|
45
|
-
"lib/cucumber/rails/test_unit.rb",
|
46
|
-
"lib/cucumber/rails/world.rb",
|
47
|
-
"lib/cucumber/web/tableish.rb",
|
48
|
-
"lib/generators/cucumber/feature/USAGE",
|
49
|
-
"lib/generators/cucumber/feature/feature_base.rb",
|
50
|
-
"lib/generators/cucumber/feature/feature_generator.rb",
|
51
|
-
"lib/generators/cucumber/feature/named_arg.rb",
|
52
|
-
"lib/generators/cucumber/install/USAGE",
|
53
|
-
"lib/generators/cucumber/install/install_base.rb",
|
54
|
-
"lib/generators/cucumber/install/install_generator.rb",
|
55
|
-
"spec/cucumber/web/tableish_spec.rb",
|
56
|
-
"spec/generators/cucumber/install/install_base_spec.rb",
|
57
|
-
"spec/spec.opts",
|
58
|
-
"spec/spec_helper.rb",
|
59
|
-
"templates/feature/feature.erb",
|
60
|
-
"templates/feature/steps.erb",
|
61
|
-
"templates/install/config/cucumber.yml.erb",
|
62
|
-
"templates/install/environments/cucumber.rb.erb",
|
63
|
-
"templates/install/script/cucumber",
|
64
|
-
"templates/install/step_definitions/capybara_steps.rb.erb",
|
65
|
-
"templates/install/step_definitions/web_steps_cs.rb.erb",
|
66
|
-
"templates/install/step_definitions/web_steps_da.rb.erb",
|
67
|
-
"templates/install/step_definitions/web_steps_de.rb.erb",
|
68
|
-
"templates/install/step_definitions/web_steps_es.rb.erb",
|
69
|
-
"templates/install/step_definitions/web_steps_ja.rb.erb",
|
70
|
-
"templates/install/step_definitions/web_steps_ko.rb.erb",
|
71
|
-
"templates/install/step_definitions/web_steps_no.rb.erb",
|
72
|
-
"templates/install/step_definitions/web_steps_pt-BR.rb.erb",
|
73
|
-
"templates/install/step_definitions/webrat_steps.rb.erb",
|
74
|
-
"templates/install/support/_rails_each_run.rb.erb",
|
75
|
-
"templates/install/support/_rails_prefork.rb.erb",
|
76
|
-
"templates/install/support/capybara.rb",
|
77
|
-
"templates/install/support/edit_warning.txt",
|
78
|
-
"templates/install/support/paths.rb",
|
79
|
-
"templates/install/support/rails.rb.erb",
|
80
|
-
"templates/install/support/rails_spork.rb.erb",
|
81
|
-
"templates/install/support/webrat.rb",
|
82
|
-
"templates/install/tasks/cucumber.rake.erb"
|
83
|
-
]
|
84
|
-
s.homepage = %q{http://github.com/aslakhellesoy/cucumber-rails}
|
85
|
-
s.rdoc_options = ["--charset=UTF-8"]
|
86
|
-
s.require_paths = ["lib"]
|
87
|
-
s.rubygems_version = %q{1.3.7}
|
88
|
-
s.summary = %q{Cucumber Generators and Runtime for Rails}
|
89
|
-
s.test_files = [
|
90
|
-
"spec/cucumber/web/tableish_spec.rb",
|
91
|
-
"spec/generators/cucumber/install/install_base_spec.rb",
|
92
|
-
"spec/spec_helper.rb"
|
93
|
-
]
|
94
|
-
|
95
|
-
if s.respond_to? :specification_version then
|
96
|
-
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
97
|
-
s.specification_version = 3
|
98
|
-
|
99
|
-
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
100
|
-
s.add_runtime_dependency(%q<cucumber>, [">= 0.8.0"])
|
101
|
-
s.add_development_dependency(%q<aruba>, [">= 0.1.9"])
|
102
|
-
else
|
103
|
-
s.add_dependency(%q<cucumber>, [">= 0.8.0"])
|
104
|
-
s.add_dependency(%q<aruba>, [">= 0.1.9"])
|
105
|
-
end
|
106
|
-
else
|
107
|
-
s.add_dependency(%q<cucumber>, [">= 0.8.0"])
|
108
|
-
s.add_dependency(%q<aruba>, [">= 0.1.9"])
|
109
|
-
end
|
14
|
+
s.add_dependency('cucumber', '~> 0.10.0')
|
15
|
+
s.add_development_dependency('aruba', '~> 0.2.7')
|
16
|
+
s.add_development_dependency('rails', '~> 3.0.3')
|
17
|
+
s.add_development_dependency('sqlite3-ruby', '~> 1.3.2')
|
18
|
+
s.add_development_dependency('rspec-rails', Cucumber::Rails::DEPS['rspec-rails'])
|
19
|
+
s.add_development_dependency('capybara', Cucumber::Rails::DEPS['capybara'])
|
20
|
+
s.add_development_dependency('webrat', Cucumber::Rails::DEPS['webrat'])
|
21
|
+
s.add_development_dependency('database_cleaner', Cucumber::Rails::DEPS['database_cleaner'])
|
22
|
+
|
23
|
+
s.rubygems_version = "1.3.7"
|
24
|
+
s.files = `git ls-files`.split("\n")
|
25
|
+
s.test_files = `git ls-files -- {spec,features}/*`.split("\n")
|
26
|
+
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
27
|
+
s.extra_rdoc_files = ["LICENSE", "README.rdoc", "History.txt"]
|
28
|
+
s.rdoc_options = ["--charset=UTF-8"]
|
29
|
+
s.require_path = "lib"
|
110
30
|
end
|
111
|
-
|
data/dev_tasks/rspec.rake
CHANGED
@@ -1,13 +1,8 @@
|
|
1
|
-
|
2
|
-
require 'spec/rake/spectask'
|
1
|
+
require 'rspec/core/rake_task'
|
3
2
|
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
t.rcov_opts = %w{--exclude osx\/objc,gems\/,spec\/}
|
10
|
-
end
|
11
|
-
rescue LoadError
|
12
|
-
task :spec
|
3
|
+
desc "Run RSpec"
|
4
|
+
RSpec::Core::RakeTask.new do |t|
|
5
|
+
t.rcov = ENV['RCOV']
|
6
|
+
t.rcov_opts = %w{--exclude osx\/objc,gems\/,spec\/}
|
7
|
+
t.verbose = true
|
13
8
|
end
|
data/features/rails2.feature
CHANGED
@@ -1,27 +1,13 @@
|
|
1
|
+
@announce
|
1
2
|
Feature: Rails 2
|
2
3
|
In order to take over the world
|
3
4
|
Cucumber-Rails should work on major versions
|
4
5
|
of Rails2 and Ruby, with Capybara, Webrat, Spork and DatabaseCleaner
|
5
6
|
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
"""
|
11
|
-
source :gemcutter
|
12
|
-
gem 'rails', '<rails_version>'
|
13
|
-
gem 'sqlite3-ruby', '1.2.5'
|
14
|
-
gem 'capybara', '0.3.8'
|
15
|
-
gem 'webrat', '0.7.1'
|
16
|
-
gem 'rspec-rails', '1.3.2'
|
17
|
-
#gem 'cucumber', '0.8.0'
|
18
|
-
gem 'cucumber', :path => '../../../cucumber'
|
19
|
-
gem 'database_cleaner', '0.5.2'
|
20
|
-
gem 'culerity', '0.2.10'
|
21
|
-
gem 'celerity', '0.7.9'
|
22
|
-
"""
|
23
|
-
And I successfully run "rails rails-2-app"
|
24
|
-
And I cd to "rails-2-app"
|
7
|
+
Scenario: Run Cucumber
|
8
|
+
Given a Rails "2.3.5" project named "rails-2-app" with Cucumber-Rails generated with "--capybara --rspec"
|
9
|
+
|
10
|
+
Given break
|
25
11
|
And I symlink "../../../../cucumber" to "vendor/plugins/cucumber"
|
26
12
|
And I symlink "../../.." to "vendor/plugins/cucumber-rails"
|
27
13
|
And I successfully run "ruby script/generate cucumber --capybara"
|
@@ -57,8 +43,3 @@ Feature: Rails 2
|
|
57
43
|
3 scenarios (3 passed)
|
58
44
|
14 steps (14 passed)
|
59
45
|
"""
|
60
|
-
|
61
|
-
Examples:
|
62
|
-
| generator_args | feature_args | ruby_version | rails_version |
|
63
|
-
| --webrat --testunit | | 1.8.6 | 2.3.5 |
|
64
|
-
| --capybara --rspec | --capybara culerity | 1.8.7 | 2.3.8 |
|
data/features/rails3.feature
CHANGED
@@ -1,27 +1,11 @@
|
|
1
|
-
@announce
|
2
|
-
@announce @puts
|
1
|
+
@announce
|
3
2
|
Feature: Rails 3
|
4
3
|
In order to take over the world
|
5
4
|
Cucumber-Rails should work on major versions
|
6
|
-
of
|
5
|
+
of Rails 3 and Ruby, with Capybara, Spork and DatabaseCleaner
|
7
6
|
|
8
7
|
Scenario: Install Cucumber-Rails
|
9
|
-
Given I
|
10
|
-
And I am using rvm gemset "cucumber-rails-3.0.0.beta" with Gemfile:
|
11
|
-
"""
|
12
|
-
source :gemcutter
|
13
|
-
gem 'rails', '3.0.0.beta'
|
14
|
-
gem 'sqlite3-ruby', '1.2.5'
|
15
|
-
gem 'capybara', '0.3.8'
|
16
|
-
"""
|
17
|
-
When I successfully run "rails rails-3-app"
|
18
|
-
Then it should pass with:
|
19
|
-
"""
|
20
|
-
README
|
21
|
-
"""
|
22
|
-
And I cd to "rails-3-app"
|
23
|
-
And I symlink "../../.." to "vendor/plugins/cucumber-rails"
|
24
|
-
When I successfully run "rails generate cucumber:install --capybara"
|
8
|
+
Given I have created a new Rails 3 app "rails-3-app" with cucumber-rails support
|
25
9
|
Then the following files should exist:
|
26
10
|
| config/cucumber.yml |
|
27
11
|
| script/cucumber |
|
@@ -29,40 +13,18 @@ Feature: Rails 3
|
|
29
13
|
| features/support/env.rb |
|
30
14
|
| features/support/paths.rb |
|
31
15
|
| lib/tasks/cucumber.rake |
|
32
|
-
And the file "features/support/env.rb" should contain "require 'cucumber/rails
|
33
|
-
And the file "features/support/env.rb" should contain "require 'capybara/rails'"
|
34
|
-
|
35
|
-
Scenario Outline: Run Cucumber
|
36
|
-
Given I am using rvm "<ruby_version>"
|
37
|
-
And I am using rvm gemset "cucumber-rails-3.0.0.beta-gemset-<gemset>" with Gemfile:
|
38
|
-
"""
|
39
|
-
source :gemcutter
|
40
|
-
gem 'rails', '3.0.0.beta'
|
41
|
-
gem 'sqlite3-ruby', '1.2.5'
|
42
|
-
gem 'capybara', '0.3.8'
|
43
|
-
gem 'gherkin', '1.0.30'
|
44
|
-
gem 'term-ansicolor', '1.0.4'
|
45
|
-
gem 'diff-lcs', '1.1.2'
|
46
|
-
gem 'rspec-rails', '<rspec_version>'
|
47
|
-
"""
|
48
|
-
And I successfully run "rails rails-3-app"
|
49
|
-
And I cd to "rails-3-app"
|
50
|
-
And I symlink "../../.." to "vendor/plugins/cucumber-rails"
|
51
|
-
And I append to "Gemfile" with:
|
52
|
-
"""
|
53
|
-
gem 'capybara', '0.3.8'
|
54
|
-
gem 'cucumber', :path => '../../../../cucumber'
|
16
|
+
And the file "features/support/env.rb" should contain "require 'cucumber/rails'"
|
55
17
|
|
56
|
-
|
57
|
-
|
18
|
+
Scenario: Inspect query string
|
19
|
+
Given I have created a new Rails 3 app "rails-3-app" with cucumber-rails support
|
58
20
|
And I successfully run "rails generate cucumber:feature post title:string body:text published:boolean"
|
59
21
|
And I successfully run "rails generate scaffold post title:string body:text published:boolean"
|
60
22
|
And I successfully run "rails generate scaffold cukes name:string"
|
61
|
-
And I
|
23
|
+
And I overwrite "app/controllers/cukes_controller.rb" with:
|
62
24
|
"""
|
63
25
|
class CukesController < ApplicationController
|
64
26
|
def index
|
65
|
-
redirect_to cuke_path(10,
|
27
|
+
redirect_to cuke_path(10, {:name => 'cucumber', :what => 'vegetable'})
|
66
28
|
end
|
67
29
|
|
68
30
|
def show
|
@@ -76,13 +38,10 @@ Feature: Rails 3
|
|
76
38
|
Scenario: Tests
|
77
39
|
When I go to the cukes page
|
78
40
|
Then I should have the following query string:
|
79
|
-
|name|cucumber|
|
80
|
-
|what|vegetable|
|
81
|
-
|controller|cukes|
|
82
|
-
|action|index|
|
41
|
+
| name | cucumber |
|
42
|
+
| what | vegetable |
|
83
43
|
And I should see "Cuke 10"
|
84
44
|
"""
|
85
|
-
And I successfully run "bundle lock"
|
86
45
|
And I successfully run "rake db:migrate"
|
87
46
|
And I successfully run "rake cucumber"
|
88
47
|
Then it should pass with:
|
@@ -90,8 +49,75 @@ Feature: Rails 3
|
|
90
49
|
3 scenarios (3 passed)
|
91
50
|
14 steps (14 passed)
|
92
51
|
"""
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
52
|
+
|
53
|
+
Scenario: Allow rescue
|
54
|
+
Given I have created a new Rails 3 app "rails-3-app" with cucumber-rails support
|
55
|
+
And I write to "app/controllers/posts_controller.rb" with:
|
56
|
+
"""
|
57
|
+
class PostsController < ApplicationController
|
58
|
+
def index
|
59
|
+
raise "There is an error in index"
|
60
|
+
end
|
61
|
+
end
|
62
|
+
"""
|
63
|
+
And I write to "config/routes.rb" with:
|
64
|
+
"""
|
65
|
+
Rails3App::Application.routes.draw do
|
66
|
+
resources :posts
|
67
|
+
end
|
68
|
+
"""
|
69
|
+
And I write to "features/posts.feature" with:
|
70
|
+
"""
|
71
|
+
Feature: posts
|
72
|
+
@allow-rescue
|
73
|
+
Scenario: See them
|
74
|
+
When I do it
|
75
|
+
"""
|
76
|
+
And I write to "features/step_definitions/posts_steps.rb" with:
|
77
|
+
"""
|
78
|
+
When /^I do it$/ do
|
79
|
+
visit '/posts'
|
80
|
+
puts page.body
|
81
|
+
end
|
82
|
+
"""
|
83
|
+
And I run "rake cucumber"
|
84
|
+
Then it should pass with:
|
85
|
+
"""
|
86
|
+
1 scenario (1 passed)
|
87
|
+
1 step (1 passed)
|
88
|
+
"""
|
89
|
+
|
90
|
+
Scenario: Don't allow rescue
|
91
|
+
Given I have created a new Rails 3 app "rails-3-app" with cucumber-rails support
|
92
|
+
And I write to "app/controllers/posts_controller.rb" with:
|
93
|
+
"""
|
94
|
+
class PostsController < ApplicationController
|
95
|
+
def index
|
96
|
+
raise "There is an error in index"
|
97
|
+
end
|
98
|
+
end
|
99
|
+
"""
|
100
|
+
And I write to "config/routes.rb" with:
|
101
|
+
"""
|
102
|
+
Rails3App::Application.routes.draw do
|
103
|
+
resources :posts
|
104
|
+
end
|
105
|
+
"""
|
106
|
+
And I write to "features/posts.feature" with:
|
107
|
+
"""
|
108
|
+
Feature: posts
|
109
|
+
Scenario: See them
|
110
|
+
When I do it
|
111
|
+
"""
|
112
|
+
And I write to "features/step_definitions/posts_steps.rb" with:
|
113
|
+
"""
|
114
|
+
When /^I do it$/ do
|
115
|
+
visit '/posts'
|
116
|
+
end
|
117
|
+
"""
|
118
|
+
And I run "rake cucumber"
|
119
|
+
Then it should fail with:
|
120
|
+
"""
|
121
|
+
1 scenario (1 failed)
|
122
|
+
1 step (1 failed)
|
123
|
+
"""
|
@@ -1,35 +1,13 @@
|
|
1
|
-
Given /^I symlink "([^"]*)" to "([^"]*)"$/ do |source, target|
|
2
|
-
source = File.expand_path(source, __FILE__)
|
3
|
-
in_current_dir do
|
4
|
-
target = File.expand_path(target)
|
5
|
-
FileUtils.ln_s(source, target)
|
6
|
-
end
|
7
|
-
end
|
8
|
-
|
9
1
|
Given /^I have created a new Rails 3 app "([^"]*)" with cucumber\-rails support$/ do |app_name|
|
10
2
|
steps %Q{
|
11
|
-
|
12
|
-
And I am using rvm gemset "cucumber-rails-3.0.0.beta-gemset-1" with Gemfile:
|
13
|
-
"""
|
14
|
-
gem 'rails', '3.0.0.beta'
|
15
|
-
gem 'sqlite3-ruby', '1.2.5'
|
16
|
-
gem 'capybara', '0.3.8'
|
17
|
-
"""
|
18
|
-
When I successfully run "rails rails-3-app"
|
3
|
+
When I successfully run "rails new rails-3-app"
|
19
4
|
Then it should pass with:
|
20
5
|
"""
|
21
6
|
README
|
22
7
|
"""
|
23
8
|
And I cd to "#{app_name}"
|
24
|
-
And I
|
25
|
-
And I
|
26
|
-
"""
|
27
|
-
gem 'capybara', '0.3.8'
|
28
|
-
gem 'cucumber', :path => '../../../../cucumber'
|
29
|
-
|
30
|
-
"""
|
31
|
-
And I successfully run "rails generate cucumber:install --capybara"
|
32
|
-
And I successfully run "bundle lock"
|
9
|
+
And I successfully run "rails generate cucumber:install"
|
10
|
+
And I successfully run "bundle install"
|
33
11
|
And I successfully run "rake db:migrate"
|
34
12
|
}
|
35
13
|
end
|