class RuboCop::Cop::Itamae::NeedlessDefaultAction
Checks whether default action is written for resource.
@example
# bad package 'git' do action :install end # good package 'git' do end package 'git'
Constants
- MSG
- RESOURCE_DEFAULT_ACTIONS
Public Instance Methods
on_block(node)
click to toggle source
# File lib/rubocop/cop/itamae/needless_default_action.rb, line 60 def on_block(node) find_resource(node) do |resource, param_nodes| param_nodes.compact.each do |param_node| find_action(param_node) do |action| next unless action == RESOURCE_DEFAULT_ACTIONS[resource] add_offense(param_node.loc.expression) do |corrector| remove_action_param(corrector, param_node.parent, param_node) if param_node.send_type? end end end end end
Private Instance Methods
node_range(node)
click to toggle source
# File lib/rubocop/cop/itamae/needless_default_action.rb, line 86 def node_range(node) range_by_whole_lines(node.source_range, include_final_newline: true) end
remove_action_param(corrector, parent_node, param_node)
click to toggle source
# File lib/rubocop/cop/itamae/needless_default_action.rb, line 76 def remove_action_param(corrector, parent_node, param_node) find_resource(parent_node) do |resource| find_action(param_node) do |action| next unless action == RESOURCE_DEFAULT_ACTIONS[resource] corrector.remove(node_range(param_node)) end end end