class RuboCop::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/rubocop/cop/rails/enum_uniqueness.rb, line 30 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, message: format(MSG, value: item.source, enum: name)) end end end