mirror of
https://github.com/paper-trail-gem/paper_trail.git
synced 2022-11-09 11:33:19 -05:00
1b1e74dab5
As opposed to unnecessarily casting the RUBY_VERSION to a Float
59 lines
1.7 KiB
Ruby
59 lines
1.7 KiB
Ruby
# This file copies the test database into locations for the `Foo` and `Bar` namespace,
|
|
# then defines those namespaces, then establishes the sqlite3 connection for the namespaces
|
|
# to simulate an application with multiple database connections.
|
|
|
|
#Load database yaml to use
|
|
configs = YAML.load_file("#{Rails.root}/config/database.yml")
|
|
|
|
#If we are testing with sqlite make it quick
|
|
db_directory = "#{Rails.root}/db"
|
|
# setup alternate databases
|
|
if ENV["DB"] == "sqlite"
|
|
if RUBY_VERSION >= '1.9'
|
|
FileUtils.cp "#{db_directory}/test.sqlite3", "#{db_directory}/test-foo.sqlite3"
|
|
FileUtils.cp "#{db_directory}/test.sqlite3", "#{db_directory}/test-bar.sqlite3"
|
|
else
|
|
require 'ftools'
|
|
File.cp "#{db_directory}/test.sqlite3", "#{db_directory}/test-foo.sqlite3"
|
|
File.cp "#{db_directory}/test.sqlite3", "#{db_directory}/test-bar.sqlite3"
|
|
end
|
|
end
|
|
|
|
module Foo
|
|
class Base < ActiveRecord::Base
|
|
self.abstract_class = true
|
|
end
|
|
|
|
class Version < Base
|
|
include PaperTrail::VersionConcern
|
|
end
|
|
|
|
class Document < Base
|
|
has_paper_trail :class_name => 'Foo::Version'
|
|
end
|
|
end
|
|
|
|
Foo::Base.configurations = configs
|
|
Foo::Base.establish_connection(:foo)
|
|
ActiveRecord::Base.establish_connection(:foo)
|
|
ActiveRecord::Migrator.migrate File.expand_path("#{db_directory}/migrate/", __FILE__)
|
|
|
|
module Bar
|
|
class Base < ActiveRecord::Base
|
|
self.abstract_class = true
|
|
end
|
|
|
|
class Version < Base
|
|
include PaperTrail::VersionConcern
|
|
end
|
|
|
|
class Document < Base
|
|
has_paper_trail :class_name => 'Bar::Version'
|
|
end
|
|
end
|
|
|
|
Bar::Base.configurations = configs
|
|
Bar::Base.establish_connection(:bar)
|
|
ActiveRecord::Base.establish_connection(:bar)
|
|
|
|
ActiveRecord::Migrator.migrate File.expand_path("#{db_directory}/migrate/", __FILE__)
|