Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
Rails Spec Helper (using Spork, Mongoid, Factory Girls, Draper, Webmock and Capybara)
require 'rubygems'
require 'spork'
# This code runs once when you run your test suite
Spork.prefork do
ENV['RAILS_ENV'] ||= 'test'
# Mongoid models reload
require 'rails/mongoid'
Spork.trap_class_method(Rails::Mongoid, :load_models)
# Routes and app/ classes reload
require 'rails/application'
Spork.trap_method(Rails::Application::RoutesReloader, :reload!)
Spork.trap_method(Rails::Application, :eager_load!)
# Load railties
require File.expand_path('../../config/environment', __FILE__)
Rails.application.railties.all { |r| r.eager_load! }
# General require
require 'rspec/rails'
require 'capybara/rspec'
require 'webmock/rspec'
require 'draper/test/rspec_integration'
require 'database_cleaner'
RSpec.configure do |config|
config.mock_with :rspec
# Clean up the database
config.before(:suite) { DatabaseCleaner.strategy = :truncation }
config.before(:suite) { DatabaseCleaner.orm = :mongoid }
config.before(:each) { DatabaseCleaner.clean }
# This code will be run each time you run your specs.
Spork.each_run do
require 'factory_girl_rails'
Dir[Rails.root.join('spec/support/**/*.rb')].each {|f| require f}
Dir[Rails.root.join('spec/views/**/*.rb')].each {|f| require f}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment