lib/rubocop/cop/rails/duplicate_association.rb in rubocop-rails-2.22.0 vs lib/rubocop/cop/rails/duplicate_association.rb in rubocop-rails-2.22.1
- old
+ new
@@ -19,16 +19,16 @@
# # good
# belongs_to :bar
# has_one :foo
#
# # bad
- # belongs_to :foo, class_name: 'Foo'
- # belongs_to :bar, class_name: 'Foo'
+ # has_many :foo, class_name: 'Foo'
+ # has_many :bar, class_name: 'Foo'
# has_one :baz
#
# # good
- # belongs_to :bar, class_name: 'Foo'
+ # has_many :bar, class_name: 'Foo'
# has_one :foo
#
class DuplicateAssociation < Base
include RangeHelp
extend AutoCorrector
@@ -85,10 +85,11 @@
leave_duplicated_association(grouped_associations)
end
def duplicated_class_name_nodes(association_nodes)
- grouped_associations = association_nodes.group_by do |node|
+ filtered_nodes = association_nodes.reject { |node| node.method?(:belongs_to) }
+ grouped_associations = filtered_nodes.group_by do |node|
arguments = association(node).last
next unless arguments.count == 1
if (class_name = class_name(arguments.first))
class_name.source