microsoft_open_data 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,48 @@
1
+ $:.unshift File.expand_path('..', __FILE__)
2
+ $:.unshift File.expand_path('../../lib', __FILE__)
3
+ require 'simplecov'
4
+ SimpleCov.start
5
+ require 'microsoft_open_data'
6
+ require 'rspec'
7
+
8
+ require 'webmock/rspec'
9
+
10
+ def a_delete(path)
11
+ a_request(:delete, 'http://ogdi.cloudapp.net/v1/' + path)
12
+ end
13
+
14
+ def a_get(path)
15
+ a_request(:get, 'http://ogdi.cloudapp.net/v1/' + path)
16
+ end
17
+
18
+ def a_post(path)
19
+ a_request(:post, 'http://ogdi.cloudapp.net/v1/' + path)
20
+ end
21
+
22
+ def a_put(path)
23
+ a_request(:put, 'http://ogdi.cloudapp.net/v1/' + path)
24
+ end
25
+
26
+ def stub_delete(path)
27
+ stub_request(:delete, 'http://ogdi.cloudapp.net/v1/' + path)
28
+ end
29
+
30
+ def stub_get(path)
31
+ stub_request(:get, 'http://ogdi.cloudapp.net/v1/' + path)
32
+ end
33
+
34
+ def stub_post(path)
35
+ stub_request(:post, 'http://ogdi.cloudapp.net/v1/' + path)
36
+ end
37
+
38
+ def stub_put(path)
39
+ stub_request(:put, 'http://ogdi.cloudapp.net/v1/' + path)
40
+ end
41
+
42
+ def fixture_path
43
+ File.expand_path('../fixtures', __FILE__)
44
+ end
45
+
46
+ def fixture(file)
47
+ File.new(fixture_path + '/' + file)
48
+ end
@@ -0,0 +1,43 @@
1
+ require 'helper'
2
+
3
+ describe MicrosoftOpenData::Client::Api do
4
+
5
+ before do
6
+ @client = MicrosoftOpenData::Client.new
7
+ end
8
+
9
+ describe ".catalog" do
10
+ before do
11
+ stub_get("").
12
+ to_return(:status => 200, :body => fixture("container.xml"))
13
+ stub_get("dc").
14
+ to_return(:status => 200, :body => fixture("dc_services.xml"))
15
+ end
16
+
17
+ it "should return the correct item" do
18
+ test = @client.catalog()
19
+ a_get("").should have_been_made
20
+ test.service.workspace.collection[0].href.should == "bls"
21
+ end
22
+
23
+ it "should return the correct item" do
24
+ test = @client.catalog('dc')
25
+ a_get("dc").should have_been_made
26
+ test.service.workspace.collection[1].href.should == "BankLocations"
27
+ end
28
+ end
29
+
30
+ describe ".query" do
31
+ before do
32
+ stub_get("dc/CrimeIncidents").
33
+ to_return(:status => 200, :body => fixture("query.xml"))
34
+ end
35
+
36
+ it "should return the correct item" do
37
+ test = @client.query('dc', 'CrimeIncidents')
38
+ a_get("dc/CrimeIncidents").should have_been_made
39
+ test.feed.entry[0].content.properties.city.should == 'WASHINGTON'
40
+ end
41
+ end
42
+
43
+ end
@@ -0,0 +1,10 @@
1
+ # -*- encoding: utf-8 -*-
2
+ require 'helper'
3
+
4
+ describe MicrosoftOpenData do
5
+ describe ".client" do
6
+ it "should be a MicrosoftOpenData::Client" do
7
+ MicrosoftOpenData.client.should be_a MicrosoftOpenData::Client
8
+ end
9
+ end
10
+ end
metadata ADDED
@@ -0,0 +1,215 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: microsoft_open_data
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - blakeshall
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2011-07-26 00:00:00.000000000Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: ZenTest
16
+ requirement: &2156521020 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: '4.5'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: *2156521020
25
+ - !ruby/object:Gem::Dependency
26
+ name: maruku
27
+ requirement: &2156520400 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ~>
31
+ - !ruby/object:Gem::Version
32
+ version: '0.6'
33
+ type: :development
34
+ prerelease: false
35
+ version_requirements: *2156520400
36
+ - !ruby/object:Gem::Dependency
37
+ name: rake
38
+ requirement: &2156519940 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ~>
42
+ - !ruby/object:Gem::Version
43
+ version: '0.9'
44
+ type: :development
45
+ prerelease: false
46
+ version_requirements: *2156519940
47
+ - !ruby/object:Gem::Dependency
48
+ name: rspec
49
+ requirement: &2156519360 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: '2.6'
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: *2156519360
58
+ - !ruby/object:Gem::Dependency
59
+ name: simplecov
60
+ requirement: &2156518820 !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ~>
64
+ - !ruby/object:Gem::Version
65
+ version: '0.4'
66
+ type: :development
67
+ prerelease: false
68
+ version_requirements: *2156518820
69
+ - !ruby/object:Gem::Dependency
70
+ name: yard
71
+ requirement: &2156518280 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ~>
75
+ - !ruby/object:Gem::Version
76
+ version: '0.7'
77
+ type: :development
78
+ prerelease: false
79
+ version_requirements: *2156518280
80
+ - !ruby/object:Gem::Dependency
81
+ name: webmock
82
+ requirement: &2156517760 !ruby/object:Gem::Requirement
83
+ none: false
84
+ requirements:
85
+ - - ~>
86
+ - !ruby/object:Gem::Version
87
+ version: '1.6'
88
+ type: :development
89
+ prerelease: false
90
+ version_requirements: *2156517760
91
+ - !ruby/object:Gem::Dependency
92
+ name: faraday
93
+ requirement: &2156517200 !ruby/object:Gem::Requirement
94
+ none: false
95
+ requirements:
96
+ - - ~>
97
+ - !ruby/object:Gem::Version
98
+ version: 0.6.1
99
+ type: :runtime
100
+ prerelease: false
101
+ version_requirements: *2156517200
102
+ - !ruby/object:Gem::Dependency
103
+ name: faraday_middleware
104
+ requirement: &2156516600 !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ~>
108
+ - !ruby/object:Gem::Version
109
+ version: 0.6.3
110
+ type: :runtime
111
+ prerelease: false
112
+ version_requirements: *2156516600
113
+ - !ruby/object:Gem::Dependency
114
+ name: hashie
115
+ requirement: &2156515980 !ruby/object:Gem::Requirement
116
+ none: false
117
+ requirements:
118
+ - - ~>
119
+ - !ruby/object:Gem::Version
120
+ version: 1.0.0
121
+ type: :runtime
122
+ prerelease: false
123
+ version_requirements: *2156515980
124
+ - !ruby/object:Gem::Dependency
125
+ name: multi_json
126
+ requirement: &2156515440 !ruby/object:Gem::Requirement
127
+ none: false
128
+ requirements:
129
+ - - ~>
130
+ - !ruby/object:Gem::Version
131
+ version: 1.0.2
132
+ type: :runtime
133
+ prerelease: false
134
+ version_requirements: *2156515440
135
+ - !ruby/object:Gem::Dependency
136
+ name: multi_xml
137
+ requirement: &2156514940 !ruby/object:Gem::Requirement
138
+ none: false
139
+ requirements:
140
+ - - ~>
141
+ - !ruby/object:Gem::Version
142
+ version: 0.2.2
143
+ type: :runtime
144
+ prerelease: false
145
+ version_requirements: *2156514940
146
+ - !ruby/object:Gem::Dependency
147
+ name: rash
148
+ requirement: &2156514360 !ruby/object:Gem::Requirement
149
+ none: false
150
+ requirements:
151
+ - - ~>
152
+ - !ruby/object:Gem::Version
153
+ version: 0.3.0
154
+ type: :runtime
155
+ prerelease: false
156
+ version_requirements: *2156514360
157
+ description: Simple wrapper to access data from the Microsoft Open Government Initiative
158
+ email: blake@codeforamerica.org
159
+ executables: []
160
+ extensions: []
161
+ extra_rdoc_files: []
162
+ files:
163
+ - .autotest
164
+ - .gemtest
165
+ - .gitignore
166
+ - .rspec
167
+ - .yardopts
168
+ - Gemfile
169
+ - LICENSE.md
170
+ - README.md
171
+ - Rakefile
172
+ - lib/microsoft_open_data.rb
173
+ - lib/microsoft_open_data/client.rb
174
+ - lib/microsoft_open_data/client/api.rb
175
+ - lib/microsoft_open_data/client/connection.rb
176
+ - lib/microsoft_open_data/client/request.rb
177
+ - lib/microsoft_open_data/version.rb
178
+ - microsoft_open_data.gemspec
179
+ - spec/fixtures/container.xml
180
+ - spec/fixtures/dc_services.xml
181
+ - spec/fixtures/query.xml
182
+ - spec/helper.rb
183
+ - spec/microsoft_open_data/api_spec.rb
184
+ - spec/microsoft_open_data_spec.rb
185
+ homepage: ''
186
+ licenses: []
187
+ post_install_message:
188
+ rdoc_options: []
189
+ require_paths:
190
+ - lib
191
+ required_ruby_version: !ruby/object:Gem::Requirement
192
+ none: false
193
+ requirements:
194
+ - - ! '>='
195
+ - !ruby/object:Gem::Version
196
+ version: '0'
197
+ required_rubygems_version: !ruby/object:Gem::Requirement
198
+ none: false
199
+ requirements:
200
+ - - ! '>='
201
+ - !ruby/object:Gem::Version
202
+ version: '0'
203
+ requirements: []
204
+ rubyforge_project:
205
+ rubygems_version: 1.8.6
206
+ signing_key:
207
+ specification_version: 3
208
+ summary: Ruby wrapper for Microsoft Open Government Initiative
209
+ test_files:
210
+ - spec/fixtures/container.xml
211
+ - spec/fixtures/dc_services.xml
212
+ - spec/fixtures/query.xml
213
+ - spec/helper.rb
214
+ - spec/microsoft_open_data/api_spec.rb
215
+ - spec/microsoft_open_data_spec.rb