Allow PluralityVote to accept non-string arguments. (I couldn't find any reason why...
[rubyvote] / lib / rubyvote / election.rb
index 4499233ebb0bda4e0f305c6a853bbbf7c96ed454..ec30ab9c357f5cd35f28e2b45123de76c1eebf74 100644 (file)
@@ -63,12 +63,7 @@ class ElectionVote
   end
 
   def filter_out(winner)
-    if winner.winners[0].class == Array
-      to_filter = winner.winners[0]
-    else
-      to_filter = [winner.winners[0]]
-    end
-    @candidates.delete_if {|x| to_filter.include?(x)}
+    @candidates.delete_if {|x| winner.winners.include?(x)}
   end
 
 end
@@ -80,7 +75,7 @@ class PluralityVote < ElectionVote
   
   protected
   def verify_vote(vote=nil)
-    vote.instance_of?( String )
+    vote ? true : false
   end
 
   def tally_vote(candidate)
@@ -119,7 +114,6 @@ end
 
 class ElectionResult
   attr_reader :winners
-  attr_accessor :full_results
 
   def initialize(voteobj=nil)
     unless voteobj and voteobj.kind_of?( ElectionVote )
@@ -128,7 +122,6 @@ class ElectionResult
 
     @election = voteobj
     @winners = Array.new
-    @full_results = Array.new
   end
 
   def winner
@@ -139,10 +132,6 @@ class ElectionResult
     @winners.length > 0
   end
 
-  def get_full_results
-    @full_results.collect {|x| x.winners}
-  end
-
 end
 
 class PluralityResult < ElectionResult

Benjamin Mako Hill || Want to submit a patch?