Skip to content

Instantly share code, notes, and snippets.

@philm
Last active December 11, 2015 05:38
Show Gist options
  • Save philm/4553019 to your computer and use it in GitHub Desktop.
Save philm/4553019 to your computer and use it in GitHub Desktop.
require 'rubygems'
ENV["RAILS_ENV"] ||= 'test'
require File.expand_path("../../config/environment", __FILE__)
require 'rspec/rails'
require 'capybara/rspec'
require 'capybara/rails'
require 'database_cleaner'
require 'email_spec'
# uncomment if you're using Sidekiq
# require 'sidekiq/testing'
# Requires supporting ruby files with custom matchers and macros, etc,
# in spec/support/ and its subdirectories.
Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}
Capybara.default_selector = :css
# quieter log output = faster i/o
Rails.logger.level = 4
RSpec.configure do |config|
# == Mock Framework
#
# If you prefer to use mocha, flexmock or RR, uncomment the appropriate line:
#
# config.mock_with :mocha
# config.mock_with :flexmock
# config.mock_with :rr
config.mock_with :rspec
# Remove this line if you're not using ActiveRecord or ActiveRecord fixtures
#config.fixture_path = "#{::Rails.root}/spec/fixtures"
# If you're not using ActiveRecord, or you'd prefer not to run each of your
# examples within a transaction, remove the following line or assign false
# instead of true.
config.use_transactional_fixtures = false
# If true, the base class of anonymous controllers will be inferred
# automatically. This will be the default behavior in future versions of
# rspec-rails.
config.infer_base_class_for_anonymous_controllers = false
config.include Capybara::DSL
config.include FactoryGirl::Syntax::Methods
config.include EmailSpec::Helpers
config.include EmailSpec::Matchers
config.before(:suite) do
DatabaseCleaner.clean_with(:truncation)
end
config.before(:each) do
DatabaseCleaner.strategy = :transaction
end
config.before(:each, :js => true) do
DatabaseCleaner.strategy = :truncation
end
config.before(:each) do
DatabaseCleaner.start
end
config.after(:each) do
DatabaseCleaner.clean
Capybara.reset_sessions!
end
end
# uncomment if you'd like to disable observers because you
# will be testing them in isolation using their specs
# ActiveRecord::Base.observers.disable :all
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment