bea_api 0.0.6 → 0.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- ZDM4NWI2OWE3OTQ4OWRiMmZiYTI2NTMzMzQ4YmNkNjk5MGU1MGI2OQ==
4
+ MWJiNjliZTIwOGU1ZTJhOGM3MmE2OGVjMGUxYmZlZjYyOTNhMjY2Zg==
5
5
  data.tar.gz: !binary |-
6
- OGJhMGUzNjdkNmE1OWI4MjhmMGNjYzUzMWU3MWI3NzM1YzFhZmYwMg==
6
+ NGQ5NmRlYmRhZDFhYzk4ZTEzYTNkYmE2ZTFjYjRjNjQxNDFmNzYwMg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- MTdlYjAyODI5Zjk2Mzc5NzhlNmJkOWFkMTdkZmQ5NWMwZjJiZGQ2ZGEyNjY2
10
- ZWNhMjdiOGZjODVhZDZhNDIwOGQ5ODExZTJhNmNhMTE2ODdkNmNmOGQ3YTE2
11
- OGI3OWJmMjhhYWEwMzdkMjY0MDcwZGFlZjY4YzVhYTExNjFiNTk=
9
+ NmFlMTI5ZDFmNzhkYmYwNzVhZTg2NTczZGQzNWMyYzY4NmRhN2YxODQwY2Jj
10
+ NjM4MWUzN2Y3NmU0YzdlNWM3NTRmNzlmZjU0MGMwNDExYjBjNzg3NWYzMTdj
11
+ N2U1MjAyNjIzNDFmMzVkYTE1OTk3MmY4YzUwNGFkNzI0MDk1NmQ=
12
12
  data.tar.gz: !binary |-
13
- OGRiNzg5OTZiMDUwYmVjYTU0OGM3ZDZmNTUzN2RhYjRjZDNhMmE4NjRjYTk2
14
- MjE3NWZlOGEwNmFhM2RhNDQzYWFmNDg3MDNmYjEzMzc5YzA5ODdiZTFiMjcz
15
- ZDg4YjIzOTJmNDI2OGViYTAxNDhhYjcyNTdlYzczZWY4NDEyOWI=
13
+ MTU3Y2Y4YmEzNmVhZTIwNDkxZTUzMGFjM2FjZGE5MjE5YTRjNWViY2I0YTI5
14
+ MTk3MmE3NGVlNzEzMWVlODRiYjQwZDQyNTNmYjkyNTlmNzVlZjg0NmM0MWM1
15
+ YTA1MjRjY2MxNWFiNjk3NDJhNzhiZWI3ZTllZjljNzIwMGRmZTU=
@@ -54,14 +54,9 @@ module BeaApi
54
54
  end
55
55
 
56
56
  def _parse_data(response)
57
- if (!response["BEAAPI"]["Results"]["Data"].nil?)
58
- h = response["BEAAPI"]["Results"]["Data"]
59
- elsif (!response["BEAAPI"]["Data"].nil?)
60
- h = response["BEAAPI"]["Data"]
61
- else
62
- h = response["BEAAPI"]["Results"].first[1]
63
- end
64
- h
57
+ h = response["BEAAPI"]["Results"]["Data"]
58
+ h ||= response["BEAAPI"]["Data"]
59
+ h ||= response["BEAAPI"]["Results"].first[1]
65
60
  end
66
61
 
67
62
  def _parse_notes(response)
@@ -1,3 +1,3 @@
1
1
  module BeaApi
2
- VERSION = "0.0.6"
2
+ VERSION = "0.0.7"
3
3
  end
@@ -16,10 +16,22 @@ describe BeaApi::Client do
16
16
 
17
17
  it 'should initialize with an api_key' do
18
18
  VCR.use_cassette('initialize_client') do
19
- @client = BeaApi::Client.new(api_key)
19
+ expect { @client = BeaApi::Client.new(api_key) }.not_to raise_error
20
20
  expect(@client.api_key).to eq(api_key)
21
21
  end
22
22
  end
23
+
24
+ it 'should throw an HTTP error' do
25
+ VCR.use_cassette('initialize_http_error') do
26
+ url = BeaApi::Request::BEA_URL
27
+ begin
28
+ expect { BeaApi::Request::BEA_URL = 'http://example.com/404' }.to output(/already initialized constant/).to_stderr
29
+ expect { @client = BeaApi::Client.new(api_key) }.to raise_error
30
+ ensure
31
+ expect { BeaApi::Request::BEA_URL = url }.to output(/already initialized constant/).to_stderr
32
+ end
33
+ end
34
+ end
23
35
  end
24
36
 
25
37
  describe 'get datasets' do
@@ -115,7 +127,7 @@ describe BeaApi::Client do
115
127
  VCR.use_cassette('get data for RegionalData with valid parameters') do
116
128
  @client = BeaApi::Client.new(api_key)
117
129
  r = @client.get_data(dataset, { "KeyCode" => "PCPI_CI", "GeoFIPS" => "STATE:00000,01000,02000,04000", "Year" => 2009 } )
118
- expect(r.response.count).to eq(4)
130
+ expect(r.response.count).to be > 0
119
131
  end
120
132
  end
121
133
  end
@@ -132,7 +144,7 @@ describe BeaApi::Client do
132
144
  VCR.use_cassette('get data for NIPA with valid parameters') do
133
145
  @client = BeaApi::Client.new(api_key)
134
146
  r = @client.get_data(dataset, { "TableID" => 1, "Frequency" => "A", "Year" => 2009 } )
135
- expect(r.response.count).to eq(25)
147
+ expect(r.response.count).to be > 0
136
148
  end
137
149
  end
138
150
  end
@@ -149,7 +161,7 @@ describe BeaApi::Client do
149
161
  VCR.use_cassette('get data for NI Underlying Detail with valid parameters') do
150
162
  @client = BeaApi::Client.new(api_key)
151
163
  r = @client.get_data(dataset, { "TableID" => 79, "Frequency" => "A", "Year" => 2004 } )
152
- expect(r.response.count).to eq(30)
164
+ expect(r.response.count).to be > 0
153
165
  end
154
166
  end
155
167
  end
@@ -166,7 +178,7 @@ describe BeaApi::Client do
166
178
  VCR.use_cassette('get data for MNE with valid parameters') do
167
179
  @client = BeaApi::Client.new(api_key)
168
180
  r = @client.get_data(dataset, { "DirectionOfInvestment" => 'inward', "Classification" => "Country", "Year" => 2009, "State" => "01" } )
169
- expect(r.response.count).to eq(1544)
181
+ expect(r.response.count).to be > 0
170
182
  end
171
183
  end
172
184
  end
@@ -183,7 +195,7 @@ describe BeaApi::Client do
183
195
  VCR.use_cassette('get data for FixedAssets with valid parameters') do
184
196
  @client = BeaApi::Client.new(api_key)
185
197
  r = @client.get_data(dataset, { "TableID" => 1, "Year" => 2009 } )
186
- expect(r.response.count).to eq(24)
198
+ expect(r.response.count).to be > 0
187
199
  end
188
200
  end
189
201
  end
@@ -224,7 +236,7 @@ describe BeaApi::Client do
224
236
  VCR.use_cassette('get data for IIP with valid parameters') do
225
237
  @client = BeaApi::Client.new(api_key)
226
238
  r = @client.get_data(dataset, { "Frequency" => "A", "Year" => 2009 } )
227
- expect(r.response.count).to eq(450)
239
+ expect(r.response.count).to be > 0
228
240
  end
229
241
  end
230
242
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bea_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chad Hoersten