washoe_polls 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,44 @@
1
+ require 'helper'
2
+
3
+ # The projects method
4
+ describe WashoePolls, ".lookup" do
5
+ before do
6
+ stub_request(:post, "http://www.co.washoe.nv.us/voters/regsearch.php").
7
+ with(:body => {"submit"=>"on", "color"=>"blue", "text_version"=>"", "Last"=>"Lucchesi", "Birth"=>"8/20/1974"},
8
+ :headers => {'Accept'=>'application/html', 'Content-Type'=>'application/x-www-form-urlencoded', 'User-Agent'=>'Ruby'}).
9
+ to_return(:status => 200, :body => fixture('lookup.html'), :headers => {'Content-Type' => 'text/html; charset=UTF-8'})
10
+ end
11
+
12
+ it "should request the correct resource" do
13
+ WashoePolls.lookup("Lucchesi","8/20/1974")
14
+ a_request(:post, 'http://www.co.washoe.nv.us/voters/regsearch.php').
15
+ should have_been_made
16
+ end
17
+
18
+ it "should return the correct results" do
19
+ match = WashoePolls.lookup("Lucchesi","8/20/1974")
20
+ match.should == 166973
21
+ end
22
+ end
23
+
24
+ describe WashoePolls, ".fetch" do
25
+ before do
26
+ @voter_id = 166973
27
+ stub_request(:get, "http://www.co.washoe.nv.us/voters/regsearch.php~details=166973").
28
+ with(:headers => {'Accept'=>'application/html', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'User-Agent'=>'Ruby'}).
29
+ to_return(:status => 200, :body => fixture('fetch.html'), :headers => {'Content-Type' => 'text/html; charset=UTF-8'})
30
+ end
31
+
32
+ it "should request the correct resource" do
33
+ WashoePolls.fetch(166973)
34
+ a_request(:get, 'http://www.co.washoe.nv.us/voters/regsearch.php~details=166973').
35
+ should have_been_made
36
+ end
37
+
38
+ it "should return the correct results" do
39
+ data = WashoePolls.fetch(166973)
40
+ data.should be_an Hash
41
+ data[:name].should == "LUCCHESI, BENJAMIN JAMES"
42
+ puts data
43
+ end
44
+ end
@@ -0,0 +1,30 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "washoe_polls/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "washoe_polls"
7
+ s.version = WashoePolls::VERSION
8
+ s.platform = Gem::Platform::RUBY
9
+ s.authors = ["Javier Muniz"]
10
+ s.email = "javier@granicus.com"
11
+ s.summary = "Washoe Polling Place Gem"
12
+ s.homepage = "http://github.com/Granicus/washoe_polls"
13
+ s.description = "Gem for finding polling places in Washoe County, NV"
14
+
15
+ s.rubyforge_project = "washoe_polls"
16
+
17
+ s.files = `git ls-files`.split("\n")
18
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
19
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
20
+ s.require_paths = ["lib"]
21
+
22
+ s.add_development_dependency('rspec', '~> 2.6')
23
+ s.add_development_dependency('webmock', '~> 1.7')
24
+ s.add_development_dependency('hashie', '~> 1.0.0')
25
+ s.add_development_dependency('nokogiri', '~> 1.5.0')
26
+
27
+ s.add_dependency('faraday', '~> 0.7.5')
28
+ s.add_dependency('hashie', '~> 1.0.0')
29
+ s.add_dependency('nokogiri', '~> 1.5.0')
30
+ end
metadata ADDED
@@ -0,0 +1,140 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: washoe_polls
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Javier Muniz
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2011-10-16 00:00:00.000000000Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rspec
16
+ requirement: &2165487140 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: '2.6'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: *2165487140
25
+ - !ruby/object:Gem::Dependency
26
+ name: webmock
27
+ requirement: &2165486540 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ~>
31
+ - !ruby/object:Gem::Version
32
+ version: '1.7'
33
+ type: :development
34
+ prerelease: false
35
+ version_requirements: *2165486540
36
+ - !ruby/object:Gem::Dependency
37
+ name: hashie
38
+ requirement: &2165485980 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ~>
42
+ - !ruby/object:Gem::Version
43
+ version: 1.0.0
44
+ type: :development
45
+ prerelease: false
46
+ version_requirements: *2165485980
47
+ - !ruby/object:Gem::Dependency
48
+ name: nokogiri
49
+ requirement: &2165485420 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: 1.5.0
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: *2165485420
58
+ - !ruby/object:Gem::Dependency
59
+ name: faraday
60
+ requirement: &2165484920 !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ~>
64
+ - !ruby/object:Gem::Version
65
+ version: 0.7.5
66
+ type: :runtime
67
+ prerelease: false
68
+ version_requirements: *2165484920
69
+ - !ruby/object:Gem::Dependency
70
+ name: hashie
71
+ requirement: &2165484400 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ~>
75
+ - !ruby/object:Gem::Version
76
+ version: 1.0.0
77
+ type: :runtime
78
+ prerelease: false
79
+ version_requirements: *2165484400
80
+ - !ruby/object:Gem::Dependency
81
+ name: nokogiri
82
+ requirement: &2165483880 !ruby/object:Gem::Requirement
83
+ none: false
84
+ requirements:
85
+ - - ~>
86
+ - !ruby/object:Gem::Version
87
+ version: 1.5.0
88
+ type: :runtime
89
+ prerelease: false
90
+ version_requirements: *2165483880
91
+ description: Gem for finding polling places in Washoe County, NV
92
+ email: javier@granicus.com
93
+ executables: []
94
+ extensions: []
95
+ extra_rdoc_files: []
96
+ files:
97
+ - .gitignore
98
+ - .rspec
99
+ - Changelog
100
+ - Gemfile
101
+ - Gemfile.lock
102
+ - LICENSE
103
+ - README.rdoc
104
+ - lib/washoe_polls.rb
105
+ - lib/washoe_polls/client.rb
106
+ - lib/washoe_polls/version.rb
107
+ - spec/fixtures/fetch.html
108
+ - spec/fixtures/lookup.html
109
+ - spec/helper.rb
110
+ - spec/washoe_polls_spec.rb
111
+ - washoe_polls.gemspec
112
+ homepage: http://github.com/Granicus/washoe_polls
113
+ licenses: []
114
+ post_install_message:
115
+ rdoc_options: []
116
+ require_paths:
117
+ - lib
118
+ required_ruby_version: !ruby/object:Gem::Requirement
119
+ none: false
120
+ requirements:
121
+ - - ! '>='
122
+ - !ruby/object:Gem::Version
123
+ version: '0'
124
+ required_rubygems_version: !ruby/object:Gem::Requirement
125
+ none: false
126
+ requirements:
127
+ - - ! '>='
128
+ - !ruby/object:Gem::Version
129
+ version: '0'
130
+ requirements: []
131
+ rubyforge_project: washoe_polls
132
+ rubygems_version: 1.8.5
133
+ signing_key:
134
+ specification_version: 3
135
+ summary: Washoe Polling Place Gem
136
+ test_files:
137
+ - spec/fixtures/fetch.html
138
+ - spec/fixtures/lookup.html
139
+ - spec/helper.rb
140
+ - spec/washoe_polls_spec.rb