Sha256: a61039af3199e8b3855409086890c1d7400ec32142fdeed285147b8f389fc0b3

Contents?: true

Size: 670 Bytes

Versions: 16

Compression:

Stored size: 670 Bytes

Contents

module DatabaseMacros
  # Run migrations in the test database
  def run_migration(&block)
    # Create a new migration class
    klass = Class.new(ActiveRecord::Migration)

    # Create a new `up` that executes the argument
    klass.send(:define_method, :up) { instance_exec(&block) }

    # Create a new instance of it and execute its `up` method
    klass.new.up
  end

  def setup_database(opts = {})
    adapter = "#{opts[:adapter].capitalize}Adapter".constantize.new(database: opts[:database])
    adapter.establish_connection!
    adapter.reset_database!

    # Silence everything
    ActiveRecord::Base.logger = ActiveRecord::Migration.verbose = false
  end
end

Version data entries

16 entries across 16 versions & 3 rubygems

Version Path
activerecord_json_validator-1.2.0 spec/support/macros/database_macros.rb
activerecord_json_validator-1.1.0 spec/support/macros/database_macros.rb
activerecord_json_validator-1.0.0 spec/support/macros/database_macros.rb
microscope-1.0.1 spec/support/macros/database_macros.rb
activerecord_json_validator-0.5.1 spec/support/macros/database_macros.rb
activerecord_json_validator-0.5 spec/support/macros/database_macros.rb
activerecord_json_validator-0.4.2 spec/support/macros/database_macros.rb
activerecord_json_validator-0.4.1 spec/support/macros/database_macros.rb
activerecord_json_validator-0.4 spec/support/macros/database_macros.rb
encore-0.2.3 spec/support/macros/database_macros.rb
microscope-1.0.0 spec/support/macros/database_macros.rb
microscope-0.6.2 spec/support/macros/database_macros.rb
encore-0.2.2 spec/support/macros/database_macros.rb
encore-0.2.1 spec/support/macros/database_macros.rb
encore-0.2 spec/support/macros/database_macros.rb
encore-0.1 spec/support/macros/database_macros.rb