class RubbyCop::Cop::Rails::EnumUniqueness
This cop looks for duplicate values in enum declarations.
@example
# bad enum status: { active: 0, archived: 0 } # good enum status: { active: 0, archived: 1 } # bad enum status: [:active, :archived, :active] # good enum status: [:active, :archived]
Constants
- MSG
Public Instance Methods
on_send(node)
click to toggle source
# File lib/rubbycop/cop/rails/enum_uniqueness.rb, line 29 def on_send(node) enum_declaration(node) do |name, args| items = args.values return unless duplicates?(items) consecutive_duplicates(items).each do |item| add_offense(item, :expression, format(MSG, item.source, name)) end end end