X-Git-Url: https://projects.mako.cc/source/selectricity-live/blobdiff_plain/dc7d60a0de460c72d292b43616eb97a8b34741c8..c933ff40da110253bc4c474d9c79c3a4ed98721d:/test/functional/election_controller_test.rb diff --git a/test/functional/election_controller_test.rb b/test/functional/election_controller_test.rb new file mode 100644 index 0000000..1873304 --- /dev/null +++ b/test/functional/election_controller_test.rb @@ -0,0 +1,88 @@ +require File.dirname(__FILE__) + '/../test_helper' +require 'elections_controller' + +# Re-raise errors caught by the controller. +class ElectionsController; def rescue_action(e) raise e end; end + +class ElectionsControllerTest < Test::Unit::TestCase + fixtures :elections + + def setup + @controller = ElectionsController.new + @request = ActionController::TestRequest.new + @response = ActionController::TestResponse.new + end + + def test_index + get :index + assert_response :success + assert_template 'list' + end + + def test_list + get :list + + assert_response :success + assert_template 'list' + + assert_not_nil assigns(:elections) + end + + def test_show + get :show, :id => 1 + + assert_response :success + assert_template 'show' + + assert_not_nil assigns(:election) + assert assigns(:election).valid? + end + + def test_new + get :new + + assert_response :success + assert_template 'new' + + assert_not_nil assigns(:election) + end + + def test_create + num_elections = Election.count + + post :create, :election => {} + + assert_response :redirect + assert_redirected_to :action => 'list' + + assert_equal num_elections + 1, Election.count + end + + def test_edit + get :edit, :id => 1 + + assert_response :success + assert_template 'edit' + + assert_not_nil assigns(:election) + assert assigns(:election).valid? + end + + def test_update + post :update, :id => 1 + assert_response :redirect + assert_redirected_to :action => 'show', :id => 1 + end + + def test_destroy + assert_not_nil Election.find(1) + + post :destroy, :id => 1 + assert_response :redirect + assert_redirected_to :action => 'list' + + assert_raise(ActiveRecord::RecordNotFound) { + Election.find(1) + } + end +end