X-Git-Url: https://projects.mako.cc/source/selectricity-live/blobdiff_plain/6a62ba861098fb0992a12211df565b7e5dce2240..0f9de7a83f46b302d82dbeb66def7f12ae15077a:/lib/rubyvote/election.rb diff --git a/lib/rubyvote/election.rb b/lib/rubyvote/election.rb index b9bb557..5a58243 100644 --- a/lib/rubyvote/election.rb +++ b/lib/rubyvote/election.rb @@ -45,7 +45,7 @@ class ElectionVote if self.verify_vote(vote) self.tally_vote(vote) else - raise InvalidVoteError.new ("Invalid vote object", vote) + raise InvalidVoteError.new("Invalid vote object", vote) end end else @@ -133,14 +133,15 @@ class ElectionResult end def winner? - @winners.length > 0 + @winners.length > 0 and not @winners[0].nil? end end class PluralityResult < ElectionResult attr_reader :ranked_candidates - + attr_reader :points + def initialize(voteobj=nil) super(voteobj) @@ -151,6 +152,8 @@ class PluralityResult < ElectionResult b[1] <=> a[1] end.collect {|a| a[0]} + @points = @election.votes + # winners are anyone who has the same number of votes as the # first person @winners = @ranked_candidates.find_all do |i|