Sha256: eb0721dc1d9804bd48ac2906c7f257b8ceddd46f962ff280a7dd2dfb6b0d6575
Contents?: true
Size: 1.33 KB
Versions: 2
Compression:
Stored size: 1.33 KB
Contents
print "Using native SQlite\n" require 'fixtures/course' require 'logger' ActiveRecord::Base.logger = Logger.new("debug.log") class SqliteError < StandardError end BASE_DIR = File.expand_path(File.dirname(__FILE__) + '/../../fixtures') sqlite_test_db = "#{BASE_DIR}/fixture_database.sqlite" sqlite_test_db2 = "#{BASE_DIR}/fixture_database_2.sqlite" def make_connection(clazz, db_file, db_definitions_file) unless File.exist?(db_file) puts "SQLite database not found at #{db_file}. Rebuilding it." sqlite_command = "sqlite #{db_file} 'create table a (a integer); drop table a;'" puts "Executing '#{sqlite_command}'" raise SqliteError.new("Seems that there is no sqlite executable available") unless system(sqlite_command) clazz.establish_connection( :adapter => "sqlite", :dbfile => db_file) script = File.read("#{BASE_DIR}/db_definitions/#{db_definitions_file}") # SQLite-Ruby has problems with semi-colon separated commands, so split and execute one at a time script.split(';').each do |command| clazz.connection.execute(command) unless command.strip.empty? end else clazz.establish_connection( :adapter => "sqlite", :dbfile => db_file) end end make_connection(ActiveRecord::Base, sqlite_test_db, 'sqlite.sql') make_connection(Course, sqlite_test_db2, 'sqlite2.sql')
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
activerecord-1.7.0 | test/connections/native_sqlite/connection.rb |
activerecord-1.8.0 | test/connections/native_sqlite/connection.rb |