-require File.expand_path('../../test_helper', __FILE__)
-
-class AuthSourcesControllerTest < ActionController::TestCase
-
- def setup
- @request.session[:user_id] = 1
- end
-
- context "get :index" do
- setup do
- get :index
- end
-
- should_assign_to :auth_sources
- should_assign_to :auth_source_pages
- should_respond_with :success
- should_render_template :index
- end
-
- context "get :new" do
- setup do
- get :new
- end
-
- should_assign_to :auth_source
- should_respond_with :success
- should_render_template :new
-
- should "initilize a new AuthSource" do
- assert_equal AuthSource, assigns(:auth_source).class
- assert assigns(:auth_source).new_record?
- end
- end
-
- context "post :create" do
- setup do
- post :create, :auth_source => {:name => 'Test'}
- end
-
- should_respond_with :redirect
- should_redirect_to("index") {{:action => 'index'}}
- should_set_the_flash_to /success/i
- end
-
- context "get :edit" do
- setup do
- @auth_source = AuthSource.generate!(:name => 'TestEdit')
- get :edit, :id => @auth_source.id
- end
-
- should_assign_to(:auth_source) {@auth_source}
- should_respond_with :success
- should_render_template :edit
- end
-
- context "post :update" do
- setup do
- @auth_source = AuthSource.generate!(:name => 'TestEdit')
- post :update, :id => @auth_source.id, :auth_source => {:name => 'TestUpdate'}
- end
-
- should_respond_with :redirect
- should_redirect_to("index") {{:action => 'index'}}
- should_set_the_flash_to /update/i
- end
-
- context "post :destroy" do
- setup do
- @auth_source = AuthSource.generate!(:name => 'TestEdit')
- end
-
- context "without users" do
- setup do
- post :destroy, :id => @auth_source.id
- end
-
- should_respond_with :redirect
- should_redirect_to("index") {{:action => 'index'}}
- should_set_the_flash_to /deletion/i
- end
-
- context "with users" do
- setup do
- User.generate!(:auth_source => @auth_source)
- post :destroy, :id => @auth_source.id
- end
-
- should_respond_with :redirect
- should "not destroy the AuthSource" do
- assert AuthSource.find(@auth_source.id)
- end
- end
- end
-end
+# Redmine - project management software\r
+# Copyright (C) 2006-2011 Jean-Philippe Lang\r
+#\r
+# This program is free software; you can redistribute it and/or\r
+# modify it under the terms of the GNU General Public License\r
+# as published by the Free Software Foundation; either version 2\r
+# of the License, or (at your option) any later version.\r
+#\r
+# This program is distributed in the hope that it will be useful,\r
+# but WITHOUT ANY WARRANTY; without even the implied warranty of\r
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
+# GNU General Public License for more details.\r
+#\r
+# You should have received a copy of the GNU General Public License\r
+# along with this program; if not, write to the Free Software\r
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\r
+\r
+require File.expand_path('../../test_helper', __FILE__)\r
+\r
+class AuthSourcesControllerTest < ActionController::TestCase\r
+ fixtures :users\r
+\r
+ def setup\r
+ @request.session[:user_id] = 1\r
+ end\r
+\r
+ def test_index\r
+ get :index\r
+\r
+ assert_response :success\r
+ assert_template 'index'\r
+ assert_not_nil assigns(:auth_sources)\r
+ end\r
+\r
+ def test_new\r
+ get :new\r
+\r
+ assert_response :success\r
+ assert_template 'new'\r
+ assert_kind_of AuthSource, assigns(:auth_source)\r
+ assert assigns(:auth_source).new_record?\r
+ end\r
+\r
+ def test_create\r
+ assert_difference 'AuthSource.count' do\r
+ post :create, :auth_source => {:name => 'Test'}\r
+ end\r
+\r
+ assert_redirected_to '/auth_sources'\r
+ auth_source = AuthSource.first(:order => 'id DESC')\r
+ assert_equal 'Test', auth_source.name\r
+ end\r
+\r
+ def test_edit\r
+ auth_source = AuthSource.generate!(:name => 'TestEdit')\r
+ get :edit, :id => auth_source.id\r
+\r
+ assert_response :success\r
+ assert_template 'edit'\r
+ assert_equal auth_source, assigns(:auth_source)\r
+ end\r
+\r
+ def test_update\r
+ auth_source = AuthSource.generate!(:name => 'TestEdit')\r
+ post :update, :id => auth_source.id, :auth_source => {:name => 'TestUpdate'}\r
+\r
+ assert_redirected_to '/auth_sources'\r
+ assert_equal 'TestUpdate', auth_source.reload.name\r
+ end\r
+\r
+ def test_destroy_without_users\r
+ auth_source = AuthSource.generate!(:name => 'TestEdit')\r
+ assert_difference 'AuthSource.count', -1 do\r
+ post :destroy, :id => auth_source.id\r
+ end\r
+\r
+ assert_redirected_to '/auth_sources'\r
+ end\r
+\r
+ def test_destroy_with_users\r
+ auth_source = AuthSource.generate!(:name => 'TestEdit')\r
+ User.generate!(:auth_source => auth_source)\r
+ assert_no_difference 'AuthSource.count' do\r
+ post :destroy, :id => auth_source.id\r
+ end\r
+\r
+ assert_redirected_to '/auth_sources'\r
+ assert AuthSource.find(auth_source.id)\r
+ end\r
+end\r