Chris@909: require File.expand_path('../../test_helper', __FILE__) Chris@909: Chris@909: class AuthSourcesControllerTest < ActionController::TestCase Chris@909: Chris@909: def setup Chris@909: @request.session[:user_id] = 1 Chris@909: end Chris@909: Chris@909: context "get :index" do Chris@909: setup do Chris@909: get :index Chris@909: end Chris@909: Chris@909: should_assign_to :auth_sources Chris@909: should_assign_to :auth_source_pages Chris@909: should_respond_with :success Chris@909: should_render_template :index Chris@909: end Chris@909: Chris@909: context "get :new" do Chris@909: setup do Chris@909: get :new Chris@909: end Chris@909: Chris@909: should_assign_to :auth_source Chris@909: should_respond_with :success Chris@909: should_render_template :new Chris@909: Chris@909: should "initilize a new AuthSource" do Chris@909: assert_equal AuthSource, assigns(:auth_source).class Chris@909: assert assigns(:auth_source).new_record? Chris@909: end Chris@909: end Chris@909: Chris@909: context "post :create" do Chris@909: setup do Chris@909: post :create, :auth_source => {:name => 'Test'} Chris@909: end Chris@909: Chris@909: should_respond_with :redirect Chris@909: should_redirect_to("index") {{:action => 'index'}} Chris@909: should_set_the_flash_to /success/i Chris@909: end Chris@909: Chris@909: context "get :edit" do Chris@909: setup do Chris@909: @auth_source = AuthSource.generate!(:name => 'TestEdit') Chris@909: get :edit, :id => @auth_source.id Chris@909: end Chris@909: Chris@909: should_assign_to(:auth_source) {@auth_source} Chris@909: should_respond_with :success Chris@909: should_render_template :edit Chris@909: end Chris@909: Chris@909: context "post :update" do Chris@909: setup do Chris@909: @auth_source = AuthSource.generate!(:name => 'TestEdit') Chris@909: post :update, :id => @auth_source.id, :auth_source => {:name => 'TestUpdate'} Chris@909: end Chris@909: Chris@909: should_respond_with :redirect Chris@909: should_redirect_to("index") {{:action => 'index'}} Chris@909: should_set_the_flash_to /update/i Chris@909: end Chris@909: Chris@909: context "post :destroy" do Chris@909: setup do Chris@909: @auth_source = AuthSource.generate!(:name => 'TestEdit') Chris@909: end Chris@909: Chris@909: context "without users" do Chris@909: setup do Chris@909: post :destroy, :id => @auth_source.id Chris@909: end Chris@909: Chris@909: should_respond_with :redirect Chris@909: should_redirect_to("index") {{:action => 'index'}} Chris@909: should_set_the_flash_to /deletion/i Chris@909: end Chris@909: Chris@909: context "with users" do Chris@909: setup do Chris@909: User.generate!(:auth_source => @auth_source) Chris@909: post :destroy, :id => @auth_source.id Chris@909: end Chris@909: Chris@909: should_respond_with :redirect Chris@909: should "not destroy the AuthSource" do Chris@909: assert AuthSource.find(@auth_source.id) Chris@909: end Chris@909: end Chris@909: end Chris@909: end