pluct 0.0.7 → 0.0.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/lib/pluct/version.rb +1 -1
- data/spec/integration/resource_spec.rb +3 -3
- data/spec/support/vcr/integration/creates_new_app.yml +221 -0
- data/spec/support/vcr/{acceptance/creates_new_app.yml → integration/expands_uri.yml} +52 -57
- data/spec/support/vcr/integration/page_not_found.yml +117 -0
- metadata +7 -5
- data/spec/support/vcr/acceptance/pluct_resource.yml +0 -200
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
NTAzNzU2ZjllZWI5Y2UyYjI0ZmJhYzE1MTRkMmU4ZWVlMTQ1MjhmYg==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
NWIzZDQ2N2E2ZTJmY2MwMjc0Mzc0MzdiNDBhYWJjMjY2ZWMyYjZjMQ==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
YzkzMTFmNWZlOTQ5Yzk1MWRlMDBhMTdkNTdhMzZlOThiZDAwNmJkOWZmOWMz
|
10
|
+
ODczOTJkYjVjYjRlMTM1YjBkMTA5YmFlY2JiYjIxYmVkMTk1YTE1MzY4ZmFm
|
11
|
+
ZTE0ZWRhNmZmMWE0NzllZTMyMDQyOWQ2OWYzMDQ4NWVlMThhNDQ=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
MDUyYjI2ZGNmYjZkYjY3NzYzM2RkMDIyYzMxODc1YmViNmUwY2JiZjA2NmRl
|
14
|
+
NjZiMWE1ZTFjMTZmZTAzMDNiYmY5MTE0ZmYyMzczYzQxZWFiMTg5NzRhNzQw
|
15
|
+
YjlmNThmNmM0NjYxOTg4MGQzMmFmMTRlNDk4MGI5Y2NhNThjY2E=
|
data/lib/pluct/version.rb
CHANGED
@@ -4,7 +4,7 @@ describe Pluct::Resource, :integration do
|
|
4
4
|
|
5
5
|
let(:resource){ Pluct::Resource.new('http://localhost:8888') }
|
6
6
|
|
7
|
-
it 'creates a new instance' do
|
7
|
+
it 'creates a new instance', :vcr, cassette_name: 'integration/creates_new_app' do
|
8
8
|
app = resource.collection({context_name: 'baas', collection_name: 'apps'}).create({name: 'my_app', description: 'app_desc'})
|
9
9
|
|
10
10
|
expect(app.response.code).to eq 201
|
@@ -12,12 +12,12 @@ describe Pluct::Resource, :integration do
|
|
12
12
|
expect(app.data).to be_empty
|
13
13
|
end
|
14
14
|
|
15
|
-
it 'expands uri template' do
|
15
|
+
it 'expands uri template', :vcr, cassette_name: 'integration/expands_uri' do
|
16
16
|
collection = resource.collection({context_name: 'baas', collection_name: 'apps'})
|
17
17
|
expect(collection.uri).to eq 'http://localhost:8888/baas/apps'
|
18
18
|
end
|
19
19
|
|
20
|
-
it 'raises 404 for url not found' do
|
20
|
+
it 'raises 404 for url not found', :vcr, cassette_name: 'integration/page_not_found' do
|
21
21
|
expect {resource.resource({context_name: 'baas', collection_name: 'apps', resource_id: 'invalid'}) }.to raise_error(Pluct::Errors::UrlNotFound)
|
22
22
|
end
|
23
23
|
end
|
@@ -0,0 +1,221 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: http://localhost:8888/
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
Accept:
|
11
|
+
- ! '*/*; q=0.5, application/xml'
|
12
|
+
Accept-Encoding:
|
13
|
+
- gzip, deflate
|
14
|
+
Content-Type:
|
15
|
+
- application/json
|
16
|
+
User-Agent:
|
17
|
+
- Ruby
|
18
|
+
response:
|
19
|
+
status:
|
20
|
+
code: 200
|
21
|
+
message: OK
|
22
|
+
headers:
|
23
|
+
Content-Length:
|
24
|
+
- '2'
|
25
|
+
Server:
|
26
|
+
- TornadoServer/2.4.1
|
27
|
+
Etag:
|
28
|
+
- ! '"bf21a9e8fbc5a3846fb05b4fa0859e0917b2202f"'
|
29
|
+
Link:
|
30
|
+
- <http://localhost:8888/root/schemas/root>; rel=describedby
|
31
|
+
Cache-Control:
|
32
|
+
- max-age=0
|
33
|
+
Access-Control-Allow-Origin:
|
34
|
+
- ! '*'
|
35
|
+
Content-Type:
|
36
|
+
- application/json; charset=UTF-8; profile=http://localhost:8888/root/schemas/root
|
37
|
+
body:
|
38
|
+
encoding: US-ASCII
|
39
|
+
string: ! '{}'
|
40
|
+
http_version:
|
41
|
+
recorded_at: Thu, 27 Jun 2013 17:42:50 GMT
|
42
|
+
- request:
|
43
|
+
method: get
|
44
|
+
uri: http://localhost:8888/root/schemas/root
|
45
|
+
body:
|
46
|
+
encoding: US-ASCII
|
47
|
+
string: ''
|
48
|
+
headers:
|
49
|
+
Accept:
|
50
|
+
- ! '*/*; q=0.5, application/xml'
|
51
|
+
Accept-Encoding:
|
52
|
+
- gzip, deflate
|
53
|
+
Content-Type:
|
54
|
+
- application/json
|
55
|
+
User-Agent:
|
56
|
+
- Ruby
|
57
|
+
response:
|
58
|
+
status:
|
59
|
+
code: 200
|
60
|
+
message: OK
|
61
|
+
headers:
|
62
|
+
Content-Length:
|
63
|
+
- '336'
|
64
|
+
Server:
|
65
|
+
- TornadoServer/2.4.1
|
66
|
+
Etag:
|
67
|
+
- ! '"4ab873749b4a4a304b67e1b1350eadd89e9bb3c0"'
|
68
|
+
Cache-Control:
|
69
|
+
- max-age=0
|
70
|
+
Access-Control-Allow-Origin:
|
71
|
+
- ! '*'
|
72
|
+
Content-Type:
|
73
|
+
- application/json; charset=UTF-8
|
74
|
+
body:
|
75
|
+
encoding: US-ASCII
|
76
|
+
string: ! '{"links": [{"href": "http://localhost:8888", "rel": "self"}, {"href":
|
77
|
+
"http://localhost:8888/{context_name}", "rel": "context"}, {"href": "http://localhost:8888/{context_name}/{collection_name}",
|
78
|
+
"rel": "collection"}, {"href": "http://localhost:8888/{context_name}/{collection_name}/{resource_id}",
|
79
|
+
"rel": "resource"}], "title": "Root"}'
|
80
|
+
http_version:
|
81
|
+
recorded_at: Thu, 27 Jun 2013 17:42:50 GMT
|
82
|
+
- request:
|
83
|
+
method: get
|
84
|
+
uri: http://localhost:8888/baas/apps
|
85
|
+
body:
|
86
|
+
encoding: US-ASCII
|
87
|
+
string: ''
|
88
|
+
headers:
|
89
|
+
Accept:
|
90
|
+
- ! '*/*; q=0.5, application/xml'
|
91
|
+
Accept-Encoding:
|
92
|
+
- gzip, deflate
|
93
|
+
Content-Type:
|
94
|
+
- application/json
|
95
|
+
User-Agent:
|
96
|
+
- Ruby
|
97
|
+
response:
|
98
|
+
status:
|
99
|
+
code: 200
|
100
|
+
message: OK
|
101
|
+
headers:
|
102
|
+
Content-Length:
|
103
|
+
- '1736'
|
104
|
+
Server:
|
105
|
+
- TornadoServer/2.4.1
|
106
|
+
Etag:
|
107
|
+
- ! '"7841e8ac445151f4e77453bde1de4857f68168ec"'
|
108
|
+
Link:
|
109
|
+
- <http://localhost:8888/baas/schemas/app-collection>; rel=describedby
|
110
|
+
Cache-Control:
|
111
|
+
- max-age=0
|
112
|
+
Access-Control-Allow-Origin:
|
113
|
+
- ! '*'
|
114
|
+
Content-Type:
|
115
|
+
- application/json; charset=UTF-8; profile=http://localhost:8888/baas/schemas/app-collection
|
116
|
+
body:
|
117
|
+
encoding: US-ASCII
|
118
|
+
string: ! '{"items": [{"description": "bar", "name": "foo", "resource_id": "6a7b9031f4b648f4a41591c1ce148b2c"},
|
119
|
+
{"resource_id": "82917c4ed17f4cdf9ddd14c4147a379f", "description": "bar",
|
120
|
+
"name": "new_foo"}, {"description": "bar", "name": "foo", "resource_id": "474f6a6f08eb4baaa5049606105945d7"},
|
121
|
+
{"description": "My Awesome App", "name": "New App", "resource_id": "9b0d0333302a42d3bc8ee00b0afa2121"},
|
122
|
+
{"description": "Awesome Data, bro!", "name": "My Awesome App", "resource_id":
|
123
|
+
"2739e24966974d97bfb811758614eb47"}, {"description": "Awesome Data, bro!",
|
124
|
+
"name": "My Awesome App", "resource_id": "ca515fe0f5d74adeb58854faa1260cc8"},
|
125
|
+
{"description": "bar", "name": "foo", "resource_id": "ddb5fa2dbebf43d7be17faea7c180c09"},
|
126
|
+
{"resource_id": "87a6f3cb1f9343debd87c0450b1750e6", "description": "Awesome
|
127
|
+
Data, bro!", "name": "Another name, bro!"}, {"description": "Awesome Data,
|
128
|
+
bro!", "name": "My Awesome App", "resource_id": "facb7441e3ce49b7b620eb83da1c5e60"},
|
129
|
+
{"description": "Awesome Data, bro!", "name": "My Awesome App", "resource_id":
|
130
|
+
"cfefcd51700840b4bd1d3c81bd7577b5"}], "next_page": 2, "links": [{"href": "http://localhost:8888/baas/apps/{resource_id}",
|
131
|
+
"rel": "item"}, {"href": "http://localhost:8888/baas/apps/{resource_id}",
|
132
|
+
"method": "PATCH", "rel": "edit"}, {"href": "http://localhost:8888/baas/apps/{resource_id}",
|
133
|
+
"method": "PUT", "rel": "replace"}, {"href": "http://localhost:8888/baas/apps/{resource_id}",
|
134
|
+
"method": "DELETE", "rel": "delete"}, {"href": "http://localhost:8888/baas/apps",
|
135
|
+
"rel": "self"}, {"href": "http://localhost:8888/baas/apps", "method": "POST",
|
136
|
+
"rel": "create", "schema": {"$ref": "http://localhost:8888/baas/schemas/app"}},
|
137
|
+
{"href": "http://localhost:8888/baas/apps?page=2", "rel": "next"}], "item_count":
|
138
|
+
237}'
|
139
|
+
http_version:
|
140
|
+
recorded_at: Thu, 27 Jun 2013 17:42:50 GMT
|
141
|
+
- request:
|
142
|
+
method: get
|
143
|
+
uri: http://localhost:8888/baas/schemas/app-collection
|
144
|
+
body:
|
145
|
+
encoding: US-ASCII
|
146
|
+
string: ''
|
147
|
+
headers:
|
148
|
+
Accept:
|
149
|
+
- ! '*/*; q=0.5, application/xml'
|
150
|
+
Accept-Encoding:
|
151
|
+
- gzip, deflate
|
152
|
+
Content-Type:
|
153
|
+
- application/json
|
154
|
+
User-Agent:
|
155
|
+
- Ruby
|
156
|
+
response:
|
157
|
+
status:
|
158
|
+
code: 200
|
159
|
+
message: OK
|
160
|
+
headers:
|
161
|
+
Content-Length:
|
162
|
+
- '367'
|
163
|
+
Server:
|
164
|
+
- TornadoServer/2.4.1
|
165
|
+
Etag:
|
166
|
+
- ! '"5a1c821d55fe0e75bb01048c47e50c077bd9d5c3"'
|
167
|
+
Cache-Control:
|
168
|
+
- max-age=0
|
169
|
+
Access-Control-Allow-Origin:
|
170
|
+
- ! '*'
|
171
|
+
Content-Type:
|
172
|
+
- application/json; charset=UTF-8
|
173
|
+
body:
|
174
|
+
encoding: US-ASCII
|
175
|
+
string: ! '{"links": [{"href": "http://localhost:8888/baas/apps", "rel": "self"},
|
176
|
+
{"href": "http://localhost:8888/baas/apps", "method": "POST", "rel": "create",
|
177
|
+
"schema": {"$ref": "http://localhost:8888/baas/schemas/app"}}, {"href": "http://localhost:8888/baas/apps?page={prev_page}",
|
178
|
+
"rel": "prev"}, {"href": "http://localhost:8888/baas/apps?page={next_page}",
|
179
|
+
"rel": "next"}]}'
|
180
|
+
http_version:
|
181
|
+
recorded_at: Thu, 27 Jun 2013 17:42:50 GMT
|
182
|
+
- request:
|
183
|
+
method: post
|
184
|
+
uri: http://localhost:8888/baas/apps
|
185
|
+
body:
|
186
|
+
encoding: UTF-8
|
187
|
+
string: ! '{"name":"my_app","description":"app_desc"}'
|
188
|
+
headers:
|
189
|
+
Accept:
|
190
|
+
- ! '*/*; q=0.5, application/xml'
|
191
|
+
Accept-Encoding:
|
192
|
+
- gzip, deflate
|
193
|
+
Content-Type:
|
194
|
+
- application/json
|
195
|
+
Content-Length:
|
196
|
+
- '42'
|
197
|
+
User-Agent:
|
198
|
+
- Ruby
|
199
|
+
response:
|
200
|
+
status:
|
201
|
+
code: 201
|
202
|
+
message: Created
|
203
|
+
headers:
|
204
|
+
Content-Length:
|
205
|
+
- '0'
|
206
|
+
Server:
|
207
|
+
- TornadoServer/2.4.1
|
208
|
+
Location:
|
209
|
+
- http://localhost:8888/baas/apps/a9c9bd9d9aab41048db97ff48469fe60
|
210
|
+
Cache-Control:
|
211
|
+
- max-age=0
|
212
|
+
Access-Control-Allow-Origin:
|
213
|
+
- ! '*'
|
214
|
+
Content-Type:
|
215
|
+
- text/html; charset=UTF-8
|
216
|
+
body:
|
217
|
+
encoding: US-ASCII
|
218
|
+
string: ''
|
219
|
+
http_version:
|
220
|
+
recorded_at: Thu, 27 Jun 2013 17:42:50 GMT
|
221
|
+
recorded_with: VCR 2.5.0
|
@@ -2,7 +2,7 @@
|
|
2
2
|
http_interactions:
|
3
3
|
- request:
|
4
4
|
method: get
|
5
|
-
uri: http://localhost:8888/
|
5
|
+
uri: http://localhost:8888/
|
6
6
|
body:
|
7
7
|
encoding: US-ASCII
|
8
8
|
string: ''
|
@@ -21,40 +21,27 @@ http_interactions:
|
|
21
21
|
message: OK
|
22
22
|
headers:
|
23
23
|
Content-Length:
|
24
|
-
- '
|
24
|
+
- '2'
|
25
25
|
Server:
|
26
26
|
- TornadoServer/2.4.1
|
27
27
|
Etag:
|
28
|
-
- ! '"
|
28
|
+
- ! '"bf21a9e8fbc5a3846fb05b4fa0859e0917b2202f"'
|
29
29
|
Link:
|
30
|
-
- <http://localhost:8888/
|
30
|
+
- <http://localhost:8888/root/schemas/root>; rel=describedby
|
31
31
|
Cache-Control:
|
32
32
|
- max-age=0
|
33
33
|
Access-Control-Allow-Origin:
|
34
34
|
- ! '*'
|
35
35
|
Content-Type:
|
36
|
-
- application/json; charset=UTF-8; profile=http://localhost:8888/
|
36
|
+
- application/json; charset=UTF-8; profile=http://localhost:8888/root/schemas/root
|
37
37
|
body:
|
38
38
|
encoding: US-ASCII
|
39
|
-
string: ! '{
|
40
|
-
App", "resource_id": "4bc4e297ec43467eabe04c82a505ae24"}, {"description":
|
41
|
-
"Awesome Data, bro!", "name": "My Awesome App", "resource_id": "84748678085f42c1bc4282e309de37d8"},
|
42
|
-
{"description": "s", "name": "asds", "resource_id": "5c7c8df86c074d08a5e0cab8e57a6b81"},
|
43
|
-
{"description": "My Awesome App", "name": "New App", "resource_id": "dd68e019f6ab48cbb48d995d276b6113"},
|
44
|
-
{"description": "My Awesome App", "name": "New App", "resource_id": "ee85cecf98a44d7f928d523e1e3898ea"}],
|
45
|
-
"links": [{"href": "http://localhost:8888/baas/apps/{resource_id}", "rel":
|
46
|
-
"item"}, {"href": "http://localhost:8888/baas/apps/{resource_id}", "method":
|
47
|
-
"PATCH", "rel": "edit"}, {"href": "http://localhost:8888/baas/apps/{resource_id}",
|
48
|
-
"method": "PUT", "rel": "replace"}, {"href": "http://localhost:8888/baas/apps/{resource_id}",
|
49
|
-
"method": "DELETE", "rel": "delete"}, {"href": "http://localhost:8888/baas/apps",
|
50
|
-
"rel": "self"}, {"href": "http://localhost:8888/baas/apps", "method": "POST",
|
51
|
-
"rel": "create", "schema": {"$ref": "http://localhost:8888/baas/schemas/app"}}],
|
52
|
-
"item_count": 5}'
|
39
|
+
string: ! '{}'
|
53
40
|
http_version:
|
54
|
-
recorded_at:
|
41
|
+
recorded_at: Thu, 27 Jun 2013 17:42:50 GMT
|
55
42
|
- request:
|
56
43
|
method: get
|
57
|
-
uri: http://localhost:8888/
|
44
|
+
uri: http://localhost:8888/root/schemas/root
|
58
45
|
body:
|
59
46
|
encoding: US-ASCII
|
60
47
|
string: ''
|
@@ -73,11 +60,11 @@ http_interactions:
|
|
73
60
|
message: OK
|
74
61
|
headers:
|
75
62
|
Content-Length:
|
76
|
-
- '
|
63
|
+
- '336'
|
77
64
|
Server:
|
78
65
|
- TornadoServer/2.4.1
|
79
66
|
Etag:
|
80
|
-
- ! '"
|
67
|
+
- ! '"4ab873749b4a4a304b67e1b1350eadd89e9bb3c0"'
|
81
68
|
Cache-Control:
|
82
69
|
- max-age=0
|
83
70
|
Access-Control-Allow-Origin:
|
@@ -86,13 +73,12 @@ http_interactions:
|
|
86
73
|
- application/json; charset=UTF-8
|
87
74
|
body:
|
88
75
|
encoding: US-ASCII
|
89
|
-
string: ! '{"links": [{"href": "http://localhost:8888
|
90
|
-
|
91
|
-
"
|
92
|
-
"rel": "
|
93
|
-
"rel": "next"}]}'
|
76
|
+
string: ! '{"links": [{"href": "http://localhost:8888", "rel": "self"}, {"href":
|
77
|
+
"http://localhost:8888/{context_name}", "rel": "context"}, {"href": "http://localhost:8888/{context_name}/{collection_name}",
|
78
|
+
"rel": "collection"}, {"href": "http://localhost:8888/{context_name}/{collection_name}/{resource_id}",
|
79
|
+
"rel": "resource"}], "title": "Root"}'
|
94
80
|
http_version:
|
95
|
-
recorded_at:
|
81
|
+
recorded_at: Thu, 27 Jun 2013 17:42:50 GMT
|
96
82
|
- request:
|
97
83
|
method: get
|
98
84
|
uri: http://localhost:8888/baas/apps
|
@@ -114,11 +100,11 @@ http_interactions:
|
|
114
100
|
message: OK
|
115
101
|
headers:
|
116
102
|
Content-Length:
|
117
|
-
- '
|
103
|
+
- '1736'
|
118
104
|
Server:
|
119
105
|
- TornadoServer/2.4.1
|
120
106
|
Etag:
|
121
|
-
- ! '"
|
107
|
+
- ! '"e1d1fd39af5f5923ce7c4e9083d7708f913a2530"'
|
122
108
|
Link:
|
123
109
|
- <http://localhost:8888/baas/schemas/app-collection>; rel=describedby
|
124
110
|
Cache-Control:
|
@@ -129,28 +115,35 @@ http_interactions:
|
|
129
115
|
- application/json; charset=UTF-8; profile=http://localhost:8888/baas/schemas/app-collection
|
130
116
|
body:
|
131
117
|
encoding: US-ASCII
|
132
|
-
string: ! '{"items": [{"description": "
|
133
|
-
|
134
|
-
"
|
135
|
-
{"description": "
|
136
|
-
{"description": "
|
137
|
-
|
138
|
-
"
|
139
|
-
"
|
140
|
-
"
|
118
|
+
string: ! '{"items": [{"description": "bar", "name": "foo", "resource_id": "6a7b9031f4b648f4a41591c1ce148b2c"},
|
119
|
+
{"resource_id": "82917c4ed17f4cdf9ddd14c4147a379f", "description": "bar",
|
120
|
+
"name": "new_foo"}, {"description": "bar", "name": "foo", "resource_id": "474f6a6f08eb4baaa5049606105945d7"},
|
121
|
+
{"description": "My Awesome App", "name": "New App", "resource_id": "9b0d0333302a42d3bc8ee00b0afa2121"},
|
122
|
+
{"description": "Awesome Data, bro!", "name": "My Awesome App", "resource_id":
|
123
|
+
"2739e24966974d97bfb811758614eb47"}, {"description": "Awesome Data, bro!",
|
124
|
+
"name": "My Awesome App", "resource_id": "ca515fe0f5d74adeb58854faa1260cc8"},
|
125
|
+
{"description": "bar", "name": "foo", "resource_id": "ddb5fa2dbebf43d7be17faea7c180c09"},
|
126
|
+
{"resource_id": "87a6f3cb1f9343debd87c0450b1750e6", "description": "Awesome
|
127
|
+
Data, bro!", "name": "Another name, bro!"}, {"description": "Awesome Data,
|
128
|
+
bro!", "name": "My Awesome App", "resource_id": "facb7441e3ce49b7b620eb83da1c5e60"},
|
129
|
+
{"description": "Awesome Data, bro!", "name": "My Awesome App", "resource_id":
|
130
|
+
"cfefcd51700840b4bd1d3c81bd7577b5"}], "next_page": 2, "links": [{"href": "http://localhost:8888/baas/apps/{resource_id}",
|
131
|
+
"rel": "item"}, {"href": "http://localhost:8888/baas/apps/{resource_id}",
|
132
|
+
"method": "PATCH", "rel": "edit"}, {"href": "http://localhost:8888/baas/apps/{resource_id}",
|
141
133
|
"method": "PUT", "rel": "replace"}, {"href": "http://localhost:8888/baas/apps/{resource_id}",
|
142
134
|
"method": "DELETE", "rel": "delete"}, {"href": "http://localhost:8888/baas/apps",
|
143
135
|
"rel": "self"}, {"href": "http://localhost:8888/baas/apps", "method": "POST",
|
144
|
-
"rel": "create", "schema": {"$ref": "http://localhost:8888/baas/schemas/app"}}
|
145
|
-
"
|
136
|
+
"rel": "create", "schema": {"$ref": "http://localhost:8888/baas/schemas/app"}},
|
137
|
+
{"href": "http://localhost:8888/baas/apps?page=2", "rel": "next"}], "item_count":
|
138
|
+
238}'
|
146
139
|
http_version:
|
147
|
-
recorded_at:
|
140
|
+
recorded_at: Thu, 27 Jun 2013 17:42:50 GMT
|
148
141
|
- request:
|
149
|
-
method:
|
150
|
-
uri: http://localhost:8888/baas/
|
142
|
+
method: get
|
143
|
+
uri: http://localhost:8888/baas/schemas/app-collection
|
151
144
|
body:
|
152
|
-
encoding:
|
153
|
-
string:
|
145
|
+
encoding: US-ASCII
|
146
|
+
string: ''
|
154
147
|
headers:
|
155
148
|
Accept:
|
156
149
|
- ! '*/*; q=0.5, application/xml'
|
@@ -158,30 +151,32 @@ http_interactions:
|
|
158
151
|
- gzip, deflate
|
159
152
|
Content-Type:
|
160
153
|
- application/json
|
161
|
-
Content-Length:
|
162
|
-
- '49'
|
163
154
|
User-Agent:
|
164
155
|
- Ruby
|
165
156
|
response:
|
166
157
|
status:
|
167
|
-
code:
|
168
|
-
message:
|
158
|
+
code: 200
|
159
|
+
message: OK
|
169
160
|
headers:
|
170
161
|
Content-Length:
|
171
|
-
- '
|
162
|
+
- '367'
|
172
163
|
Server:
|
173
164
|
- TornadoServer/2.4.1
|
174
|
-
|
175
|
-
-
|
165
|
+
Etag:
|
166
|
+
- ! '"5a1c821d55fe0e75bb01048c47e50c077bd9d5c3"'
|
176
167
|
Cache-Control:
|
177
168
|
- max-age=0
|
178
169
|
Access-Control-Allow-Origin:
|
179
170
|
- ! '*'
|
180
171
|
Content-Type:
|
181
|
-
-
|
172
|
+
- application/json; charset=UTF-8
|
182
173
|
body:
|
183
174
|
encoding: US-ASCII
|
184
|
-
string: '
|
175
|
+
string: ! '{"links": [{"href": "http://localhost:8888/baas/apps", "rel": "self"},
|
176
|
+
{"href": "http://localhost:8888/baas/apps", "method": "POST", "rel": "create",
|
177
|
+
"schema": {"$ref": "http://localhost:8888/baas/schemas/app"}}, {"href": "http://localhost:8888/baas/apps?page={prev_page}",
|
178
|
+
"rel": "prev"}, {"href": "http://localhost:8888/baas/apps?page={next_page}",
|
179
|
+
"rel": "next"}]}'
|
185
180
|
http_version:
|
186
|
-
recorded_at:
|
181
|
+
recorded_at: Thu, 27 Jun 2013 17:42:50 GMT
|
187
182
|
recorded_with: VCR 2.5.0
|
@@ -0,0 +1,117 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: http://localhost:8888/
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
Accept:
|
11
|
+
- ! '*/*; q=0.5, application/xml'
|
12
|
+
Accept-Encoding:
|
13
|
+
- gzip, deflate
|
14
|
+
Content-Type:
|
15
|
+
- application/json
|
16
|
+
User-Agent:
|
17
|
+
- Ruby
|
18
|
+
response:
|
19
|
+
status:
|
20
|
+
code: 200
|
21
|
+
message: OK
|
22
|
+
headers:
|
23
|
+
Content-Length:
|
24
|
+
- '2'
|
25
|
+
Server:
|
26
|
+
- TornadoServer/2.4.1
|
27
|
+
Etag:
|
28
|
+
- ! '"bf21a9e8fbc5a3846fb05b4fa0859e0917b2202f"'
|
29
|
+
Link:
|
30
|
+
- <http://localhost:8888/root/schemas/root>; rel=describedby
|
31
|
+
Cache-Control:
|
32
|
+
- max-age=0
|
33
|
+
Access-Control-Allow-Origin:
|
34
|
+
- ! '*'
|
35
|
+
Content-Type:
|
36
|
+
- application/json; charset=UTF-8; profile=http://localhost:8888/root/schemas/root
|
37
|
+
body:
|
38
|
+
encoding: US-ASCII
|
39
|
+
string: ! '{}'
|
40
|
+
http_version:
|
41
|
+
recorded_at: Thu, 27 Jun 2013 17:42:50 GMT
|
42
|
+
- request:
|
43
|
+
method: get
|
44
|
+
uri: http://localhost:8888/root/schemas/root
|
45
|
+
body:
|
46
|
+
encoding: US-ASCII
|
47
|
+
string: ''
|
48
|
+
headers:
|
49
|
+
Accept:
|
50
|
+
- ! '*/*; q=0.5, application/xml'
|
51
|
+
Accept-Encoding:
|
52
|
+
- gzip, deflate
|
53
|
+
Content-Type:
|
54
|
+
- application/json
|
55
|
+
User-Agent:
|
56
|
+
- Ruby
|
57
|
+
response:
|
58
|
+
status:
|
59
|
+
code: 200
|
60
|
+
message: OK
|
61
|
+
headers:
|
62
|
+
Content-Length:
|
63
|
+
- '336'
|
64
|
+
Server:
|
65
|
+
- TornadoServer/2.4.1
|
66
|
+
Etag:
|
67
|
+
- ! '"4ab873749b4a4a304b67e1b1350eadd89e9bb3c0"'
|
68
|
+
Cache-Control:
|
69
|
+
- max-age=0
|
70
|
+
Access-Control-Allow-Origin:
|
71
|
+
- ! '*'
|
72
|
+
Content-Type:
|
73
|
+
- application/json; charset=UTF-8
|
74
|
+
body:
|
75
|
+
encoding: US-ASCII
|
76
|
+
string: ! '{"links": [{"href": "http://localhost:8888", "rel": "self"}, {"href":
|
77
|
+
"http://localhost:8888/{context_name}", "rel": "context"}, {"href": "http://localhost:8888/{context_name}/{collection_name}",
|
78
|
+
"rel": "collection"}, {"href": "http://localhost:8888/{context_name}/{collection_name}/{resource_id}",
|
79
|
+
"rel": "resource"}], "title": "Root"}'
|
80
|
+
http_version:
|
81
|
+
recorded_at: Thu, 27 Jun 2013 17:42:50 GMT
|
82
|
+
- request:
|
83
|
+
method: get
|
84
|
+
uri: http://localhost:8888/baas/apps/invalid
|
85
|
+
body:
|
86
|
+
encoding: US-ASCII
|
87
|
+
string: ''
|
88
|
+
headers:
|
89
|
+
Accept:
|
90
|
+
- ! '*/*; q=0.5, application/xml'
|
91
|
+
Accept-Encoding:
|
92
|
+
- gzip, deflate
|
93
|
+
Content-Type:
|
94
|
+
- application/json
|
95
|
+
User-Agent:
|
96
|
+
- Ruby
|
97
|
+
response:
|
98
|
+
status:
|
99
|
+
code: 404
|
100
|
+
message: Not Found
|
101
|
+
headers:
|
102
|
+
Access-Control-Allow-Origin:
|
103
|
+
- ! '*'
|
104
|
+
Cache-Control:
|
105
|
+
- max-age=0
|
106
|
+
Content-Type:
|
107
|
+
- text/html; charset=UTF-8
|
108
|
+
Content-Length:
|
109
|
+
- '0'
|
110
|
+
Server:
|
111
|
+
- TornadoServer/2.4.1
|
112
|
+
body:
|
113
|
+
encoding: US-ASCII
|
114
|
+
string: ''
|
115
|
+
http_version:
|
116
|
+
recorded_at: Thu, 27 Jun 2013 17:42:50 GMT
|
117
|
+
recorded_with: VCR 2.5.0
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pluct
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alberto Leal
|
@@ -181,8 +181,9 @@ files:
|
|
181
181
|
- spec/pluct/schema_spec.rb
|
182
182
|
- spec/spec_helper.rb
|
183
183
|
- spec/support/vcr.rb
|
184
|
-
- spec/support/vcr/
|
185
|
-
- spec/support/vcr/
|
184
|
+
- spec/support/vcr/integration/creates_new_app.yml
|
185
|
+
- spec/support/vcr/integration/expands_uri.yml
|
186
|
+
- spec/support/vcr/integration/page_not_found.yml
|
186
187
|
homepage: http://github.com/globocom/pluct-ruby
|
187
188
|
licenses:
|
188
189
|
- MIT
|
@@ -217,6 +218,7 @@ test_files:
|
|
217
218
|
- spec/pluct/schema_spec.rb
|
218
219
|
- spec/spec_helper.rb
|
219
220
|
- spec/support/vcr.rb
|
220
|
-
- spec/support/vcr/
|
221
|
-
- spec/support/vcr/
|
221
|
+
- spec/support/vcr/integration/creates_new_app.yml
|
222
|
+
- spec/support/vcr/integration/expands_uri.yml
|
223
|
+
- spec/support/vcr/integration/page_not_found.yml
|
222
224
|
has_rdoc:
|
@@ -1,200 +0,0 @@
|
|
1
|
-
---
|
2
|
-
http_interactions:
|
3
|
-
- request:
|
4
|
-
method: get
|
5
|
-
uri: http://repos.example.com/interatividade/famosos
|
6
|
-
body:
|
7
|
-
encoding: US-ASCII
|
8
|
-
string: ''
|
9
|
-
headers:
|
10
|
-
Accept:
|
11
|
-
- ! '*/*; q=0.5, application/xml'
|
12
|
-
Accept-Encoding:
|
13
|
-
- gzip, deflate
|
14
|
-
Content-Type:
|
15
|
-
- application/json
|
16
|
-
User-Agent:
|
17
|
-
- Ruby
|
18
|
-
response:
|
19
|
-
status:
|
20
|
-
code: 200
|
21
|
-
message: OK
|
22
|
-
headers:
|
23
|
-
Access-Control-Allow-Origin:
|
24
|
-
- ! '*'
|
25
|
-
Content-Type:
|
26
|
-
- application/json; charset=UTF-8; profile=http://repos.example.com/interatividade/schemas/famoso-collection
|
27
|
-
Date:
|
28
|
-
- Tue, 11 Jun 2013 13:20:45 GMT
|
29
|
-
Etag:
|
30
|
-
- ! '"504bb93b367e8d268b6f4d28ea50c788bd96d60b"'
|
31
|
-
Link:
|
32
|
-
- <http://repos.example.com/interatividade/schemas/famoso-collection>;
|
33
|
-
rel=describedby
|
34
|
-
Server:
|
35
|
-
- nginx/1.1.19
|
36
|
-
Content-Length:
|
37
|
-
- '948'
|
38
|
-
Connection:
|
39
|
-
- keep-alive
|
40
|
-
body:
|
41
|
-
encoding: US-ASCII
|
42
|
-
string: ! '{"items": [{"cadun_id": 1, "name": "Alberto", "resource_id":
|
43
|
-
"4c7829d7ff4f4e428f6f1571f7a3f760"}, {"cadun_id": 2, "name": "Nathalia", "resource_id":
|
44
|
-
"afa8bad7b7734cabb63d720b6470afcf"}], "links": [{"href": "http://repos.example.com/interatividade/famosos/{resource_id}",
|
45
|
-
"rel": "item"}, {"href": "http://repos.example.com/interatividade/famosos/{resource_id}",
|
46
|
-
"method": "PATCH", "rel": "edit"}, {"href": "http://repos.example.com/interatividade/famosos/{resource_id}",
|
47
|
-
"method": "PUT", "rel": "replace"}, {"href": "http://repos.example.com/interatividade/famosos/{resource_id}",
|
48
|
-
"method": "DELETE", "rel": "delete"}, {"href": "http://repos.example.com/interatividade/famosos",
|
49
|
-
"rel": "self"}, {"href": "http://repos.example.com/interatividade/famosos",
|
50
|
-
"method": "POST", "rel": "create", "schema": {"$ref": "http://repos.example.com/interatividade/schemas/famoso"}}],
|
51
|
-
"item_count": 2}'
|
52
|
-
http_version:
|
53
|
-
recorded_at: Tue, 11 Jun 2013 13:20:03 GMT
|
54
|
-
- request:
|
55
|
-
method: get
|
56
|
-
uri: http://repos.example.com/interatividade/schemas/famoso-collection
|
57
|
-
body:
|
58
|
-
encoding: US-ASCII
|
59
|
-
string: ''
|
60
|
-
headers:
|
61
|
-
Accept:
|
62
|
-
- ! '*/*; q=0.5, application/xml'
|
63
|
-
Accept-Encoding:
|
64
|
-
- gzip, deflate
|
65
|
-
Content-Type:
|
66
|
-
- application/json
|
67
|
-
User-Agent:
|
68
|
-
- Ruby
|
69
|
-
response:
|
70
|
-
status:
|
71
|
-
code: 200
|
72
|
-
message: OK
|
73
|
-
headers:
|
74
|
-
Access-Control-Allow-Origin:
|
75
|
-
- ! '*'
|
76
|
-
Content-Type:
|
77
|
-
- application/json; charset=UTF-8
|
78
|
-
Date:
|
79
|
-
- Tue, 11 Jun 2013 13:20:46 GMT
|
80
|
-
Etag:
|
81
|
-
- ! '"255aaff177c521d6807d015ce8021c92f20a67ec"'
|
82
|
-
Server:
|
83
|
-
- nginx/1.1.19
|
84
|
-
Content-Length:
|
85
|
-
- '487'
|
86
|
-
Connection:
|
87
|
-
- keep-alive
|
88
|
-
body:
|
89
|
-
encoding: US-ASCII
|
90
|
-
string: ! '{"links": [{"href": "http://repos.example.com/interatividade/famosos",
|
91
|
-
"rel": "self"}, {"href": "http://repos.example.com/interatividade/famosos",
|
92
|
-
"method": "POST", "rel": "create", "schema": {"$ref": "http://repos.example.com/interatividade/schemas/famoso"}},
|
93
|
-
{"href": "http://repos.example.com/interatividade/famosos?page={prev_page}",
|
94
|
-
"rel": "prev"}, {"href": "http://repos.example.com/interatividade/famosos?page={next_page}",
|
95
|
-
"rel": "next"}]}'
|
96
|
-
http_version:
|
97
|
-
recorded_at: Tue, 11 Jun 2013 13:20:03 GMT
|
98
|
-
- request:
|
99
|
-
method: get
|
100
|
-
uri: http://repos.example.com/interatividade/famosos
|
101
|
-
body:
|
102
|
-
encoding: US-ASCII
|
103
|
-
string: ''
|
104
|
-
headers:
|
105
|
-
Accept:
|
106
|
-
- ! '*/*; q=0.5, application/xml'
|
107
|
-
Accept-Encoding:
|
108
|
-
- gzip, deflate
|
109
|
-
Content-Type:
|
110
|
-
- application/json
|
111
|
-
User-Agent:
|
112
|
-
- Ruby
|
113
|
-
response:
|
114
|
-
status:
|
115
|
-
code: 200
|
116
|
-
message: OK
|
117
|
-
headers:
|
118
|
-
Access-Control-Allow-Origin:
|
119
|
-
- ! '*'
|
120
|
-
Content-Type:
|
121
|
-
- application/json; charset=UTF-8; profile=http://repos.example.com/interatividade/schemas/famoso-collection
|
122
|
-
Date:
|
123
|
-
- Tue, 11 Jun 2013 13:20:46 GMT
|
124
|
-
Etag:
|
125
|
-
- ! '"504bb93b367e8d268b6f4d28ea50c788bd96d60b"'
|
126
|
-
Link:
|
127
|
-
- <http://repos.example.com/interatividade/schemas/famoso-collection>;
|
128
|
-
rel=describedby
|
129
|
-
Server:
|
130
|
-
- nginx/1.1.19
|
131
|
-
Content-Length:
|
132
|
-
- '948'
|
133
|
-
Connection:
|
134
|
-
- keep-alive
|
135
|
-
body:
|
136
|
-
encoding: US-ASCII
|
137
|
-
string: ! '{"items": [{"cadun_id": 1, "name": "Alberto", "resource_id":
|
138
|
-
"4c7829d7ff4f4e428f6f1571f7a3f760"}, {"cadun_id": 2, "name": "Nathalia", "resource_id":
|
139
|
-
"afa8bad7b7734cabb63d720b6470afcf"}], "links": [{"href": "http://repos.example.com/interatividade/famosos/{resource_id}",
|
140
|
-
"rel": "item"}, {"href": "http://repos.example.com/interatividade/famosos/{resource_id}",
|
141
|
-
"method": "PATCH", "rel": "edit"}, {"href": "http://repos.example.com/interatividade/famosos/{resource_id}",
|
142
|
-
"method": "PUT", "rel": "replace"}, {"href": "http://repos.example.com/interatividade/famosos/{resource_id}",
|
143
|
-
"method": "DELETE", "rel": "delete"}, {"href": "http://repos.example.com/interatividade/famosos",
|
144
|
-
"rel": "self"}, {"href": "http://repos.example.com/interatividade/famosos",
|
145
|
-
"method": "POST", "rel": "create", "schema": {"$ref": "http://repos.example.com/interatividade/schemas/famoso"}}],
|
146
|
-
"item_count": 2}'
|
147
|
-
http_version:
|
148
|
-
recorded_at: Tue, 11 Jun 2013 13:20:03 GMT
|
149
|
-
- request:
|
150
|
-
method: get
|
151
|
-
uri: http://repos.example.com/interatividade/famosos
|
152
|
-
body:
|
153
|
-
encoding: US-ASCII
|
154
|
-
string: ''
|
155
|
-
headers:
|
156
|
-
Accept:
|
157
|
-
- ! '*/*; q=0.5, application/xml'
|
158
|
-
Accept-Encoding:
|
159
|
-
- gzip, deflate
|
160
|
-
Content-Type:
|
161
|
-
- application/json
|
162
|
-
User-Agent:
|
163
|
-
- Ruby
|
164
|
-
response:
|
165
|
-
status:
|
166
|
-
code: 200
|
167
|
-
message: OK
|
168
|
-
headers:
|
169
|
-
Access-Control-Allow-Origin:
|
170
|
-
- ! '*'
|
171
|
-
Content-Type:
|
172
|
-
- application/json; charset=UTF-8; profile=http://repos.example.com/interatividade/schemas/famoso-collection
|
173
|
-
Date:
|
174
|
-
- Tue, 11 Jun 2013 13:20:46 GMT
|
175
|
-
Etag:
|
176
|
-
- ! '"504bb93b367e8d268b6f4d28ea50c788bd96d60b"'
|
177
|
-
Link:
|
178
|
-
- <http://repos.example.com/interatividade/schemas/famoso-collection>;
|
179
|
-
rel=describedby
|
180
|
-
Server:
|
181
|
-
- nginx/1.1.19
|
182
|
-
Content-Length:
|
183
|
-
- '948'
|
184
|
-
Connection:
|
185
|
-
- keep-alive
|
186
|
-
body:
|
187
|
-
encoding: US-ASCII
|
188
|
-
string: ! '{"items": [{"cadun_id": 1, "name": "Alberto", "resource_id":
|
189
|
-
"4c7829d7ff4f4e428f6f1571f7a3f760"}, {"cadun_id": 2, "name": "Nathalia", "resource_id":
|
190
|
-
"afa8bad7b7734cabb63d720b6470afcf"}], "links": [{"href": "http://repos.example.com/interatividade/famosos/{resource_id}",
|
191
|
-
"rel": "item"}, {"href": "http://repos.example.com/interatividade/famosos/{resource_id}",
|
192
|
-
"method": "PATCH", "rel": "edit"}, {"href": "http://repos.example.com/interatividade/famosos/{resource_id}",
|
193
|
-
"method": "PUT", "rel": "replace"}, {"href": "http://repos.example.com/interatividade/famosos/{resource_id}",
|
194
|
-
"method": "DELETE", "rel": "delete"}, {"href": "http://repos.example.com/interatividade/famosos",
|
195
|
-
"rel": "self"}, {"href": "http://repos.example.com/interatividade/famosos",
|
196
|
-
"method": "POST", "rel": "create", "schema": {"$ref": "http://repos.example.com/interatividade/schemas/famoso"}}],
|
197
|
-
"item_count": 2}'
|
198
|
-
http_version:
|
199
|
-
recorded_at: Tue, 11 Jun 2013 13:20:03 GMT
|
200
|
-
recorded_with: VCR 2.5.0
|