diff --git a/app/models/card/taggable.rb b/app/models/card/taggable.rb index 5ad75a593..73c89d0b6 100644 --- a/app/models/card/taggable.rb +++ b/app/models/card/taggable.rb @@ -9,7 +9,7 @@ module Card::Taggable end def toggle_tag_with(title) - tag = Tag.find_or_create_by!(title: title) + tag = account.tags.find_or_create_by!(title: title) transaction do if tagged_with?(tag) diff --git a/test/models/card/taggable_test.rb b/test/models/card/taggable_test.rb index 5d054af14..4aadde46f 100644 --- a/test/models/card/taggable_test.rb +++ b/test/models/card/taggable_test.rb @@ -16,4 +16,13 @@ class Card::TaggableTest < ActiveSupport::TestCase @card.toggle_tag_with "ruby" end end + + test "scope tags by account" do + assert_difference -> { Tag.count }, 2 do + cards(:logo).toggle_tag_with "ruby" + cards(:paycheck).toggle_tag_with "ruby" + end + + assert_not_equal cards(:logo).tags.last, cards(:paycheck).tags.last + end end