Class: RailsBestPractices::Prepares::InitializerPrepare

Inherits:
Core::Check
  • Object
show all
Defined in:
lib/rails_best_practices/prepares/initializer_prepare.rb

Overview

Check all initializers

Constant Summary

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

Instance Method Summary collapse

Methods inherited from Core::Check

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

Constructor Details

#initializeInitializerPrepare

Returns a new instance of InitializerPrepare.



11
12
13
# File 'lib/rails_best_practices/prepares/initializer_prepare.rb', line 11

def initialize
  @configs = Prepares.configs
end

Dynamic Method Handling

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

Instance Method Details

#include_forbidden_attributes_protection?(node) ⇒ Boolean

check if the node is

ActiveRecord::Base.send(:include, ActiveModel::ForbiddenAttributesProtection)

Returns:

  • (Boolean)


24
25
26
27
# File 'lib/rails_best_practices/prepares/initializer_prepare.rb', line 24

def include_forbidden_attributes_protection?(node)
  node.receiver.to_s == 'ActiveRecord::Base' && node.message.to_s == 'send' &&
    node.arguments.all.map(&:to_s) == ['include', 'ActiveModel::ForbiddenAttributesProtection']
end