class ActiveRecordTestConnector
Define the essentials
Define the rest of the connector
Public Class Methods
setup()
click to toggle source
# File actionview/test/active_record_unit.rb, line 32 def setup unless connected || !able_to_connect setup_connection load_schema require_fixture_models self.connected = true end rescue Exception => e # errors from ActiveRecord setup $stderr.puts "\nSkipping ActiveRecord assertion tests: #{e}" #$stderr.puts " #{e.backtrace.join("\n ")}\n" self.able_to_connect = false end
Private Class Methods
load_schema()
click to toggle source
Load actionpack sqlite3 tables
# File actionview/test/active_record_unit.rb, line 62 def load_schema File.read(File.expand_path("fixtures/db_definitions/sqlite.sql", __dir__)).split(";").each do |sql| ActiveRecord::Base.connection.execute(sql) unless sql.blank? end end
require_fixture_models()
click to toggle source
# File actionview/test/active_record_unit.rb, line 68 def require_fixture_models Dir.glob(File.expand_path("fixtures/*.rb", __dir__)).each { |f| require f } end
setup_connection()
click to toggle source
# File actionview/test/active_record_unit.rb, line 46 def setup_connection if Object.const_defined?(:ActiveRecord) defaults = { database: ":memory:" } adapter = defined?(JRUBY_VERSION) ? "jdbcsqlite3" : "sqlite3" options = defaults.merge adapter: adapter, timeout: 500 ActiveRecord::Base.establish_connection(options) ActiveRecord::Base.configurations = { "sqlite3_ar_integration" => options } ActiveRecord::Base.connection Object.send(:const_set, :QUOTED_TYPE, ActiveRecord::Base.connection.quote_column_name("type")) unless Object.const_defined?(:QUOTED_TYPE) else raise "Can't setup connection since ActiveRecord isn't loaded." end end