X-Git-Url: https://projects.mako.cc/source/rubyvote/blobdiff_plain/0ef8f53fb812bcc40337a92f9c4d11ab193f73a9..d28df2a4166aa83fd9a0eb1f5a0599b8fc1c9798:/test/election_test.rb diff --git a/test/election_test.rb b/test/election_test.rb index b182e2d..7675e58 100644 --- a/test/election_test.rb +++ b/test/election_test.rb @@ -1,18 +1,26 @@ -#!/usr/bin/ruby +#!/usr/bin/ruby -Ilib require 'test/unit' -require 'election_test_helper' +require 'rubyvote/election' class TestElectionVote < Test::Unit::TestCase - include ElectionTestHelper def test_plurality vote_array = "ABCABCABCCCBBAAABABABCCCCCCCCCCCCCA".split("") - test_winner( "C", PluralityVote.new(vote_array).result ) + assert_equal( "C", PluralityVote.new(vote_array).result.winners[0] ) end + def test_plurality_nonstring + vote_array = [1,2,3,1,1,1,2,3] + assert_equal( 1, PluralityVote.new(vote_array).result.winners[0] ) + end + def test_invalid_voteobj + vote_array = [1,2,nil,1] + assert_raise(InvalidVoteError) { PluralityVote.new(vote_array).result.winners[0] } + end + def test_approval vote_array = Array.new 10.times {vote_array << "AB".split("")} @@ -20,7 +28,7 @@ class TestElectionVote < Test::Unit::TestCase 11.times {vote_array << "AC".split("")} 5.times {vote_array << "A".split("")} - test_winner( "A", ApprovalVote.new(vote_array).result ) + assert_equal( "A", ApprovalVote.new(vote_array).result.winners[0] ) end end