beast rev 2066
[beast-modified.git] / test / functional / moderators_controller_test.rb
blob2f02ca10766ee7f1e0401ad40f416f4d44fda0b5
1 require File.dirname(__FILE__) + '/../test_helper'
2 require 'moderators_controller'
4 # Re-raise errors caught by the controller.
5 class ModeratorsController; def rescue_action(e) raise e end; end
7 class ModeratorsControllerTest < Test::Unit::TestCase
8   all_fixtures
9   def setup
10     @controller = ModeratorsController.new
11     @request    = ActionController::TestRequest.new
12     @response   = ActionController::TestResponse.new
13   end
15   def test_should_delete_moderatorship
16     assert users(:sam).moderator_of?(forums(:rails))
17     login_as :aaron
18     assert_difference Moderatorship, :count, -1 do
19       delete :destroy, :user_id => users(:sam).id, :id => moderatorships(:sam_rails).id
20     end
21     assert_redirected_to user_path(users(:sam))
22     assert !users(:sam).moderator_of?(forums(:rails))
23   end
25   def test_should_only_allow_admins_to_delete_moderatorships
26     login_as :sam
27     assert_difference Moderatorship, :count, 0 do
28       delete :destroy, :user_id => users(:sam).id, :id => moderatorships(:sam_rails).id
29     end
30     assert_redirected_to login_path
31   end
32 end