From cb2e1e9f57405a1cce709b1760730bf6e3d77edb Mon Sep 17 00:00:00 2001 From: r888888888 Date: Tue, 21 May 2013 17:58:09 -0700 Subject: [PATCH] fixes #1639 --- app/models/tag_alias.rb | 2 +- test/unit/tag_alias_test.rb | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/app/models/tag_alias.rb b/app/models/tag_alias.rb index 019afcbd3..37fb24416 100644 --- a/app/models/tag_alias.rb +++ b/app/models/tag_alias.rb @@ -117,7 +117,7 @@ class TagAlias < ActiveRecord::Base end def ensure_category_consistency - if antecedent_tag.category != consequent_tag.category + if antecedent_tag.category != consequent_tag.category && antecedent_tag.category != Tag.categories.general consequent_tag.update_attribute(:category, antecedent_tag.category) consequent_tag.update_category_cache_for_all end diff --git a/test/unit/tag_alias_test.rb b/test/unit/tag_alias_test.rb index 786b8fcaa..c5a702f0f 100644 --- a/test/unit/tag_alias_test.rb +++ b/test/unit/tag_alias_test.rb @@ -62,9 +62,11 @@ class TagAliasTest < ActiveSupport::TestCase end end + should "not push the antecedent's category to the consequent if the antecedent is general" + should "push the antecedent's category to the consequent" do - tag1 = FactoryGirl.create(:tag, :name => "aaa", :category => 1) - tag2 = FactoryGirl.create(:tag, :name => "bbb") + tag1 = FactoryGirl.create(:tag, :name => "aaa") + tag2 = FactoryGirl.create(:tag, :name => "bbb", :category => 1) ta = FactoryGirl.create(:tag_alias, :antecedent_name => "aaa", :consequent_name => "bbb") tag2.reload assert_equal(1, tag2.category)