Scope tags by account
We missed this one when we went to MySQL. This can results in cards tagged with cards from other accounts. No data leaked though: the symptom is that you see the card tagged as expected but you don't see the tag in the menu.
This commit is contained in:
@@ -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)
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user