Class: RailsBestPractices::Reviews::UseSayWithTimeInMigrationsReview

Inherits:
Review
  • Object
show all
Defined in:
lib/rails_best_practices/reviews/use_say_with_time_in_migrations_review.rb

Overview

Review a migration file to make sure to use say or say_with_time for customized data changes to produce a more readable output.

See the best practice detials here rails-bestpractices.com/posts/2010/08/19/use-say-and-say_with_time-in-migrations-to-make-a-useful-migration-log/

Implementation:

Review process:

check class method define nodes (self.up or self.down).
if there is a method call in the class method definition,
and the message of method call is not say, say_with_time and default migration methods
(such as add_column and create_table), then the method call should be wrapped by say or say_with_time.

Constant Summary collapse

WITH_SAY_METHODS =
%w[say say_with_time].freeze

Constants inherited from Core::Check

Core::Check::ALL_FILES, Core::Check::CAPFILE, Core::Check::CONFIG_FILES, Core::Check::CONTROLLER_FILES, Core::Check::DEPLOY_FILES, Core::Check::GEMFILE_LOCK, Core::Check::HELPER_FILES, Core::Check::INITIALIZER_FILES, Core::Check::MAILER_FILES, Core::Check::MIGRATION_FILES, Core::Check::MODEL_FILES, Core::Check::PARTIAL_VIEW_FILES, Core::Check::ROUTE_FILES, Core::Check::SCHEMA_FILE, Core::Check::SKIP_FILES, Core::Check::VIEW_FILES

Method Summary

Methods inherited from Review

#model_associations, #model_attributes, #models, #remember_variable_use_count, #reset_variable_use_count, #variable, #variable_use_count

Methods inherited from Core::Check

#add_error, debug, debug?, #errors, #initialize, #is_ignored?, #is_interesting_file?, #method_missing, #parse_file?, #regex_ignored_files, #url, url

Constructor Details

This class inherits a constructor from RailsBestPractices::Core::Check

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class RailsBestPractices::Core::Check