Sha256: 69014f40a04e2ebc4d37ef2f9a3d0aa2c2bdf115cccd6a2ef2617e2ee79f0f8a
Contents?: true
Size: 1.49 KB
Versions: 1
Compression:
Stored size: 1.49 KB
Contents
require File.join(PROJECT_ROOT, 'lib', 'composite_primary_keys') require File.join(PROJECT_ROOT, 'test', 'connections', 'connection_spec') namespace :mysql do desc 'Create the MySQL test databases' task :create_database do ActiveRecord::Base.clear_all_connections! spec = CompositePrimaryKeys::ConnectionSpec['mysql'].dup database_name = spec.delete('database') connection = ActiveRecord::Base.establish_connection(spec) ActiveRecord::Base.connection.create_database(database_name) ActiveRecord::Base.clear_all_connections! end desc 'Build the MySQL test databases' task :build_databases => [:create_database] do path = File.join(PROJECT_ROOT, 'test', 'fixtures', 'db_definitions', 'mysql.sql') sql = File.open(path, 'rb') do |file| file.read end Rake::Task['mysql:load_connection'].reenable Rake::Task['mysql:load_connection'].invoke #puts %(ActiveRecord::Base.connection.instance_variable_get(:@config)=#{(ActiveRecord::Base.connection.instance_variable_get(:@config)).inspect}) ActiveRecord::Base.connection.execute(sql) end desc 'Drop the MySQL test databases' task :drop_databases => :load_connection do ActiveRecord::Base.connection.drop_database(SPEC['database']) end desc 'Rebuild the MySQL test databases' task :rebuild_databases => [:drop_databases, :build_databases] task :load_connection do require File.join(PROJECT_ROOT, "test", "connections", "native_mysql", "connection") establish_connection end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
composite_primary_keys-5.0.5 | tasks/databases/mysql.rake |