class TheSchemaIs::WrongTableName

Constants

MSG_NO_TABLE_NAME
MSG_WRONG_TABLE_NAME

Private Instance Methods

register_offense(_node) click to toggle source
# File lib/the_schema_is/cops.rb, line 113
def register_offense(_node)
  return if model.schema.nil? || schema.nil?

  pp

  if model.table_name_node.nil?
    add_offense(model.schema, message: MSG_NO_TABLE_NAME) do |corrector|
      corrector.insert_after(model.schema.children[0].loc.expression, " #{model.table_name.to_s.inspect}")
    end
  elsif model.table_name_node.children[0] != model.table_name
    add_offense(model.table_name_node,
                message: MSG_WRONG_TABLE_NAME % model.table_name) do |corrector|
      corrector.replace(model.table_name_node.loc.expression, model.table_name.to_s.inspect)
    end
  end
end