class ConsistencyFail::Introspectors::TableData

Public Instance Methods

unique_indexes(model) click to toggle source
# File lib/consistency_fail/introspectors/table_data.rb, line 6
def unique_indexes(model)
  return [] if !model.table_exists?

  unique_indexes_by_table(model, model.connection, model.table_name)
end
unique_indexes_by_table(model, connection, table_name) click to toggle source
# File lib/consistency_fail/introspectors/table_data.rb, line 12
def unique_indexes_by_table(model, connection, table_name)
  ar_indexes = connection.indexes(table_name).select(&:unique)
  result = ar_indexes.map do |index|
    ConsistencyFail::Index.new(model,
                               table_name,
                               index.columns)
  end
  result
end