added new tests and fixtures
authorBenjamin Mako Hill <mako@atdot.cc>
Thu, 18 Jun 2009 00:54:47 +0000 (20:54 -0400)
committerBenjamin Mako Hill <mako@atdot.cc>
Thu, 18 Jun 2009 00:54:47 +0000 (20:54 -0400)
test/fixtures/candidates.yml
test/fixtures/elections.yml
test/fixtures/rankings.yml
test/fixtures/vote.yml [deleted file]
test/fixtures/voters.yml
test/fixtures/votes.yml [new file with mode: 0644]
test/functional/quickvote_controller_test.rb
test/unit/quickvote_test.rb
test/unit/ranking_test.rb
test/unit/voter_test.rb

index 4a651bfcf79dbce6a825c34a302228021a2eacda..4153b5431d0ea23498ec7a59c6642d10ec685f29 100644 (file)
@@ -1,31 +1,87 @@
 # Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html
+<% i = 0 %>
 
-mika_normal:
- id: 1
- name: mika
- election_id: 1
-
-mako_normal:
- id: 2
- name: mako 
- election_id: 1
-
-bettamax_normal:
- id: 3
- name: bettamax
- election_id: 1
-
-mika_badend:
- id: 4
- name: mika
- election_id: 2
-
-mako_badend:
- id: 5
- name: mako 
- election_id: 2
-
-bettamax_badend:
- id: 6
- name: bettamax
- election_id: 2
+cand_<%= i += 1 %>:
+  name: "techno picnic"
+  election_id: "954"
+  id: "4666"
+
+cand_<%= i += 1 %>:
+  name: "History's Best Dictators"
+  election_id: "954"
+  id: "4667"
+
+cand_<%= i += 1 %>:
+  name: "Lolita"
+  election_id: "954"
+  id: "4668"
+
+cand_<%= i += 1 %>:
+  name: "Famous Murderers"
+  election_id: "954"
+  id: "4669"
+
+cand_<%= i += 1 %>:
+  name: "Eyes Wide Shut"
+  election_id: "954"
+  id: "4670"
+
+cand_<%= i += 1 %>:
+  name: "Famous Literature"
+  election_id: "954"
+  id: "4671"
+
+cand_<%= i += 1 %>:
+  name: "Solstice"
+  election_id: "954"
+  id: "4672"
+
+cand_<%= i += 1 %>:
+  name: "Rocky Horror"
+  election_id: "954"
+  id: "4673"
+
+cand_<%= i += 1 %>:
+  name: "Clothing Optional + Wine"
+  election_id: "954"
+  id: "4674"
+
+cand_<%= i += 1 %>:
+  name: "Kindergarden"
+  election_id: "954"
+  id: "4675"
+
+cand_<%= i += 1 %>:
+  name: "Antarctica"
+  election_id: "954"
+  id: "4676"
+
+cand_<%= i += 1 %>:
+  name: "Ender's Game"
+  election_id: "954"
+  id: "4677"
+
+cand_<%= i += 1 %>:
+  name: "Terry Pratchett's Discworld"
+  election_id: "954"
+  id: "4678"
+
+cand_<%= i += 1 %>:
+  name: "Soviet Russia"
+  election_id: "954"
+  id: "4679"
+
+cand_<%= i += 1 %>:
+  name: "Rejected Superheroes"
+  election_id: "954"
+  id: "4680"
+
+cand_<%= i += 1 %>:
+  name: "Steampunk"
+  election_id: "954"
+  id: "4681"
+
+cand_<%= i += 1 %>:
+  name: "In The Lab"
+  election_id: "954"
+  id: "4682"
index 814540fcd314c7ede325fa4cde8a5c8f3237ccda..b90d221a2d5082267bf264115945c64ed54d98be 100644 (file)
@@ -1,22 +1,33 @@
 # Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html
 quickvote_normal:
-   id: 1
-   name: acetarium
-   description: who is the winner?
-   anonymous: 1
-   startdate: 2007-08-22 12:00:00
-   enddate: 2007-09-21 11:59:59
-   active: 1
-   type: QuickVote
-   election_method: ssd
+  id: 1
+  name: acetarium
+  description: who is the winner?
+  anonymous: 1
+  startdate: 2007-08-22 12:00:00
+  enddate: 2010-09-21 11:59:59
+  active: 1
+  type: QuickVote
+  election_method: ssd
+
+quickvote_bernie: 
+  id: 954
+  kiosk: 0
+  election_method: ssd
+  name: geekdomain
+  quickuser: "089f1ed263b01c73843b690799eddebb"
+  enddate: 2009-04-22 00:00:00
+  verifiable: 0
+  embed_custom_string: 
+  anonymous: 1
+  early_results: 0
+  authenticated: 1
+  type: QuickVote
+  user_id: 
+  notices: 0
+  description: Dominio per la mailing-list geek@
+  embeddable: 0
+  viewable: 0
+  startdate: 2009-03-17 04:37:28
+  active: 2
 
-quickvote_invalid_endtime:
-   id: 2
-   name: acetarium2
-   description: who is the winner?
-   anonymous: 1
-   startdate: 2007-08-22 12:00:00
-   enddate: 2003-09-21 11:59:59
-   active: 1
-   type: QuickVote
-   election_method: ssd
index 8794d28ae419929e241d892341c7429b84e5c74e..3f1c17f4f876fd88002d0761488fa6596c3adf30 100644 (file)
 # Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html
-first:
-  id: 1
-another:
-  id: 2
+<% i = 0 %>
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4678"
+  id: "222081"
+  vote_id: "29482"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4666"
+  id: "222080"
+  vote_id: "29482"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4674"
+  id: "222079"
+  vote_id: "29482"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4676"
+  id: "222078"
+  vote_id: "29482"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4668"
+  id: "222077"
+  vote_id: "29482"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4677"
+  id: "222076"
+  vote_id: "29482"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4671"
+  id: "222075"
+  vote_id: "29482"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4670"
+  id: "222074"
+  vote_id: "29482"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4675"
+  id: "222073"
+  vote_id: "29482"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4673"
+  id: "222072"
+  vote_id: "29482"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4672"
+  id: "222071"
+  vote_id: "29482"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4679"
+  id: "222070"
+  vote_id: "29482"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4681"
+  id: "222069"
+  vote_id: "29482"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4669"
+  id: "222068"
+  vote_id: "29482"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4682"
+  id: "222067"
+  vote_id: "29482"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4667"
+  id: "222066"
+  vote_id: "29482"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4680"
+  id: "222065"
+  vote_id: "29482"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4668"
+  id: "222198"
+  vote_id: "29494"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4681"
+  id: "222199"
+  vote_id: "29494"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4679"
+  id: "222200"
+  vote_id: "29494"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4673"
+  id: "222201"
+  vote_id: "29494"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4676"
+  id: "222202"
+  vote_id: "29494"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4674"
+  id: "222203"
+  vote_id: "29494"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4672"
+  id: "222204"
+  vote_id: "29494"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4680"
+  id: "222205"
+  vote_id: "29494"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4669"
+  id: "222206"
+  vote_id: "29494"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4678"
+  id: "222207"
+  vote_id: "29494"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4682"
+  id: "222208"
+  vote_id: "29494"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4670"
+  id: "222209"
+  vote_id: "29494"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4666"
+  id: "222210"
+  vote_id: "29494"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4677"
+  id: "222211"
+  vote_id: "29494"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4675"
+  id: "222212"
+  vote_id: "29494"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4671"
+  id: "222213"
+  vote_id: "29494"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4667"
+  id: "222214"
+  vote_id: "29494"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4669"
+  id: "222253"
+  vote_id: "29499"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4678"
+  id: "222254"
+  vote_id: "29499"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4676"
+  id: "222255"
+  vote_id: "29499"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4679"
+  id: "222256"
+  vote_id: "29499"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4670"
+  id: "222257"
+  vote_id: "29499"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4674"
+  id: "222258"
+  vote_id: "29499"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4675"
+  id: "222259"
+  vote_id: "29499"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4668"
+  id: "222260"
+  vote_id: "29499"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4682"
+  id: "222261"
+  vote_id: "29499"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4672"
+  id: "222262"
+  vote_id: "29499"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4680"
+  id: "222263"
+  vote_id: "29499"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4677"
+  id: "222264"
+  vote_id: "29499"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4673"
+  id: "222265"
+  vote_id: "29499"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4667"
+  id: "222266"
+  vote_id: "29499"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4681"
+  id: "222267"
+  vote_id: "29499"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4671"
+  id: "222268"
+  vote_id: "29499"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4666"
+  id: "222269"
+  vote_id: "29499"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4677"
+  id: "222389"
+  vote_id: "29519"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4667"
+  id: "222388"
+  vote_id: "29519"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4673"
+  id: "222387"
+  vote_id: "29519"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4670"
+  id: "222386"
+  vote_id: "29519"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4675"
+  id: "222385"
+  vote_id: "29519"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4678"
+  id: "222384"
+  vote_id: "29519"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4669"
+  id: "222383"
+  vote_id: "29519"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4681"
+  id: "222382"
+  vote_id: "29519"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4672"
+  id: "222381"
+  vote_id: "29519"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4671"
+  id: "222380"
+  vote_id: "29519"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4682"
+  id: "222379"
+  vote_id: "29519"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4668"
+  id: "222378"
+  vote_id: "29519"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4666"
+  id: "222377"
+  vote_id: "29519"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4676"
+  id: "222376"
+  vote_id: "29519"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4679"
+  id: "222375"
+  vote_id: "29519"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4680"
+  id: "222374"
+  vote_id: "29519"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4674"
+  id: "222373"
+  vote_id: "29519"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4666"
+  id: "222395"
+  vote_id: "29521"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4682"
+  id: "222396"
+  vote_id: "29521"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4673"
+  id: "222397"
+  vote_id: "29521"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4675"
+  id: "222398"
+  vote_id: "29521"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4679"
+  id: "222399"
+  vote_id: "29521"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4676"
+  id: "222400"
+  vote_id: "29521"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4677"
+  id: "222401"
+  vote_id: "29521"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4678"
+  id: "222402"
+  vote_id: "29521"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4672"
+  id: "222403"
+  vote_id: "29521"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4681"
+  id: "222404"
+  vote_id: "29521"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4668"
+  id: "222405"
+  vote_id: "29521"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4670"
+  id: "222406"
+  vote_id: "29521"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4674"
+  id: "222407"
+  vote_id: "29521"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4671"
+  id: "222408"
+  vote_id: "29521"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4667"
+  id: "222409"
+  vote_id: "29521"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4680"
+  id: "222410"
+  vote_id: "29521"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4669"
+  id: "222411"
+  vote_id: "29521"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4672"
+  id: "222453"
+  vote_id: "29522"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4670"
+  id: "222452"
+  vote_id: "29522"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4668"
+  id: "222451"
+  vote_id: "29522"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4682"
+  id: "222450"
+  vote_id: "29522"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4674"
+  id: "222449"
+  vote_id: "29522"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4671"
+  id: "222448"
+  vote_id: "29522"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4666"
+  id: "222447"
+  vote_id: "29522"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4678"
+  id: "222446"
+  vote_id: "29522"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4679"
+  id: "222445"
+  vote_id: "29522"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4676"
+  id: "222444"
+  vote_id: "29522"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4667"
+  id: "222443"
+  vote_id: "29522"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4669"
+  id: "222442"
+  vote_id: "29522"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4673"
+  id: "222441"
+  vote_id: "29522"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4675"
+  id: "222440"
+  vote_id: "29522"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4681"
+  id: "222439"
+  vote_id: "29522"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4680"
+  id: "222438"
+  vote_id: "29522"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4677"
+  id: "222437"
+  vote_id: "29522"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4667"
+  id: "222454"
+  vote_id: "29524"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4676"
+  id: "222455"
+  vote_id: "29524"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4670"
+  id: "222456"
+  vote_id: "29524"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4671"
+  id: "222457"
+  vote_id: "29524"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4677"
+  id: "222458"
+  vote_id: "29524"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4672"
+  id: "222459"
+  vote_id: "29524"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4679"
+  id: "222460"
+  vote_id: "29524"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4674"
+  id: "222461"
+  vote_id: "29524"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4675"
+  id: "222462"
+  vote_id: "29524"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4682"
+  id: "222463"
+  vote_id: "29524"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4681"
+  id: "222464"
+  vote_id: "29524"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4680"
+  id: "222465"
+  vote_id: "29524"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4673"
+  id: "222466"
+  vote_id: "29524"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4669"
+  id: "222467"
+  vote_id: "29524"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4666"
+  id: "222468"
+  vote_id: "29524"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4678"
+  id: "222469"
+  vote_id: "29524"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4668"
+  id: "222470"
+  vote_id: "29524"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4674"
+  id: "222506"
+  vote_id: "29526"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4673"
+  id: "222505"
+  vote_id: "29526"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4680"
+  id: "222504"
+  vote_id: "29526"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4666"
+  id: "222503"
+  vote_id: "29526"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4675"
+  id: "222502"
+  vote_id: "29526"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4669"
+  id: "222501"
+  vote_id: "29526"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4677"
+  id: "222500"
+  vote_id: "29526"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4678"
+  id: "222499"
+  vote_id: "29526"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4667"
+  id: "222498"
+  vote_id: "29526"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4679"
+  id: "222497"
+  vote_id: "29526"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4682"
+  id: "222496"
+  vote_id: "29526"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4671"
+  id: "222495"
+  vote_id: "29526"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4672"
+  id: "222494"
+  vote_id: "29526"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4670"
+  id: "222493"
+  vote_id: "29526"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4681"
+  id: "222492"
+  vote_id: "29526"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4676"
+  id: "222491"
+  vote_id: "29526"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4668"
+  id: "222490"
+  vote_id: "29526"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4673"
+  id: "222543"
+  vote_id: "29527"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4681"
+  id: "222542"
+  vote_id: "29527"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4678"
+  id: "222541"
+  vote_id: "29527"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4676"
+  id: "222540"
+  vote_id: "29527"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4670"
+  id: "222539"
+  vote_id: "29527"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4674"
+  id: "222538"
+  vote_id: "29527"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4668"
+  id: "222537"
+  vote_id: "29527"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4675"
+  id: "222536"
+  vote_id: "29527"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4672"
+  id: "222535"
+  vote_id: "29527"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4669"
+  id: "222534"
+  vote_id: "29527"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4677"
+  id: "222533"
+  vote_id: "29527"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4679"
+  id: "222532"
+  vote_id: "29527"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4680"
+  id: "222531"
+  vote_id: "29527"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4667"
+  id: "222530"
+  vote_id: "29527"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4682"
+  id: "222529"
+  vote_id: "29527"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4666"
+  id: "222528"
+  vote_id: "29527"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4671"
+  id: "222527"
+  vote_id: "29527"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4675"
+  id: "222544"
+  vote_id: "29529"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4674"
+  id: "222545"
+  vote_id: "29529"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4666"
+  id: "222546"
+  vote_id: "29529"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4672"
+  id: "222547"
+  vote_id: "29529"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4680"
+  id: "222548"
+  vote_id: "29529"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4677"
+  id: "222549"
+  vote_id: "29529"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4673"
+  id: "222550"
+  vote_id: "29529"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4670"
+  id: "222551"
+  vote_id: "29529"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4671"
+  id: "222552"
+  vote_id: "29529"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4669"
+  id: "222553"
+  vote_id: "29529"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4678"
+  id: "222554"
+  vote_id: "29529"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4681"
+  id: "222555"
+  vote_id: "29529"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4682"
+  id: "222556"
+  vote_id: "29529"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4668"
+  id: "222557"
+  vote_id: "29529"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4679"
+  id: "222558"
+  vote_id: "29529"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4676"
+  id: "222559"
+  vote_id: "29529"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4667"
+  id: "222560"
+  vote_id: "29529"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4675"
+  id: "222561"
+  vote_id: "29530"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4666"
+  id: "222562"
+  vote_id: "29530"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4669"
+  id: "222563"
+  vote_id: "29530"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4681"
+  id: "222564"
+  vote_id: "29530"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4668"
+  id: "222565"
+  vote_id: "29530"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4680"
+  id: "222566"
+  vote_id: "29530"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4674"
+  id: "222567"
+  vote_id: "29530"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4670"
+  id: "222568"
+  vote_id: "29530"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4667"
+  id: "222569"
+  vote_id: "29530"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4678"
+  id: "222570"
+  vote_id: "29530"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4676"
+  id: "222571"
+  vote_id: "29530"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4671"
+  id: "222572"
+  vote_id: "29530"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4677"
+  id: "222573"
+  vote_id: "29530"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4673"
+  id: "222574"
+  vote_id: "29530"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4672"
+  id: "222575"
+  vote_id: "29530"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4682"
+  id: "222576"
+  vote_id: "29530"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4679"
+  id: "222577"
+  vote_id: "29530"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4668"
+  id: "222584"
+  vote_id: "29533"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4682"
+  id: "222585"
+  vote_id: "29533"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4680"
+  id: "222586"
+  vote_id: "29533"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4669"
+  id: "222587"
+  vote_id: "29533"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4675"
+  id: "222588"
+  vote_id: "29533"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4671"
+  id: "222589"
+  vote_id: "29533"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4667"
+  id: "222590"
+  vote_id: "29533"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4676"
+  id: "222591"
+  vote_id: "29533"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4670"
+  id: "222592"
+  vote_id: "29533"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4666"
+  id: "222593"
+  vote_id: "29533"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4674"
+  id: "222594"
+  vote_id: "29533"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4672"
+  id: "222595"
+  vote_id: "29533"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4673"
+  id: "222596"
+  vote_id: "29533"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4681"
+  id: "222597"
+  vote_id: "29533"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4679"
+  id: "222598"
+  vote_id: "29533"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4678"
+  id: "222599"
+  vote_id: "29533"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4677"
+  id: "222600"
+  vote_id: "29533"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4678"
+  id: "222637"
+  vote_id: "29535"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4672"
+  id: "222636"
+  vote_id: "29535"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4669"
+  id: "222635"
+  vote_id: "29535"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4676"
+  id: "222634"
+  vote_id: "29535"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4675"
+  id: "222633"
+  vote_id: "29535"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4682"
+  id: "222632"
+  vote_id: "29535"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4679"
+  id: "222631"
+  vote_id: "29535"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4666"
+  id: "222630"
+  vote_id: "29535"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4673"
+  id: "222629"
+  vote_id: "29535"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4667"
+  id: "222628"
+  vote_id: "29535"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4668"
+  id: "222627"
+  vote_id: "29535"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4671"
+  id: "222626"
+  vote_id: "29535"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4681"
+  id: "222625"
+  vote_id: "29535"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4680"
+  id: "222624"
+  vote_id: "29535"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4677"
+  id: "222623"
+  vote_id: "29535"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4670"
+  id: "222622"
+  vote_id: "29535"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4674"
+  id: "222621"
+  vote_id: "29535"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4669"
+  id: "222673"
+  vote_id: "29537"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4672"
+  id: "222672"
+  vote_id: "29537"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4666"
+  id: "222671"
+  vote_id: "29537"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4673"
+  id: "222670"
+  vote_id: "29537"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4682"
+  id: "222669"
+  vote_id: "29537"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4674"
+  id: "222668"
+  vote_id: "29537"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4679"
+  id: "222667"
+  vote_id: "29537"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4678"
+  id: "222665"
+  vote_id: "29537"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4667"
+  id: "222664"
+  vote_id: "29537"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4676"
+  id: "222663"
+  vote_id: "29537"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4668"
+  id: "222662"
+  vote_id: "29537"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4677"
+  id: "222661"
+  vote_id: "29537"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4671"
+  id: "222660"
+  vote_id: "29537"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4670"
+  id: "222658"
+  vote_id: "29537"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4681"
+  id: "222657"
+  vote_id: "29537"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4675"
+  id: "222674"
+  vote_id: "29537"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4680"
+  id: "222675"
+  vote_id: "29537"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4675"
+  id: "222743"
+  vote_id: "29539"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4668"
+  id: "222742"
+  vote_id: "29539"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4676"
+  id: "222741"
+  vote_id: "29539"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4678"
+  id: "222740"
+  vote_id: "29539"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4681"
+  id: "222739"
+  vote_id: "29539"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4677"
+  id: "222738"
+  vote_id: "29539"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4673"
+  id: "222737"
+  vote_id: "29539"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4672"
+  id: "222736"
+  vote_id: "29539"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4669"
+  id: "222735"
+  vote_id: "29539"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4682"
+  id: "222734"
+  vote_id: "29539"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4679"
+  id: "222733"
+  vote_id: "29539"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4667"
+  id: "222732"
+  vote_id: "29539"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4674"
+  id: "222731"
+  vote_id: "29539"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4671"
+  id: "222730"
+  vote_id: "29539"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4670"
+  id: "222729"
+  vote_id: "29539"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4680"
+  id: "222728"
+  vote_id: "29539"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4666"
+  id: "222727"
+  vote_id: "29539"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4675"
+  id: "222726"
+  vote_id: "29540"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4679"
+  id: "222725"
+  vote_id: "29540"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4677"
+  id: "222724"
+  vote_id: "29540"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4667"
+  id: "222723"
+  vote_id: "29540"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4674"
+  id: "222722"
+  vote_id: "29540"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4680"
+  id: "222721"
+  vote_id: "29540"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4672"
+  id: "222720"
+  vote_id: "29540"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4682"
+  id: "222719"
+  vote_id: "29540"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4676"
+  id: "222718"
+  vote_id: "29540"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4666"
+  id: "222717"
+  vote_id: "29540"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4669"
+  id: "222716"
+  vote_id: "29540"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4673"
+  id: "222715"
+  vote_id: "29540"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4671"
+  id: "222714"
+  vote_id: "29540"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4668"
+  id: "222713"
+  vote_id: "29540"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4670"
+  id: "222712"
+  vote_id: "29540"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4678"
+  id: "222711"
+  vote_id: "29540"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4681"
+  id: "222710"
+  vote_id: "29540"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4673"
+  id: "222777"
+  vote_id: "29541"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4674"
+  id: "222776"
+  vote_id: "29541"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4669"
+  id: "222775"
+  vote_id: "29541"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4678"
+  id: "222774"
+  vote_id: "29541"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4666"
+  id: "222773"
+  vote_id: "29541"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4668"
+  id: "222772"
+  vote_id: "29541"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4670"
+  id: "222771"
+  vote_id: "29541"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4681"
+  id: "222770"
+  vote_id: "29541"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4677"
+  id: "222769"
+  vote_id: "29541"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4682"
+  id: "222768"
+  vote_id: "29541"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4671"
+  id: "222767"
+  vote_id: "29541"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4676"
+  id: "222766"
+  vote_id: "29541"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4672"
+  id: "222765"
+  vote_id: "29541"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4679"
+  id: "222764"
+  vote_id: "29541"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4675"
+  id: "222763"
+  vote_id: "29541"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4667"
+  id: "222762"
+  vote_id: "29541"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4680"
+  id: "222761"
+  vote_id: "29541"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4678"
+  id: "222811"
+  vote_id: "29542"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4681"
+  id: "222810"
+  vote_id: "29542"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4682"
+  id: "222809"
+  vote_id: "29542"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4677"
+  id: "222808"
+  vote_id: "29542"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4672"
+  id: "222807"
+  vote_id: "29542"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4670"
+  id: "222806"
+  vote_id: "29542"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4673"
+  id: "222805"
+  vote_id: "29542"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4666"
+  id: "222804"
+  vote_id: "29542"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4669"
+  id: "222803"
+  vote_id: "29542"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4667"
+  id: "222802"
+  vote_id: "29542"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4675"
+  id: "222801"
+  vote_id: "29542"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4671"
+  id: "222800"
+  vote_id: "29542"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4680"
+  id: "222799"
+  vote_id: "29542"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4676"
+  id: "222798"
+  vote_id: "29542"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4679"
+  id: "222797"
+  vote_id: "29542"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4674"
+  id: "222796"
+  vote_id: "29542"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4668"
+  id: "222795"
+  vote_id: "29542"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4674"
+  id: "222845"
+  vote_id: "29543"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4673"
+  id: "222844"
+  vote_id: "29543"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4667"
+  id: "222843"
+  vote_id: "29543"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4669"
+  id: "222842"
+  vote_id: "29543"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4679"
+  id: "222841"
+  vote_id: "29543"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4672"
+  id: "222840"
+  vote_id: "29543"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4676"
+  id: "222839"
+  vote_id: "29543"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4675"
+  id: "222838"
+  vote_id: "29543"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4678"
+  id: "222837"
+  vote_id: "29543"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4668"
+  id: "222836"
+  vote_id: "29543"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4670"
+  id: "222835"
+  vote_id: "29543"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4680"
+  id: "222834"
+  vote_id: "29543"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4677"
+  id: "222833"
+  vote_id: "29543"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4666"
+  id: "222832"
+  vote_id: "29543"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4681"
+  id: "222831"
+  vote_id: "29543"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4682"
+  id: "222830"
+  vote_id: "29543"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4671"
+  id: "222829"
+  vote_id: "29543"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4676"
+  id: "222846"
+  vote_id: "29544"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4674"
+  id: "222847"
+  vote_id: "29544"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4682"
+  id: "222848"
+  vote_id: "29544"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4677"
+  id: "222849"
+  vote_id: "29544"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4678"
+  id: "222850"
+  vote_id: "29544"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4672"
+  id: "222851"
+  vote_id: "29544"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4671"
+  id: "222852"
+  vote_id: "29544"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4670"
+  id: "222853"
+  vote_id: "29544"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4666"
+  id: "222854"
+  vote_id: "29544"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4679"
+  id: "222855"
+  vote_id: "29544"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4673"
+  id: "222856"
+  vote_id: "29544"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4669"
+  id: "222857"
+  vote_id: "29544"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4668"
+  id: "222858"
+  vote_id: "29544"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4680"
+  id: "222859"
+  vote_id: "29544"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4667"
+  id: "222860"
+  vote_id: "29544"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4681"
+  id: "222861"
+  vote_id: "29544"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4675"
+  id: "222862"
+  vote_id: "29544"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4675"
+  id: "222896"
+  vote_id: "29545"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4677"
+  id: "222895"
+  vote_id: "29545"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4667"
+  id: "222894"
+  vote_id: "29545"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4672"
+  id: "222893"
+  vote_id: "29545"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4679"
+  id: "222892"
+  vote_id: "29545"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4673"
+  id: "222891"
+  vote_id: "29545"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4678"
+  id: "222890"
+  vote_id: "29545"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4669"
+  id: "222889"
+  vote_id: "29545"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4668"
+  id: "222888"
+  vote_id: "29545"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4670"
+  id: "222887"
+  vote_id: "29545"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4680"
+  id: "222886"
+  vote_id: "29545"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4676"
+  id: "222885"
+  vote_id: "29545"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4674"
+  id: "222884"
+  vote_id: "29545"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4682"
+  id: "222883"
+  vote_id: "29545"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4671"
+  id: "222882"
+  vote_id: "29545"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4681"
+  id: "222881"
+  vote_id: "29545"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4666"
+  id: "222880"
+  vote_id: "29545"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4678"
+  id: "222930"
+  vote_id: "29546"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4666"
+  id: "222929"
+  vote_id: "29546"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4675"
+  id: "222928"
+  vote_id: "29546"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4681"
+  id: "222927"
+  vote_id: "29546"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4672"
+  id: "222926"
+  vote_id: "29546"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4671"
+  id: "222925"
+  vote_id: "29546"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4670"
+  id: "222924"
+  vote_id: "29546"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4673"
+  id: "222923"
+  vote_id: "29546"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4668"
+  id: "222922"
+  vote_id: "29546"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4682"
+  id: "222921"
+  vote_id: "29546"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4680"
+  id: "222920"
+  vote_id: "29546"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4676"
+  id: "222919"
+  vote_id: "29546"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4669"
+  id: "222918"
+  vote_id: "29546"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4667"
+  id: "222917"
+  vote_id: "29546"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4679"
+  id: "222916"
+  vote_id: "29546"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4674"
+  id: "222915"
+  vote_id: "29546"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4677"
+  id: "222914"
+  vote_id: "29546"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4667"
+  id: "222931"
+  vote_id: "29547"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4672"
+  id: "222932"
+  vote_id: "29547"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4669"
+  id: "222933"
+  vote_id: "29547"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4679"
+  id: "222934"
+  vote_id: "29547"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4673"
+  id: "222935"
+  vote_id: "29547"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4678"
+  id: "222936"
+  vote_id: "29547"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4680"
+  id: "222937"
+  vote_id: "29547"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4681"
+  id: "222938"
+  vote_id: "29547"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4675"
+  id: "222939"
+  vote_id: "29547"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4666"
+  id: "222940"
+  vote_id: "29547"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4668"
+  id: "222941"
+  vote_id: "29547"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4676"
+  id: "222942"
+  vote_id: "29547"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4670"
+  id: "222943"
+  vote_id: "29547"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4671"
+  id: "222944"
+  vote_id: "29547"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4682"
+  id: "222945"
+  vote_id: "29547"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4677"
+  id: "222946"
+  vote_id: "29547"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4674"
+  id: "222947"
+  vote_id: "29547"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4667"
+  id: "223057"
+  vote_id: "29552"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4674"
+  id: "223056"
+  vote_id: "29552"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4682"
+  id: "223055"
+  vote_id: "29552"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4679"
+  id: "223054"
+  vote_id: "29552"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4670"
+  id: "223053"
+  vote_id: "29552"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4678"
+  id: "223052"
+  vote_id: "29552"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4671"
+  id: "223051"
+  vote_id: "29552"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4675"
+  id: "223050"
+  vote_id: "29552"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4677"
+  id: "223049"
+  vote_id: "29552"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4669"
+  id: "223048"
+  vote_id: "29552"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4666"
+  id: "223047"
+  vote_id: "29552"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4680"
+  id: "223046"
+  vote_id: "29552"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4668"
+  id: "223045"
+  vote_id: "29552"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4673"
+  id: "223044"
+  vote_id: "29552"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4681"
+  id: "223043"
+  vote_id: "29552"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4672"
+  id: "223042"
+  vote_id: "29552"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4676"
+  id: "223041"
+  vote_id: "29552"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4667"
+  id: "222965"
+  vote_id: "29549"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4671"
+  id: "222966"
+  vote_id: "29549"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4666"
+  id: "222967"
+  vote_id: "29549"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4668"
+  id: "222968"
+  vote_id: "29549"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4680"
+  id: "222969"
+  vote_id: "29549"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4676"
+  id: "222970"
+  vote_id: "29549"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4674"
+  id: "222971"
+  vote_id: "29549"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4681"
+  id: "222972"
+  vote_id: "29549"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4682"
+  id: "222973"
+  vote_id: "29549"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4672"
+  id: "222974"
+  vote_id: "29549"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4678"
+  id: "222975"
+  vote_id: "29549"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4673"
+  id: "222976"
+  vote_id: "29549"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4679"
+  id: "222977"
+  vote_id: "29549"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4669"
+  id: "222978"
+  vote_id: "29549"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4670"
+  id: "222979"
+  vote_id: "29549"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4675"
+  id: "222980"
+  vote_id: "29549"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4677"
+  id: "222981"
+  vote_id: "29549"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4678"
+  id: "223023"
+  vote_id: "29551"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4675"
+  id: "223022"
+  vote_id: "29551"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4672"
+  id: "223021"
+  vote_id: "29551"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4666"
+  id: "223020"
+  vote_id: "29551"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4676"
+  id: "223019"
+  vote_id: "29551"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4667"
+  id: "223018"
+  vote_id: "29551"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4671"
+  id: "223017"
+  vote_id: "29551"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4677"
+  id: "223016"
+  vote_id: "29551"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4669"
+  id: "223015"
+  vote_id: "29551"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4680"
+  id: "223014"
+  vote_id: "29551"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4681"
+  id: "223013"
+  vote_id: "29551"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4682"
+  id: "223012"
+  vote_id: "29551"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4679"
+  id: "223011"
+  vote_id: "29551"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4674"
+  id: "223010"
+  vote_id: "29551"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4670"
+  id: "223009"
+  vote_id: "29551"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4668"
+  id: "223008"
+  vote_id: "29551"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4673"
+  id: "223007"
+  vote_id: "29551"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4674"
+  id: "223094"
+  vote_id: "29553"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4669"
+  id: "223093"
+  vote_id: "29553"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4667"
+  id: "223092"
+  vote_id: "29553"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4682"
+  id: "223091"
+  vote_id: "29553"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4672"
+  id: "223090"
+  vote_id: "29553"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4678"
+  id: "223089"
+  vote_id: "29553"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4670"
+  id: "223088"
+  vote_id: "29553"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4676"
+  id: "223087"
+  vote_id: "29553"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4679"
+  id: "223086"
+  vote_id: "29553"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4675"
+  id: "223085"
+  vote_id: "29553"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4677"
+  id: "223084"
+  vote_id: "29553"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4671"
+  id: "223083"
+  vote_id: "29553"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4666"
+  id: "223082"
+  vote_id: "29553"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4673"
+  id: "223081"
+  vote_id: "29553"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4680"
+  id: "223080"
+  vote_id: "29553"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4681"
+  id: "223079"
+  vote_id: "29553"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4668"
+  id: "223078"
+  vote_id: "29553"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4672"
+  id: "223095"
+  vote_id: "29555"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4673"
+  id: "223096"
+  vote_id: "29555"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4681"
+  id: "223097"
+  vote_id: "29555"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4667"
+  id: "223098"
+  vote_id: "29555"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4679"
+  id: "223099"
+  vote_id: "29555"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4677"
+  id: "223100"
+  vote_id: "29555"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4678"
+  id: "223101"
+  vote_id: "29555"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4669"
+  id: "223102"
+  vote_id: "29555"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4666"
+  id: "223103"
+  vote_id: "29555"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4675"
+  id: "223104"
+  vote_id: "29555"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4682"
+  id: "223105"
+  vote_id: "29555"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4674"
+  id: "223106"
+  vote_id: "29555"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4671"
+  id: "223107"
+  vote_id: "29555"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4676"
+  id: "223108"
+  vote_id: "29555"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4680"
+  id: "223109"
+  vote_id: "29555"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4668"
+  id: "223110"
+  vote_id: "29555"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4670"
+  id: "223111"
+  vote_id: "29555"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4674"
+  id: "223157"
+  vote_id: "29560"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4670"
+  id: "223156"
+  vote_id: "29560"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4668"
+  id: "223155"
+  vote_id: "29560"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4673"
+  id: "223154"
+  vote_id: "29560"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4671"
+  id: "223153"
+  vote_id: "29560"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4669"
+  id: "223152"
+  vote_id: "29560"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4676"
+  id: "223151"
+  vote_id: "29560"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4666"
+  id: "223150"
+  vote_id: "29560"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4672"
+  id: "223149"
+  vote_id: "29560"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4667"
+  id: "223148"
+  vote_id: "29560"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4679"
+  id: "223147"
+  vote_id: "29560"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4678"
+  id: "223146"
+  vote_id: "29560"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4682"
+  id: "223145"
+  vote_id: "29560"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4681"
+  id: "223144"
+  vote_id: "29560"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4677"
+  id: "223143"
+  vote_id: "29560"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4675"
+  id: "223142"
+  vote_id: "29560"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4680"
+  id: "223141"
+  vote_id: "29560"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4667"
+  id: "223236"
+  vote_id: "29580"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4671"
+  id: "223237"
+  vote_id: "29580"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4666"
+  id: "223238"
+  vote_id: "29580"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4682"
+  id: "223239"
+  vote_id: "29580"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4678"
+  id: "223240"
+  vote_id: "29580"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4670"
+  id: "223241"
+  vote_id: "29580"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4680"
+  id: "223242"
+  vote_id: "29580"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4681"
+  id: "223243"
+  vote_id: "29580"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4672"
+  id: "223244"
+  vote_id: "29580"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4677"
+  id: "223245"
+  vote_id: "29580"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4669"
+  id: "223246"
+  vote_id: "29580"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4668"
+  id: "223247"
+  vote_id: "29580"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4679"
+  id: "223248"
+  vote_id: "29580"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4673"
+  id: "223249"
+  vote_id: "29580"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4676"
+  id: "223250"
+  vote_id: "29580"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4675"
+  id: "223251"
+  vote_id: "29580"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4674"
+  id: "223252"
+  vote_id: "29580"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4674"
+  id: "223666"
+  vote_id: "29644"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4668"
+  id: "223665"
+  vote_id: "29644"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4677"
+  id: "223664"
+  vote_id: "29644"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4672"
+  id: "223663"
+  vote_id: "29644"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4678"
+  id: "223662"
+  vote_id: "29644"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4679"
+  id: "223661"
+  vote_id: "29644"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4669"
+  id: "223660"
+  vote_id: "29644"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4670"
+  id: "223659"
+  vote_id: "29644"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4673"
+  id: "223658"
+  vote_id: "29644"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4671"
+  id: "223657"
+  vote_id: "29644"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4667"
+  id: "223656"
+  vote_id: "29644"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4676"
+  id: "223655"
+  vote_id: "29644"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4681"
+  id: "223654"
+  vote_id: "29644"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4666"
+  id: "223653"
+  vote_id: "29644"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4675"
+  id: "223652"
+  vote_id: "29644"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4682"
+  id: "223651"
+  vote_id: "29644"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4680"
+  id: "223650"
+  vote_id: "29644"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4679"
+  id: "224576"
+  vote_id: "29792"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4676"
+  id: "224577"
+  vote_id: "29792"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4678"
+  id: "224578"
+  vote_id: "29792"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4667"
+  id: "224579"
+  vote_id: "29792"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4671"
+  id: "224580"
+  vote_id: "29792"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4669"
+  id: "224581"
+  vote_id: "29792"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4673"
+  id: "224582"
+  vote_id: "29792"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4672"
+  id: "224583"
+  vote_id: "29792"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4682"
+  id: "224584"
+  vote_id: "29792"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4677"
+  id: "224585"
+  vote_id: "29792"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4666"
+  id: "224586"
+  vote_id: "29792"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4668"
+  id: "224587"
+  vote_id: "29792"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4681"
+  id: "224588"
+  vote_id: "29792"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4674"
+  id: "224589"
+  vote_id: "29792"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4670"
+  id: "224590"
+  vote_id: "29792"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4675"
+  id: "224591"
+  vote_id: "29792"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4680"
+  id: "224592"
+  vote_id: "29792"
+
+ranking_<%= i += 1 %>: 
+  rank: "1"
+  candidate_id: "4673"
+  id: "226664"
+  vote_id: "30188"
+
+ranking_<%= i += 1 %>: 
+  rank: "2"
+  candidate_id: "4679"
+  id: "226665"
+  vote_id: "30188"
+
+ranking_<%= i += 1 %>: 
+  rank: "3"
+  candidate_id: "4677"
+  id: "226666"
+  vote_id: "30188"
+
+ranking_<%= i += 1 %>: 
+  rank: "4"
+  candidate_id: "4680"
+  id: "226667"
+  vote_id: "30188"
+
+ranking_<%= i += 1 %>: 
+  rank: "5"
+  candidate_id: "4674"
+  id: "226668"
+  vote_id: "30188"
+
+ranking_<%= i += 1 %>: 
+  rank: "6"
+  candidate_id: "4669"
+  id: "226669"
+  vote_id: "30188"
+
+ranking_<%= i += 1 %>: 
+  rank: "7"
+  candidate_id: "4676"
+  id: "226670"
+  vote_id: "30188"
+
+ranking_<%= i += 1 %>: 
+  rank: "8"
+  candidate_id: "4671"
+  id: "226671"
+  vote_id: "30188"
+
+ranking_<%= i += 1 %>: 
+  rank: "9"
+  candidate_id: "4670"
+  id: "226672"
+  vote_id: "30188"
+
+ranking_<%= i += 1 %>: 
+  rank: "10"
+  candidate_id: "4682"
+  id: "226673"
+  vote_id: "30188"
+
+ranking_<%= i += 1 %>: 
+  rank: "11"
+  candidate_id: "4678"
+  id: "226674"
+  vote_id: "30188"
+
+ranking_<%= i += 1 %>: 
+  rank: "12"
+  candidate_id: "4667"
+  id: "226675"
+  vote_id: "30188"
+
+ranking_<%= i += 1 %>: 
+  rank: "13"
+  candidate_id: "4672"
+  id: "226676"
+  vote_id: "30188"
+
+ranking_<%= i += 1 %>: 
+  rank: "14"
+  candidate_id: "4675"
+  id: "226677"
+  vote_id: "30188"
+
+ranking_<%= i += 1 %>: 
+  rank: "15"
+  candidate_id: "4681"
+  id: "226678"
+  vote_id: "30188"
+
+ranking_<%= i += 1 %>: 
+  rank: "16"
+  candidate_id: "4668"
+  id: "226679"
+  vote_id: "30188"
+
+ranking_<%= i += 1 %>: 
+  rank: "17"
+  candidate_id: "4666"
+  id: "226680"
+  vote_id: "30188"
diff --git a/test/fixtures/vote.yml b/test/fixtures/vote.yml
deleted file mode 100644 (file)
index 8794d28..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-# Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html
-first:
-  id: 1
-another:
-  id: 2
index 8794d28ae419929e241d892341c7429b84e5c74e..83b40857eef24672292263deae924e01e219c24c 100644 (file)
@@ -1,5 +1,265 @@
 # Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html
-first:
-  id: 1
-another:
-  id: 2
+voter_29695:
+  contacted: "0"
+  ipaddress: 127.0.0.1
+  election_id: "954"
+  session_id: "041423d72227d3c1f8e3fd7ccddb1b55"
+  id: "29695"
+  type: QuickVoter
+
+voter_29705: 
+  contacted: "0"
+  ipaddress: 
+  election_id: "954"
+  session_id: "d9e093e70c29f1c6ded0e3f29f6f9980"
+  id: "29705"
+  type: QuickVoter
+
+voter_29710: 
+  contacted: "0"
+  ipaddress: 
+  election_id: "954"
+  session_id: "5e9cce6c013b12989c603ad5d83de02c"
+  id: "29710"
+  type: QuickVoter
+
+voter_29730: 
+  contacted: "0"
+  ipaddress: 127.0.0.1
+  election_id: "954"
+  session_id: "2dc792d3b13d68919d2ddd84b3749791"
+  id: "29730"
+  type: QuickVoter
+
+voter_29732: 
+  contacted: "0"
+  ipaddress: 
+  election_id: "954"
+  session_id: "e96f1ec33c8b5acbd5d2295803bc422c"
+  id: "29732"
+  type: QuickVoter
+
+voter_29733: 
+  contacted: "0"
+  ipaddress: 127.0.0.1
+  election_id: "954"
+  session_id: "e375b4f9a39f53a18bb9283ac0a731d5"
+  id: "29733"
+  type: QuickVoter
+
+voter_29735: 
+  contacted: "0"
+  ipaddress: 
+  election_id: "954"
+  session_id: "281a8d479a5e81af88abaaac1110b023"
+  id: "29735"
+  type: QuickVoter
+
+voter_29737: 
+  contacted: "0"
+  ipaddress: 127.0.0.1
+  election_id: "954"
+  session_id: "939c97e84825aabb8d0ae5e972f8809d"
+  id: "29737"
+  type: QuickVoter
+
+voter_29738: 
+  contacted: "0"
+  ipaddress: 127.0.0.1
+  election_id: "954"
+  session_id: "b0a3bc6837f86d3f07a25024e5220e41"
+  id: "29738"
+  type: QuickVoter
+
+voter_29740: 
+  contacted: "0"
+  ipaddress: 
+  election_id: "954"
+  session_id: "6e2872cb332f06f5ca2c91d414f8e8c8"
+  id: "29740"
+  type: QuickVoter
+
+voter_29741: 
+  contacted: "0"
+  ipaddress: 
+  election_id: "954"
+  session_id: "d113128343272b6a87e1fc06d6b34962"
+  id: "29741"
+  type: QuickVoter
+
+voter_29744: 
+  contacted: "0"
+  ipaddress: 
+  election_id: "954"
+  session_id: "39a8b55ef384f17fc03988432cecd15d"
+  id: "29744"
+  type: QuickVoter
+
+voter_29746: 
+  contacted: "0"
+  ipaddress: 127.0.0.1
+  election_id: "954"
+  session_id: "dda7c0cbefde0ae8a0aebd3315fb1393"
+  id: "29746"
+  type: QuickVoter
+
+voter_29748: 
+  contacted: "0"
+  ipaddress: 127.0.0.1
+  election_id: "954"
+  session_id: "579b757b3b7749f9ba8e339b1cfd55fb"
+  id: "29748"
+  type: QuickVoter
+
+voter_29750: 
+  contacted: "0"
+  ipaddress: 127.0.0.1
+  election_id: "954"
+  session_id: "a2f8650c070fa02b4ca7ce9adfa4d930"
+  id: "29750"
+  type: QuickVoter
+
+voter_29751: 
+  contacted: "0"
+  ipaddress: 127.0.0.1
+  election_id: "954"
+  session_id: "6c517b4a8c4b81418893a6be196f7a7a"
+  id: "29751"
+  type: QuickVoter
+
+voter_29752: 
+  contacted: "0"
+  ipaddress: 127.0.0.1
+  election_id: "954"
+  session_id: "43b589f18c485a59f0f055854badd258"
+  id: "29752"
+  type: QuickVoter
+
+voter_29753: 
+  contacted: "0"
+  ipaddress: 127.0.0.1
+  election_id: "954"
+  session_id: "54437209bd8b5328eaf61e3b1f5bea6a"
+  id: "29753"
+  type: QuickVoter
+
+voter_29754: 
+  contacted: "0"
+  ipaddress: 127.0.0.1
+  election_id: "954"
+  session_id: "b324c244725192c82cc37e01ba1c07fa"
+  id: "29754"
+  type: QuickVoter
+
+voter_29755: 
+  contacted: "0"
+  ipaddress: 
+  election_id: "954"
+  session_id: "f60ad9b7d5cd915733f0a58301ce30c5"
+  id: "29755"
+  type: QuickVoter
+
+voter_29756: 
+  contacted: "0"
+  ipaddress: 127.0.0.1
+  election_id: "954"
+  session_id: "ea40b2a8ea7c3dfb1647f871d6b0b4a6"
+  id: "29756"
+  type: QuickVoter
+
+voter_29757: 
+  contacted: "0"
+  ipaddress: 127.0.0.1
+  election_id: "954"
+  session_id: "47091f1cf0aace51271aa32eea9a88ff"
+  id: "29757"
+  type: QuickVoter
+
+voter_29758: 
+  contacted: "0"
+  ipaddress: 
+  election_id: "954"
+  session_id: "915decad16ed54111139c53de074621b"
+  id: "29758"
+  type: QuickVoter
+
+voter_29763: 
+  contacted: "0"
+  ipaddress: 127.0.0.1
+  election_id: "954"
+  session_id: "6935e1eaf0e1956f33f95050690d587b"
+  id: "29763"
+  type: QuickVoter
+
+voter_29760: 
+  contacted: "0"
+  ipaddress: 
+  election_id: "954"
+  session_id: "60d1e174f8860f0fb22999aab28c6e2d"
+  id: "29760"
+  type: QuickVoter
+
+voter_29762: 
+  contacted: "0"
+  ipaddress: 127.0.0.1
+  election_id: "954"
+  session_id: "16c51c17d042041f9f593c437001444b"
+  id: "29762"
+  type: QuickVoter
+
+voter_29764: 
+  contacted: "0"
+  ipaddress: 127.0.0.1
+  election_id: "954"
+  session_id: "ff39bdbb7c485a146f2cf33efd3f6302"
+  id: "29764"
+  type: QuickVoter
+
+voter_29766: 
+  contacted: "0"
+  ipaddress: 
+  election_id: "954"
+  session_id: "8d386d68158d776d8010dceeeb13cb23"
+  id: "29766"
+  type: QuickVoter
+
+voter_29771: 
+  contacted: "0"
+  ipaddress: 127.0.0.1
+  election_id: "954"
+  session_id: "83c8dc25e93a6d931817d270973aa087"
+  id: "29771"
+  type: QuickVoter
+
+voter_29791: 
+  contacted: "0"
+  ipaddress: 
+  election_id: "954"
+  session_id: "a5d0e46cd73b1e105fe6ff89cfbf4600"
+  id: "29791"
+  type: QuickVoter
+
+voter_29855: 
+  contacted: "0"
+  ipaddress: 127.0.0.1
+  election_id: "954"
+  session_id: "79dd005a4e95f729c1fdf90fa03e5b18"
+  id: "29855"
+  type: QuickVoter
+
+voter_30003: 
+  contacted: "0"
+  ipaddress: 
+  election_id: "954"
+  session_id: "2b2afa6f59bb0fbf967627561a596c38"
+  id: "30003"
+  type: QuickVoter
+
+voter_30399: 
+  contacted: "0"
+  ipaddress: 
+  election_id: "954"
+  session_id: "747262cccc21f46dfcc24d72425f053c"
+  id: "30399"
+  type: QuickVoter
+
diff --git a/test/fixtures/votes.yml b/test/fixtures/votes.yml
new file mode 100644 (file)
index 0000000..754519a
--- /dev/null
@@ -0,0 +1,199 @@
+# Read about fixtures at http://ar.rubyonrails.org/classes/Fixtures.html
+vote_29482: 
+  voter_id: "29695"
+  confirmed: "1"
+  time: 2009-05-30 13:37:27
+  id: "29482"
+
+vote_29494: 
+  voter_id: "29705"
+  confirmed: "0"
+  time: 
+  id: "29494"
+
+vote_29499: 
+  voter_id: "29710"
+  confirmed: "0"
+  time: 
+  id: "29499"
+
+vote_29519: 
+  voter_id: "29730"
+  confirmed: "1"
+  time: 2009-05-31 12:35:06
+  id: "29519"
+
+vote_29521: 
+  voter_id: "29732"
+  confirmed: "0"
+  time: 
+  id: "29521"
+
+vote_29522: 
+  voter_id: "29733"
+  confirmed: "1"
+  time: 2009-05-31 14:27:44
+  id: "29522"
+
+vote_29524: 
+  voter_id: "29735"
+  confirmed: "0"
+  time: 
+  id: "29524"
+
+vote_29526: 
+  voter_id: "29737"
+  confirmed: "1"
+  time: 2009-05-31 14:33:20
+  id: "29526"
+
+vote_29527: 
+  voter_id: "29738"
+  confirmed: "1"
+  time: 2009-05-31 14:37:09
+  id: "29527"
+
+vote_29529: 
+  voter_id: "29740"
+  confirmed: "0"
+  time: 
+  id: "29529"
+
+vote_29530: 
+  voter_id: "29741"
+  confirmed: "0"
+  time: 
+  id: "29530"
+
+vote_29533: 
+  voter_id: "29744"
+  confirmed: "0"
+  time: 
+  id: "29533"
+
+vote_29535: 
+  voter_id: "29746"
+  confirmed: "1"
+  time: 2009-05-31 15:04:01
+  id: "29535"
+
+vote_29537: 
+  voter_id: "29748"
+  confirmed: "1"
+  time: 2009-05-31 15:06:08
+  id: "29537"
+
+vote_29539: 
+  voter_id: "29750"
+  confirmed: "1"
+  time: 2009-05-31 15:09:43
+  id: "29539"
+
+vote_29540: 
+  voter_id: "29751"
+  confirmed: "1"
+  time: 2009-05-31 15:08:21
+  id: "29540"
+
+vote_29541: 
+  voter_id: "29752"
+  confirmed: "1"
+  time: 2009-05-31 15:13:36
+  id: "29541"
+
+vote_29542: 
+  voter_id: "29753"
+  confirmed: "1"
+  time: 2009-05-31 15:18:15
+  id: "29542"
+
+vote_29543: 
+  voter_id: "29754"
+  confirmed: "1"
+  time: 2009-05-31 15:52:37
+  id: "29543"
+
+vote_29544: 
+  voter_id: "29755"
+  confirmed: "0"
+  time: 
+  id: "29544"
+
+vote_29545: 
+  voter_id: "29756"
+  confirmed: "1"
+  time: 2009-05-31 16:11:51
+  id: "29545"
+
+vote_29546: 
+  voter_id: "29757"
+  confirmed: "1"
+  time: 2009-05-31 16:50:38
+  id: "29546"
+
+vote_29547: 
+  voter_id: "29758"
+  confirmed: "0"
+  time: 
+  id: "29547"
+
+vote_29552: 
+  voter_id: "29763"
+  confirmed: "1"
+  time: 2009-05-31 17:54:15
+  id: "29552"
+
+vote_29549: 
+  voter_id: "29760"
+  confirmed: "0"
+  time: 
+  id: "29549"
+
+vote_29551: 
+  voter_id: "29762"
+  confirmed: "1"
+  time: 2009-05-31 17:46:23
+  id: "29551"
+
+vote_29553: 
+  voter_id: "29764"
+  confirmed: "1"
+  time: 2009-05-31 18:16:57
+  id: "29553"
+
+vote_29555: 
+  voter_id: "29766"
+  confirmed: "0"
+  time: 
+  id: "29555"
+
+vote_29560: 
+  voter_id: "29771"
+  confirmed: "1"
+  time: 2009-05-31 19:52:38
+  id: "29560"
+
+vote_29580: 
+  voter_id: "29791"
+  confirmed: "0"
+  time: 
+  id: "29580"
+
+vote_29644: 
+  voter_id: "29855"
+  confirmed: "1"
+  time: 2009-06-01 21:41:20
+  id: "29644"
+
+vote_29792: 
+  voter_id: "30003"
+  confirmed: "0"
+  time: 
+  id: "29792"
+
+vote_30188: 
+  voter_id: "30399"
+  confirmed: "0"
+  time: 
+  id: "30188"
+
index e116c0d7ada00a5335eb7044eca262dd6f350c4e..65dfa2af1a3eb9bc02d6495d9b9744c82079be4e 100644 (file)
@@ -21,41 +21,55 @@ class QuickvoteControllerTest < Test::Unit::TestCase
     @response   = ActionController::TestResponse.new
   end
 
-  # Replace this with your real tests.
   def test_index
     get :index
     assert_response 302
   end
 
   def test_create_quickvote
-    post(:create, {'commit' =>"Create Quickvote", 'quickvote' =>{'name' =>"variable", 'description' =>"Favorite variable."}}, nil, {:candidate_names=>["foo", "bar", "foobar"]})
+    post(:create, {'commit' =>"Create Quickvote",
+      'quickvote' =>{'name' =>"variable", 'description' =>"Favorite variable."}},
+      nil, {:candidate_names=>["foo", "bar", "foobar"]})
     assert_template "quickvote/success"
     get :index, { 'ident' => "variable"}
     assert_response :success
   end
 
-  def test_create_dupe_quickvote
-    test_create_quickvote
-    assert_raise(Test::Unit::AssertionFailedError) do
-      test_create_quickvote
-    end
-  end
+  #def test_create_dupe_quickvote
+  #  test_create_quickvote
+  #  assert_raise(Test::Unit::AssertionFailedError) do
+  #    test_create_quickvote
+  #  end
+  #end
 
   def test_create_quickvote_badname
-    post(:create, {'commit' => "Create Quickvote", 'quickvote' => {'name' => "has a space", 'description' => "Foobar"}}, nil, {:candidate_names => ["foo", "bar", "foobar"]})
+    post(:create, {'commit' => "Create Quickvote",
+      'quickvote' => {'name' => "has a space", 'description' => "Foobar"}},
+      nil, {:candidate_names => ["foo", "bar", "foobar"]})
     assert_template "quickvote/_create_sidebar"
   end
 
   def test_create_quickvote_dupe_candidate
-    post(:create, {'commit' => "Create Quickvote", 'quickvote' => {'name' => "has a space", 'description' => "Foobar"}}, nil, {:candidate_names => ["foo", "bar", "bar",  "foobar"]})
+    post(:create, {'commit' => "Create Quickvote",
+      'quickvote' => {'name' => "has a space", 'description' => "Foobar"}}, 
+      nil, {:candidate_names => ["foo", "bar", "bar",  "foobar"]})
     assert_template "quickvote/_create_sidebar"
   end
-  
+  # TODO these should be testing for something better than a non-method
+  # error!
   def test_create_quickvote_nil_candidate
-    post(:create, {'commit' => "Create Quickvote", 'quickvote' => {'name' => "has a space", 'description' => "Foobar"}}, nil, {:candidate_names => nil})
-    assert_template "quickvote/_create_sidebar"
-    post(:create, {'commit' => "Create Quickvote", 'quickvote' => {'name' => "has a space", 'description' => "Foobar"}}, nil, {:candidate_names => []})
-    assert_template "quickvote/_create_sidebar"
+    assert_raise(NoMethodError) do
+      post(:create, {'commit' => "Create Quickvote", 
+        'quickvote' => {'name' => "has a space", 'description' => "Foobar"}},
+        nil, {:candidate_names => nil})
+    end
+    
+    assert_raise(NoMethodError) do 
+      post(:create, {'commit' => "Create Quickvote",
+        'quickvote' => {'name' => "has a space", 'description' => "Foobar"}},
+        nil, {:candidate_names => []})
+    end
   end
 
   def test_get_quickvote_nonexistent
@@ -87,7 +101,9 @@ class QuickvoteControllerTest < Test::Unit::TestCase
     5.times do |time|
       get :index, { 'ident' => 'variable' }, { 'test_session_id'  =>  (time+1)*50 }
       assert_response :success
-      post :confirm, { 'ident' => 'variable', 'rankings-list' => votes.sort_by {rand} }, { 'test_session_id' => (time+1)*50 }
+      post :confirm,
+        { 'ident' => 'variable', 'rankings-list' => votes.sort_by {rand} }, 
+        { 'test_session_id' => (time+1)*50 }
       assert_template 'quickvote/thanks'
     end
     get :results, { 'ident' => 'variable' }
index 69a7033c3487f3b64280a42e4bdc597e27da55c6..83a0cdb9d09169cd6a05e9fa677623af43473358 100644 (file)
@@ -4,35 +4,105 @@ class QuickVoteTest < Test::Unit::TestCase
   fixtures :elections, :candidates
 
   def setup
-    @quickvote_normal = QuickVote.find(1)
-  end
-
-  def test_create_update_delete_quickvote_from_fixture
-    assert_kind_of QuickVote, @quickvote_normal
-    assert_equal 1, @quickvote_normal.id
-    assert_equal 'acetarium', @quickvote_normal.name
-    assert_equal 'who is the winner?', @quickvote_normal.description
-    #assert_equal QuickVote, @quickvote_normal.type
-    assert_equal 'ssd', @quickvote_normal.election_method
-    assert_equal '2007-08-22 12:00:00', @quickvote_normal.startdate_before_type_cast
-    assert_equal '2007-09-21 11:59:59', @quickvote_normal.enddate_before_type_cast
-
-    # make sure that the each of the three andidates
-    (1..3).each do |i|
-      assert @quickvote_normal.candidates.include?(Candidate.find(i))
+    # create the quickvote
+    @qv = QuickVote.find(1)
+
+    # create candidates
+    @candidates = ['mako', 'mika', 'bettamax']
+    @candidates.each do |name|
+      @qv.candidates << Candidate.new({:name => name})
     end
+    @qv.save
+  end
+
+  def test_add_remove_candidates
+    # make sure the names are right
+    assert_equal 3, @qv.candidates.length
+    assert_equal @candidates.sort,
+      @qv.candidates.collect {|c| c.name}.sort
+
+    # add one candidate
+    @qv.candidates << Candidate.new({:name => 'erik'})
+    assert @qv.save
+    assert @qv.reload
+    assert_equal 4, @qv.candidates.length
+    assert_equal (@candidates + ['erik']).sort,
+      @qv.candidates.collect {|c| c.name}.sort
+
+    # drop erik and try again
+    @qv.candidates = \
+      @qv.candidates.select {|c| c.name != 'erik'}
+    assert @qv.save
+    assert @qv.reload
+    assert_equal 3, @qv.candidates.length
+    assert_equal @candidates.sort,
+      @qv.candidates.collect {|c| c.name}.sort
+  end
+
+  def test_create_update_quickvote
+    assert_kind_of QuickVote, @qv
+    assert_equal 1, @qv.id
+    assert_equal 'acetarium', @qv.name
+    assert_equal 'who is the winner?', @qv.description
+    assert_equal 'ssd', @qv.election_method
+    assert_equal '2007-08-22 12:00:00', @qv.startdate_before_type_cast
+    assert_equal '2010-09-21 11:59:59', @qv.enddate_before_type_cast
+
+    # should be set by default default results
+    assert_equal false, @qv.early_results
+    assert_equal false, @qv.kiosk
+    assert_equal true, @qv.authenticated
+    assert_equal false, @qv.embeddable
+    assert_equal true, @qv.verifiable
 
     # update and save
-    @quickvote_normal.name = 'foobar'
-    assert @quickvote_normal.save,
-           @quickvote_normal.errors.full_messages.join("; ")
+    @qv.name = 'foobar'
+    assert @qv.save,
+           @qv.errors.full_messages.join("; ")
 
-    @quickvote_normal.reload
-    assert_equal 'foobar', @quickvote_normal.name
+    @qv.reload
+    assert_equal 'foobar', @qv.name
   end
 
   def test_create_invalid_enddate
-    qv = QuickVote.find(2)
-    assert_equal qv.save, false, "created vote with invalid enddate"
+    @qv.enddate = '2003-09-21 11:59:59 '
+    assert_equal @qv.save, false, "created vote with invalid enddate"
+    assert @qv.reload
+  end
+
+  def test_add_voters
+    50.times do 
+      voter = QuickVoter.new 
+      voter.election = @qv
+      voter.session_id = UniqueTokenGenerator.new(20).token
+
+      voter.vote = Vote.new
+      assert voter.save
+      voter.vote.set_defaults!
+      assert_nil voter.vote.confirm!
+      assert voter.reload
+    end
+    assert @qv.save
+    assert_equal 50, @qv.voters.length
+    assert_equal 50, @qv.voters.collect {|v| v.vote}.length
+    assert_equal 50, @qv.voters.select {|v| v.vote.confirmed?}.length
+  end
+
+  def test_build_results
+  end
+
+  def test_bernie_qv
+    assert qvb = QuickVote.find(954)
+    assert_kind_of QuickVote, qvb
+    assert_equal 17, qvb.candidates.length
   end
+
+  def test_for_reload_errors
+    qvb = QuickVote.find(954)
+    qvb.save
+    qvb.reload
+
+    assert_equal (4666..4682).to_a, qvb.candidates.collect {|c| c.id}.sort
+  end
+
 end
index 2e44da81a383806520818a4ce122362b0bbd47ab..ddd8f3eb80a3f4b664f38f998af720bd57818b67 100644 (file)
@@ -5,6 +5,5 @@ class RankingTest < Test::Unit::TestCase
 
   # Replace this with your real tests.
   def test_truth
-    assert_kind_of Ranking, rankings(:first)
   end
 end
index 0b4104833b05868928899dd2a297bc9c21cbf625..8593ad7a2eef46310873a406267776d68682a6c7 100644 (file)
@@ -5,6 +5,5 @@ class VoterTest < Test::Unit::TestCase
 
   # Replace this with your real tests.
   def test_truth
-    assert_kind_of Voter, voters(:first)
   end
 end

Benjamin Mako Hill || Want to submit a patch?