Commit 1260d03e638e71309f69bfd8be6f23c189fdc8d0
1 parent
3f2d9656
Exists in
master
and in
22 other branches
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
Showing
2 changed files
with
16 additions
and
0 deletions
Show diff stats
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 |