This repository has been archived by the owner on Jan 17, 2019. It is now read-only.
/
spec_helper.rb
57 lines (49 loc) · 1.79 KB
/
spec_helper.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
def setup_environment
# Configure Rails Environment
ENV["RAILS_ENV"] ||= 'test'
if File.exist?(dummy_path = File.expand_path('../dummy/config/environment.rb', __FILE__))
require dummy_path
elsif File.dirname(__FILE__) =~ %r{vendor/extensions}
# Require the path to the refinerycms application this is vendored inside.
require File.expand_path('../../../../../config/environment', __FILE__)
else
raise "Could not find a config/environment.rb file to require. Please specify this in #{File.expand_path(__FILE__)}"
end
require 'rspec/rails'
require 'capybara/rspec'
Rails.backtrace_cleaner.remove_silencers!
RSpec.configure do |config|
config.mock_with :rspec
config.treat_symbols_as_metadata_keys_with_true_values = true
config.filter_run :focus => true
config.run_all_when_everything_filtered = true
end
end
def each_run
Rails.cache.clear
ActiveSupport::Dependencies.clear
FactoryGirl.reload
# Requires supporting files with custom matchers and macros, etc,
# in ./support/ and its subdirectories including factories.
([Rails.root.to_s] | ::Refinery::Plugins.registered.pathnames).map{|p|
Dir[File.join(p, 'spec', 'support', '**', '*.rb').to_s]
}.flatten.sort.each do |support_file|
require support_file
end
end
# If spork is available in the Gemfile it'll be used but we don't force it.
unless (begin; require 'spork'; rescue LoadError; nil end).nil?
Spork.prefork do
# Loading more in this block will cause your tests to run faster. However,
# if you change any configuration or code from libraries loaded here, you'll
# need to restart spork for it take effect.
setup_environment
end
Spork.each_run do
# This code will be run each time you run your specs.
each_run
end
else
setup_environment
each_run
end