Class: Code0::ZeroTrack::Database::SchemaMigrations::Context

Inherits:
Object
  • Object
show all
Defined in:
lib/code0/zero_track/database/schema_migrations/context.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(connection) ⇒ Context

Returns a new instance of Context.



19
20
21
# File 'lib/code0/zero_track/database/schema_migrations/context.rb', line 19

def initialize(connection)
  @connection = connection
end

Instance Attribute Details

#connectionObject (readonly)

Returns the value of attribute connection.



15
16
17
# File 'lib/code0/zero_track/database/schema_migrations/context.rb', line 15

def connection
  @connection
end

Instance Method Details

#schema_directoryObject



23
24
25
# File 'lib/code0/zero_track/database/schema_migrations/context.rb', line 23

def schema_directory
  @schema_directory ||= Rails.root.join(database_schema_migrations_path).to_s
end

#versions_to_createObject



27
28
29
30
31
32
# File 'lib/code0/zero_track/database/schema_migrations/context.rb', line 27

def versions_to_create
  versions_from_database = @connection.pool.schema_migration.versions
  versions_from_migration_files = @connection.pool.migration_context.migrations.map { |m| m.version.to_s }

  versions_from_database & versions_from_migration_files
end