fixes #1211 for renamed artists

This commit is contained in:
Toks
2013-10-26 00:13:09 -04:00
parent 11871d88b6
commit 5cfea6a3d0
2 changed files with 14 additions and 3 deletions

View File

@@ -3,7 +3,7 @@ class Artist < ActiveRecord::Base
before_save :normalize_name before_save :normalize_name
after_save :create_version after_save :create_version
after_save :save_url_string after_save :save_url_string
after_create :categorize_tag after_save :categorize_tag
validates_uniqueness_of :name validates_uniqueness_of :name
belongs_to :creator, :class_name => "User" belongs_to :creator, :class_name => "User"
has_many :members, :class_name => "Artist", :foreign_key => "group_name", :primary_key => "name" has_many :members, :class_name => "Artist", :foreign_key => "group_name", :primary_key => "name"
@@ -178,7 +178,9 @@ class Artist < ActiveRecord::Base
end end
def categorize_tag def categorize_tag
Tag.find_or_create_by_name("artist:#{name}") if new_record? || name_changed?
Tag.find_or_create_by_name("artist:#{name}")
end
end end
end end

View File

@@ -182,11 +182,20 @@ class ArtistTest < ActiveSupport::TestCase
assert_equal("yyy", artist.other_names) assert_equal("yyy", artist.other_names)
end end
should "update the category of the tag" do should "update the category of the tag when created" do
tag = FactoryGirl.create(:tag, :name => "abc") tag = FactoryGirl.create(:tag, :name => "abc")
artist = FactoryGirl.create(:artist, :name => "abc") artist = FactoryGirl.create(:artist, :name => "abc")
tag.reload tag.reload
assert_equal(Tag.categories.artist, tag.category) assert_equal(Tag.categories.artist, tag.category)
end end
should "update the category of the tag when renamed" do
tag = FactoryGirl.create(:tag, :name => "def")
artist = FactoryGirl.create(:artist, :name => "abc")
artist.name = "def"
artist.save
tag.reload
assert_equal(Tag.categories.artist, tag.category)
end
end end
end end