/
spec_helper.rb
49 lines (39 loc) · 1.15 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
ENV["RAILS_ENV"]="test"
dir = File.dirname(__FILE__)
$LOAD_PATH.unshift dir + "/../lib"
$LOAD_PATH.unshift dir
require 'simplecov'
SimpleCov.start do
add_filter '/spec/'
end
require "rubygems"
require "rspec"
require 'database_cleaner'
require "logger"
require "record_cache"
require "record_cache/test/resettable_version_store"
# spec support files
Dir[File.dirname(__FILE__) + "/support/**/*.rb"].each {|f| require f}
# logging
Dir.mkdir(dir + "/log") unless File.exists?(dir + "/log")
ActiveRecord::Base.logger = Logger.new(dir + "/log/debug.log")
# ActiveRecord::Base.logger = Logger.new(STDOUT)
# SQL Lite
ActiveRecord::Base.configurations = YAML::load(IO.read(dir + "/db/database.yml"))
ActiveRecord::Base.establish_connection("sqlite3")
# Initializers + Model + Data
load(dir + "/initializers/record_cache.rb")
load(dir + "/db/schema.rb")
Dir["#{dir}/models/*.rb"].each {|f| load(f) }
load(dir + "/db/seeds.rb")
# Clear cache after each test
RSpec.configure do |config|
config.before(:each) do
RecordCache::Base.enable
DatabaseCleaner.start
end
config.after(:each) do
DatabaseCleaner.clean
RecordCache::Base.version_store.reset!
end
end