projects
/
rubyvote
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add testcases for calling results to empty votes.
[rubyvote]
/
test
/
irv_test.rb
diff --git
a/test/irv_test.rb
b/test/irv_test.rb
index 920380672f5eb4d1d2fc7d562d0ba8454f9e93c1..fa05dc99bd62ebef470826eec4bad690a1b6d94b 100644
(file)
--- a/
test/irv_test.rb
+++ b/
test/irv_test.rb
@@
-1,11
+1,16
@@
-#!/usr/bin/ruby
+#!/usr/bin/ruby
-Ilib
require 'test/unit'
require 'test/unit'
-require 'election_test_helper'
+require 'rubyvote/election'
+require 'rubyvote/irv'
class TestRunoffVote < Test::Unit::TestCase
class TestRunoffVote < Test::Unit::TestCase
- include ElectionTestHelper
+ def test_irv_empty
+ vote_array = Array.new
+ assert_nil InstantRunoffVote.new(vote_array).result.winners[0]
+ end
+
def test_irv
vote_array = Array.new
142.times {vote_array << "ABCD".split("")}
def test_irv
vote_array = Array.new
142.times {vote_array << "ABCD".split("")}
@@
-13,7
+18,7
@@
class TestRunoffVote < Test::Unit::TestCase
15.times {vote_array << "CDBA".split("")}
17.times {vote_array << "DCBA".split("")}
15.times {vote_array << "CDBA".split("")}
17.times {vote_array << "DCBA".split("")}
-
test_winner( "A", InstantRunoffVote.new(vote_array).result
)
+
assert_equal( "A", InstantRunoffVote.new(vote_array).result.winners[0]
)
end
def test_irv2
end
def test_irv2
@@
-23,7
+28,7
@@
class TestRunoffVote < Test::Unit::TestCase
15.times {vote_array << "CDBA".split("")}
17.times {vote_array << "DCBA".split("")}
15.times {vote_array << "CDBA".split("")}
17.times {vote_array << "DCBA".split("")}
-
test_winner( "D", InstantRunoffVote.new(vote_array).result
)
+
assert_equal( "D", InstantRunoffVote.new(vote_array).result.winners[0]
)
end
def test_irv3
end
def test_irv3
@@
-48,9
+53,14
@@
class TestRunoffVote < Test::Unit::TestCase
39.times {vote_array << "DCAB".split("")}
12.times {vote_array << "DCBA".split("")}
39.times {vote_array << "DCAB".split("")}
12.times {vote_array << "DCBA".split("")}
-
test_winner( "C", InstantRunoffVote.new(vote_array).result
)
+
assert_equal( "C", InstantRunoffVote.new(vote_array).result.winners[0]
)
end
end
-
+
+ def test_irv_logic_empty
+ vote_array = Array.new
+ assert_nil InstantRunoffLogicVote.new(vote_array).result.winners[0]
+ end
+
def test_irv_logic1
vote_array = Array.new
42.times {vote_array << "ABCD".split("")}
def test_irv_logic1
vote_array = Array.new
42.times {vote_array << "ABCD".split("")}
@@
-58,7
+68,7
@@
class TestRunoffVote < Test::Unit::TestCase
15.times {vote_array << "CDBA".split("")}
15.times {vote_array << "DCBA".split("")}
15.times {vote_array << "CDBA".split("")}
15.times {vote_array << "DCBA".split("")}
-
test_winner( "B", InstantRunoffLogicVote.new(vote_array).result
)
+
assert_equal( "B", InstantRunoffLogicVote.new(vote_array).result.winners[0]
)
end
###TODO: test all the other variants
end
end
###TODO: test all the other variants
end
Benjamin Mako Hill
||
Want to submit a patch?