class RuboCop::Cop::Chef::Modernize::IfProvidesDefaultAction

if defined?(default_action) is no longer necessary in Chef Resources as default_action shipped in Chef 10.8.

@example

#### incorrect
default_action :foo if defined?(default_action)

#### correct
default_action :foo

Constants

MSG

Public Instance Methods

on_defined?(node) click to toggle source
# File lib/rubocop/cop/chef/modernize/if_provides_default_action.rb, line 37
def on_defined?(node)
  return unless node.arguments.first == s(:send, nil, :default_action)
  node = node.parent if node.parent.respond_to?(:if?) && node.parent.if? # we want the whole if statement
  add_offense(node, message: MSG, severity: :refactor) do |corrector|
    corrector.replace(node, node.children[1].source)
  end
end