Commit 1260d03e638e71309f69bfd8be6f23c189fdc8d0

Authored by AntonioTerceiro
1 parent 3f2d9656

ActionItem70: creating an actual relationship from environment to its categories



git-svn-id: https://svn.colivre.coop.br/svn/noosfero/trunk@525 3f533792-8f58-4932-b0fe-aaf55b0a4547
app/models/environment.rb
@@ -22,6 +22,8 @@ class Environment < ActiveRecord::Base @@ -22,6 +22,8 @@ class Environment < ActiveRecord::Base
22 has_many :domains, :as => :owner 22 has_many :domains, :as => :owner
23 has_many :profiles 23 has_many :profiles
24 24
  25 + has_many :categories
  26 +
25 # ################################################# 27 # #################################################
26 # Attributes 28 # Attributes
27 # ################################################# 29 # #################################################
test/unit/environment_test.rb
@@ -101,12 +101,26 @@ class EnvironmentTest < Test::Unit::TestCase @@ -101,12 +101,26 @@ class EnvironmentTest < Test::Unit::TestCase
101 env = Environment.create!(:name => 'a test environment') 101 env = Environment.create!(:name => 'a test environment')
102 cat1 = Category.create!(:name => 'first category', :environment_id => env.id) 102 cat1 = Category.create!(:name => 'first category', :environment_id => env.id)
103 cat2 = Category.create!(:name => 'second category', :environment_id => env.id) 103 cat2 = Category.create!(:name => 'second category', :environment_id => env.id)
  104 + subcat = Category.create!(:name => 'child category', :environment_id => env.id, :parent_id => cat2.id)
104 105
105 cats = env.top_level_categories 106 cats = env.top_level_categories
106 assert_equal 2, cats.size 107 assert_equal 2, cats.size
107 assert cats.include?(cat1) 108 assert cats.include?(cat1)
108 assert cats.include?(cat2) 109 assert cats.include?(cat2)
  110 + assert !cats.include?(subcat)
  111 + end
109 112
  113 + def test_should_list_all_categories
  114 + env = Environment.create!(:name => 'a test environment')
  115 + cat1 = Category.create!(:name => 'first category', :environment_id => env.id)
  116 + cat2 = Category.create!(:name => 'second category', :environment_id => env.id)
  117 + subcat = Category.create!(:name => 'child category', :environment_id => env.id, :parent_id => cat2.id)
  118 +
  119 + cats = env.categories
  120 + assert_equal 3, cats.size
  121 + assert cats.include?(cat1)
  122 + assert cats.include?(cat2)
  123 + assert cats.include?(subcat)
110 end 124 end
111 125
112 end 126 end