Sha256: 2c7c17ddfdf54ea5d0df62fa7b3bba27773b7b57f9de5f2b0ba820ba4b47d382

Contents?: true

Size: 875 Bytes

Versions: 8

Compression:

Stored size: 875 Bytes

Contents

def migration_has_been_run?(version)
  table_name = ActiveRecord::Migrator.schema_migrations_table_name
  query = "SELECT version FROM %s WHERE version = '%s'" % [table_name, version]
  ActiveRecord::Base.connection.clear_query_cache
  ActiveRecord::Base.connection.execute(query).any?
end

def test_migrate(migration_class, migration_number, way, reset_classes = nil)
  reset_classes ||= []

  verbosity = ActiveRecord::Migration.verbose
  ActiveRecord::Migration.verbose = false

  migration = migration_class.new
  case way
  when :up
    migration.migrate(:up)# unless migration_has_been_run?(migration_number)
  when :down
    migration.migrate(:down)# if migration_has_been_run?(migration_number)
  end

  reset_classes.each do |klass|
    klass.connection.schema_cache.clear!
    klass.reset_column_information
  end

  ActiveRecord::Migration.verbose = verbosity
end

Version data entries

8 entries across 8 versions & 2 rubygems

Version Path
static-record-1.2.1 spec/helpers/migration_has_been_run.rb
static-record-1.2.0 spec/helpers/migration_has_been_run.rb
static-record-1.1.0 spec/helpers/migration_has_been_run.rb
adhonorem-1.0.1 spec/helpers/migration_has_been_run.rb
adhonorem-1.0.0 spec/helpers/migration_has_been_run.rb
static-record-1.0.1 spec/helpers/migration_has_been_run.rb
static-record-1.0.0 spec/helpers/migration_has_been_run.rb
static-record-1.0.0.pre.4 spec/helpers/migration_has_been_run.rb