X-Git-Url: https://projects.mako.cc/source/selectricity-live/blobdiff_plain/05ebed925ae2b5e7bf2a599536ba7d7ac15ffbf7..ad088c1324d08a65f6f5336bedf7a88a8a8950e7:/test/functional/graph_controller_test.rb diff --git a/test/functional/graph_controller_test.rb b/test/functional/graph_controller_test.rb deleted file mode 100644 index f9d4392..0000000 --- a/test/functional/graph_controller_test.rb +++ /dev/null @@ -1,117 +0,0 @@ -require File.dirname(__FILE__) + '/../test_helper' -require 'graph_controller' -require 'selectricity_service_controller' - -# Re-raise errors caught by the controller. -class GraphController; def rescue_action(e) raise e end; end - -class GraphControllerTest < Test::Unit::TestCase - - #fixtures :data - - def setup - @controller = GraphController.new - @request = ActionController::TestRequest.new - @response = ActionController::TestResponse.new - @SS = SelectricityService.new - @election = nil - end - - # TODO Replace this with your actual tests - def test_show_nonexist_votes_per_interval - assert_raise(ActiveRecord::RecordNotFound) { get :votes_per_interval, { :id => 42 } } - end - - def test_show_nonexist_borda_bar - assert_raise(ActiveRecord::RecordNotFound) { get :borda_bar, { :id => 42 } } - end - - def test_show_nonexist_choices_positions - assert_raise(ActiveRecord::RecordNotFound) { get :choices_positions, { :id => 42 } } - end - - def test_show_empty_votes_per_interval - make_election - get :votes_per_interval, { :id => @election.id } - assert_response :success - assert_equal 'image/png', @response.headers['Content-Type'] - end - - def test_show_empty_borda_bar - make_election - get :borda_bar, { :id => @election.id } - assert_response :success - assert_equal 'image/png', @response.headers['Content-Type'] - end - - def test_show_empty_choices_positions - make_election - get :choices_positions, { :id => @election.id } - assert_response :success - assert_equal 'image/png', @response.headers['Content-Type'] - end - - def test_show_single_votes_per_interval - make_election - cast_vote - get :votes_per_interval, { :id => @election.id } - assert_response :success - assert_equal 'image/png', @response.headers['Content-Type'] - end - - def test_show_single_borda_bar - make_election - cast_vote - get :borda_bar, { :id => @election.id } - assert_response :success - assert_equal 'image/png', @response.headers['Content-Type'] - end - - def test_show_single_choices_positions - make_election - cast_vote - get :choices_positions, { :id => @election.id } - assert_response :success - assert_equal 'image/png', @response.headers['Content-Type'] - end - - def test_show_many_votes_per_interval - make_election - 20.times {cast_vote} - get :votes_per_interval, { :id => @election.id } - assert_response :success - assert_equal 'image/png', @response.headers['Content-Type'] - end - - def test_show_many_borda_bar - make_election - 20.times {cast_vote} - get :borda_bar, { :id => @election.id } - assert_response :success - assert_equal 'image/png', @response.headers['Content-Type'] - end - - def test_show_many_choices_positions - make_election - 20.times {cast_vote} - get :choices_positions, { :id => @election.id } - assert_response :success - assert_equal 'image/png', @response.headers['Content-Type'] - end - - - private - def make_election - e=QuickVoteStruct.new( :name => "test", :description => "This is a test", - :candidate_names => ['choice1', 'choice2', 'choice3']) - @SS.create_quickvote e - @election = @SS.list_quickvotes[0] - assert_not_nil @election - end - - private - def cast_vote - @SS.cast_quickvote @election.name, 42, [@election.candidate_ids.sort_by {rand}] - end - -end