Class: RuboCop::Cop::Rails::CreateTableWithTimestamps
- Inherits:
-
Base
- Object
- Base
- RuboCop::Cop::Rails::CreateTableWithTimestamps
- Includes:
- ActiveRecordMigrationsHelper
- Defined in:
- lib/rubocop/cop/rails/create_table_with_timestamps.rb
Overview
This cop checks the migration for which timestamps are not included when creating a new table. In many cases, timestamps are useful information and should be added.
Constant Summary collapse
- MSG =
'Add timestamps when creating a new table.'- RESTRICT_ON_SEND =
%i[create_table].freeze
Constants included from ActiveRecordMigrationsHelper
ActiveRecordMigrationsHelper::MYSQL_SCHEMA_DEFINITIONS, ActiveRecordMigrationsHelper::POSTGRES_SCHEMA_DEFINITIONS, ActiveRecordMigrationsHelper::RAILS_ABSTRACT_SCHEMA_DEFINITIONS, ActiveRecordMigrationsHelper::RAILS_ABSTRACT_SCHEMA_DEFINITIONS_HELPERS
Instance Method Summary collapse
Instance Method Details
#on_send(node) ⇒ Object
63 64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/rubocop/cop/rails/create_table_with_timestamps.rb', line 63 def on_send(node) return unless node.command?(:create_table) parent = node.parent if create_table_with_block?(parent) add_offense(parent) if parent.body.nil? || !time_columns_included?(parent.body) elsif (node) # nothing to do else add_offense(node) end end |