Commit f7096d226758de082e5ceb460f622a7c890929f3

Authored by Daniela Feitosa
2 parents 4250b447 71ea819b

Merge commit 'refs/merge-requests/20' of git://gitorious.org/noosfero/noosfero i…

…nto merge-requests/20
app/models/environment.rb
@@ -74,6 +74,10 @@ class Environment < ActiveRecord::Base @@ -74,6 +74,10 @@ class Environment < ActiveRecord::Base
74 self.affiliate(user, Environment::Roles.admin(self.id)) 74 self.affiliate(user, Environment::Roles.admin(self.id))
75 end 75 end
76 76
  77 + def remove_admin(user)
  78 + self.disaffiliate(user, Environment::Roles.admin(self.id))
  79 + end
  80 +
77 def admins 81 def admins
78 Person.members_of(self).all(:conditions => ['role_assignments.role_id = ?', Environment::Roles.admin(self).id]) 82 Person.members_of(self).all(:conditions => ['role_assignments.role_id = ?', Environment::Roles.admin(self).id])
79 end 83 end
test/unit/environment_test.rb
@@ -372,8 +372,7 @@ class EnvironmentTest < Test::Unit::TestCase @@ -372,8 +372,7 @@ class EnvironmentTest < Test::Unit::TestCase
372 end 372 end
373 373
374 should 'be able to add admins easily' do 374 should 'be able to add admins easily' do
375 - Environment.any_instance.stubs(:create_templates) # avoid creating templates, it's expensive  
376 - env = Environment.create!(:name => 'bli') 375 + env = Environment.default
377 user = create_user('testuser').person 376 user = create_user('testuser').person
378 env.add_admin(user) 377 env.add_admin(user)
379 env.reload 378 env.reload
@@ -381,6 +380,18 @@ class EnvironmentTest < Test::Unit::TestCase @@ -381,6 +380,18 @@ class EnvironmentTest < Test::Unit::TestCase
381 assert_includes env.admins, user 380 assert_includes env.admins, user
382 end 381 end
383 382
  383 + should 'be able to remove admins easily' do
  384 + env = Environment.default
  385 + user = create_user('testuser').person
  386 + env.affiliate(user, Environment::Roles.admin(env.id))
  387 + env.reload
  388 + assert_includes env.admins, user
  389 +
  390 + env.remove_admin(user)
  391 + assert_not_includes env.admins, user
  392 + end
  393 +
  394 +
384 should 'have products through enterprises' do 395 should 'have products through enterprises' do
385 product_category = fast_create(ProductCategory, :name => 'Products', :environment_id => Environment.default.id) 396 product_category = fast_create(ProductCategory, :name => 'Products', :environment_id => Environment.default.id)
386 env = Environment.default 397 env = Environment.default