growthforecast-client 0.0.4 → 0.0.5
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 +4 -4
- data/CHANGELOG.md +8 -1
- data/VERSION +1 -1
- data/lib/growthforecast/client.rb +19 -13
- data/spec/growthforecast/client_spec.rb +13 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bdff216f1774756c4c933a9b4c26691307ee8938
|
4
|
+
data.tar.gz: 9a68fc96e2166ee5f6a8128d6f77a6fa18fae9e6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 82fd7153a8c1b6ff4b87aaca7fe6e770fe23b626bdacb1ca8271038b2333aebcfbc29324c21d4a7ef8c537c5b2ed9e123793a720bb5615385aed9bbc5bf0ae7b
|
7
|
+
data.tar.gz: 0e11150507e19a48b61b4c578522c28378ff257251e290c67f37066f9a9fdbfdb873c3bb6199667b618e4d901993268070971b70385591b5c92643d733e1a933
|
data/CHANGELOG.md
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.5
|
@@ -11,18 +11,28 @@ module GrowthForecast
|
|
11
11
|
|
12
12
|
class Client
|
13
13
|
attr_accessor :debug
|
14
|
+
attr_accessor :client
|
15
|
+
|
14
16
|
# @param [String] base_uri The base uri of GrowthForecast
|
15
17
|
def initialize(base_uri = 'http://127.0.0.1:5125')
|
16
18
|
@base_uri = base_uri
|
17
19
|
end
|
18
20
|
|
21
|
+
def client
|
22
|
+
@client ||= HTTPClient.new
|
23
|
+
end
|
24
|
+
|
25
|
+
def last_response
|
26
|
+
@res
|
27
|
+
end
|
28
|
+
|
19
29
|
# GET the JSON API
|
20
30
|
# @param [String] path
|
21
31
|
# @return [Hash] response body
|
22
32
|
def get_json(path)
|
23
|
-
res = client.get("#{@base_uri}#{path}")
|
24
|
-
handle_error(res)
|
25
|
-
JSON.parse(res.body)
|
33
|
+
@res = client.get("#{@base_uri}#{path}")
|
34
|
+
handle_error(@res)
|
35
|
+
JSON.parse(@res.body)
|
26
36
|
end
|
27
37
|
|
28
38
|
# POST the JSON API
|
@@ -32,9 +42,9 @@ module GrowthForecast
|
|
32
42
|
def post_json(path, data = {})
|
33
43
|
pp data if @debug
|
34
44
|
json = JSON.generate(data)
|
35
|
-
res = client.post("#{@base_uri}#{path}", json)
|
36
|
-
handle_error(res)
|
37
|
-
JSON.parse(res.body)
|
45
|
+
@res = client.post("#{@base_uri}#{path}", json)
|
46
|
+
handle_error(@res)
|
47
|
+
JSON.parse(@res.body)
|
38
48
|
end
|
39
49
|
|
40
50
|
# POST the non-JSON API
|
@@ -43,9 +53,9 @@ module GrowthForecast
|
|
43
53
|
# @return [String] response body
|
44
54
|
def post_query(path, data = {})
|
45
55
|
pp data if @debug
|
46
|
-
res = client.post("#{@base_uri}#{path}", data)
|
47
|
-
handle_error(res)
|
48
|
-
JSON.parse(res.body)
|
56
|
+
@res = client.post("#{@base_uri}#{path}", data)
|
57
|
+
handle_error(@res)
|
58
|
+
JSON.parse(@res.body)
|
49
59
|
end
|
50
60
|
|
51
61
|
# Get the list of graphs, /json/list/graph
|
@@ -296,10 +306,6 @@ module GrowthForecast
|
|
296
306
|
URI.escape(str) if str
|
297
307
|
end
|
298
308
|
|
299
|
-
def client
|
300
|
-
@client ||= HTTPClient.new
|
301
|
-
end
|
302
|
-
|
303
309
|
def handle_error(res)
|
304
310
|
case res.status
|
305
311
|
when 200
|
@@ -153,5 +153,18 @@ describe GrowthForecast::Client do
|
|
153
153
|
after { @client.delete_complex(to_complex["service_name"], to_complex["section_name"], to_complex["graph_name"]) }
|
154
154
|
end
|
155
155
|
end
|
156
|
+
|
157
|
+
describe 'http://blog.64p.org/?page=1366971426' do
|
158
|
+
context "#client=" do
|
159
|
+
before { @client.client = HTTPClient.new(agent_name: 'TestAgent/0.1') }
|
160
|
+
it { @client.client.agent_name.should == 'TestAgent/0.1' }
|
161
|
+
end
|
162
|
+
|
163
|
+
context "#last_response" do
|
164
|
+
include_context "stub_list_graph" if ENV['MOCK'] == 'on'
|
165
|
+
subject { @client.last_response }
|
166
|
+
it { should be_kind_of HTTP::Message }
|
167
|
+
end
|
168
|
+
end
|
156
169
|
end
|
157
170
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: growthforecast-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Naotoshi Seo
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-
|
11
|
+
date: 2013-05-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httpclient
|