Commit 652d181cc5ad8664b26503068937613b3f9a5a33

Authored by AntonioTerceiro
1 parent 86a8b05b

ActionItem70: referring to top ancestor of a category



git-svn-id: https://svn.colivre.coop.br/svn/noosfero/trunk@543 3f533792-8f58-4932-b0fe-aaf55b0a4547
app/models/category.rb
... ... @@ -77,4 +77,8 @@ class Category < ActiveRecord::Base
77 77 cat.recalculate_path = false
78 78 end
79 79  
  80 + def top_ancestor
  81 + self.top_level? ? self : self.parent.top_ancestor
  82 + end
  83 +
80 84 end
... ...
test/unit/category_test.rb
... ... @@ -185,4 +185,14 @@ class CategoryTest < Test::Unit::TestCase
185 185  
186 186 end
187 187  
  188 + should 'be able to get top ancestor' do
  189 + c1 = Category.create!(:name => 'test category', :environment_id => @env.id)
  190 + c2 = Category.create!(:name => 'test category', :environment_id => @env.id, :parent_id => c1.id)
  191 + c3 = Category.create!(:name => 'test category', :environment_id => @env.id, :parent_id => c2.id)
  192 +
  193 + assert_equal c1, c1.top_ancestor
  194 + assert_equal c1, c2.top_ancestor
  195 + assert_equal c1, c3.top_ancestor
  196 + end
  197 +
188 198 end
... ...