From 7350c1e17d5b54a8b4e0ce43ba4c91eb4413f368 Mon Sep 17 00:00:00 2001 From: Thibault Jouan Date: Mon, 5 Sep 2011 16:31:29 +0000 Subject: [PATCH] Bundle and use spork to speed up specs by preloading rails env --- Gemfile | 1 + Gemfile.lock | 2 ++ spec/spec_helper.rb | 27 ++++++++++++--------- spec/support/decrease_bcrypt_cost_factor.rb | 2 ++ 4 files changed, 20 insertions(+), 12 deletions(-) diff --git a/Gemfile b/Gemfile index e5583a0..35fc0bc 100644 --- a/Gemfile +++ b/Gemfile @@ -14,4 +14,5 @@ group :development, :test do gem 'capybara' gem 'database_cleaner' gem 'factory_girl_rails' + gem 'spork', '~> 0.9.0.rc' end diff --git a/Gemfile.lock b/Gemfile.lock index d0d2b90..f860dc5 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -113,6 +113,7 @@ GEM ffi (>= 1.0.7) json_pure rubyzip + spork (0.9.0.rc9) sqlite3 (1.3.3) term-ansicolor (1.0.5) thor (0.14.6) @@ -134,4 +135,5 @@ DEPENDENCIES haml rails (= 3.0.9) rspec-rails + spork (~> 0.9.0.rc) sqlite3 diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 0918c69..9521f7f 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -1,16 +1,19 @@ -# This file is copied to spec/ when you run 'rails generate rspec:install' -ENV['RAILS_ENV'] ||= 'test' -require File.expand_path('../../config/environment', __FILE__) -require 'rspec/rails' +require 'spork' -# 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} +Spork.prefork do + ENV['RAILS_ENV'] ||= 'test' + require File.expand_path('../../config/environment', __FILE__) + require 'rspec/rails' -RSpec.configure do |config| - config.mock_with :rspec - config.fixture_path = "#{::Rails.root}/spec/fixtures" - config.use_transactional_fixtures = true + Dir[Rails.root.join('spec/support/**/*.rb')].each {|f| require f} + + RSpec.configure do |config| + config.mock_with :rspec + config.fixture_path = "#{::Rails.root}/spec/fixtures" + config.use_transactional_fixtures = true + end end -load "#{Rails.root.to_s}/db/schema.rb" +Spork.each_run do + load "#{Rails.root.to_s}/db/schema.rb" +end diff --git a/spec/support/decrease_bcrypt_cost_factor.rb b/spec/support/decrease_bcrypt_cost_factor.rb index 0099be0..25bb773 100644 --- a/spec/support/decrease_bcrypt_cost_factor.rb +++ b/spec/support/decrease_bcrypt_cost_factor.rb @@ -1,3 +1,5 @@ +require 'bcrypt' + module BCrypt class Engine [:DEFAULT_COST, :MIN_COST].each do |sym|