gitlab-org--gitlab-foss/spec/support/migrations_helpers.rb
Grzegorz Bizon 028423c2f5 Calculate previous migration version in specs support
This makes it possible to test migration on the schema this migration
was written for, without a need to specify a previous schema version
manually.
2017-06-05 11:07:10 +02:00

29 lines
649 B
Ruby

module MigrationsHelpers
def table(name)
Class.new(ActiveRecord::Base) { self.table_name = name }
end
def migrations_paths
ActiveRecord::Migrator.migrations_paths
end
def table_exists?(name)
ActiveRecord::Base.connection.table_exists?(name)
end
def migrations
ActiveRecord::Migrator.migrations(migrations_paths)
end
def previous_migration
migrations.each_cons(2) do |previous, migration|
break previous if migration.name == described_class.name
end
end
def migrate!
ActiveRecord::Migrator.up(migrations_paths) do |migration|
migration.name == described_class.name
end
end
end