gem "rspec", "2.0.1"
gem "rspec-rails", "2.0.1"
gem "capybara", ">= 0.4.1.1"
gem "database_cleaner", ">= 0.6.6"
require 'action_dispatch'
require 'capybara/rails'
require 'capybara/rspec'
require 'capybara/dsl'
module AcceptanceExampleGroup
extend ActiveSupport::Concern
include RSpec::Rails::RequestExampleGroup
include Rack::Test::Methods
included do
metadata[:type] = :acceptance
end
end
RSpec.configure do |config|
config.include AcceptanceExampleGroup,
:example_group => { :file_path => /\bspec\/acceptance\// }
config.use_transactional_fixtures = false
config.before(:suite) do
DatabaseCleaner.strategy = :deletion
DatabaseCleaner.clean_with :truncation
end
config.before(:each) do
if example.metadata[:js]
Capybara.current_driver = :selenium
DatabaseCleaner.strategy = :truncation
else
DatabaseCleaner.strategy = :transaction
DatabaseCleaner.start
end
end
config.after(:each) do
Capybara.use_default_driver if example.metadata[:js]
DatabaseCleaner.clean
end
end
config.use_transactional_fixtures = true
require 'spec_helper'
describe "some feature", :js => true do
it "..." do
visit "/"
end
end
Read more: http://feeds.dzone.com/~r/dzone/snippets/~3/yT_8_7RbP8s/13057