Sha256: a48344bf1e1eed0dc80bff90f0b04ce8682cea5fff17ac9bf76a34fbfea4cf82

Contents?: true

Size: 1.23 KB

Versions: 2

Compression:

Stored size: 1.23 KB

Contents

namespace :oracle do
  task :setup do
    require 'bundler'
    Bundler.require(:default, :oracle)
  end

  desc 'Build the Oracle test database'
  task :build_database => :setup do
    spec = CompositePrimaryKeys::ConnectionSpec['oracle']
    ActiveRecord::Base.clear_all_connections!
    ActiveRecord::Base.establish_connection(spec)

    schema = File.join(PROJECT_ROOT, 'test', 'fixtures', 'db_definitions', 'oracle.sql')
    sql = File.read(schema)

    sql.split(';').each do |command|
      ActiveRecord::Base.connection.execute(command)
    end

    ActiveRecord::Base.clear_all_connections!
  end

  desc 'Drop the Oracle test database'
  task :drop_database => :setup do
    spec = CompositePrimaryKeys::ConnectionSpec['oracle']
    ActiveRecord::Base.clear_all_connections!
    ActiveRecord::Base.establish_connection(spec)

    schema = File.join(PROJECT_ROOT, 'test', 'fixtures', 'db_definitions', 'oracle.drop.sql')
    sql = File.read(schema)

    sql.split(';').each do |command|
      ActiveRecord::Base.connection.execute(command)
    end

    ActiveRecord::Base.clear_all_connections!
  end

  desc 'Rebuild the Oracle test database'
  task :rebuild_database => [:drop_database, :build_database]
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
composite_primary_keys-9.0.6 tasks/databases/oracle.rake
composite_primary_keys-9.0.5 tasks/databases/oracle.rake