Sha256: 40f9c735a94a776bebff1bb4bcc85a2c6621d1fd1c1e368a50e4219d6dc489cf
Contents?: true
Size: 1.01 KB
Versions: 12
Compression:
Stored size: 1.01 KB
Contents
# frozen_string_literal: true module RuboCop module Cop module Rails # This cop looks for delegations that pass :allow_blank as an option # instead of :allow_nil. :allow_blank is not a valid option to pass # to ActiveSupport#delegate. # # @example # # bad # delegate :foo, to: :bar, allow_blank: true # # # good # delegate :foo, to: :bar, allow_nil: true class DelegateAllowBlank < Cop MSG = '`allow_blank` is not a valid option, use `allow_nil`.' def_node_matcher :allow_blank_option, <<-PATTERN (send nil? :delegate _ (hash <$(pair (sym :allow_blank) true) ...>)) PATTERN def on_send(node) allow_blank_option(node) do |offending_node| add_offense(offending_node) end end def autocorrect(pair_node) lambda do |corrector| corrector.replace(pair_node.key.source_range, 'allow_nil') end end end end end end
Version data entries
12 entries across 12 versions & 2 rubygems