pluct 0.0.7 → 0.0.8

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
- OTgzNTBjZDdhYmQ0YjcyMTZhMWMzYjM3NDE0YzRjY2E2MWJhMzczZQ==
4
+ NTAzNzU2ZjllZWI5Y2UyYjI0ZmJhYzE1MTRkMmU4ZWVlMTQ1MjhmYg==
5
5
  data.tar.gz: !binary |-
6
- ZjA1NjdlOWQwOTc3ZDVkNTBlNjA5NDA2NjYxODFhMGRiZTk4ZmMxZQ==
6
+ NWIzZDQ2N2E2ZTJmY2MwMjc0Mzc0MzdiNDBhYWJjMjY2ZWMyYjZjMQ==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- OTcyZjMzZjVjYTdlZTkwMjNiYzczYmRlNjdmMTcwMzNiM2FhODdkNjhmYzEy
10
- NzIwMDY2Mzc3MjMxMjA0ZGYzNTY0NzFlZTUyNzU1NDE4NTI5YzZjZjEyODk1
11
- ZDFjZDRlMjJiZGZhNTU2M2YwYmM0NWI0NjIxZmZiMDY0MjU0YWE=
9
+ YzkzMTFmNWZlOTQ5Yzk1MWRlMDBhMTdkNTdhMzZlOThiZDAwNmJkOWZmOWMz
10
+ ODczOTJkYjVjYjRlMTM1YjBkMTA5YmFlY2JiYjIxYmVkMTk1YTE1MzY4ZmFm
11
+ ZTE0ZWRhNmZmMWE0NzllZTMyMDQyOWQ2OWYzMDQ4NWVlMThhNDQ=
12
12
  data.tar.gz: !binary |-
13
- YmRlOGJiZGZkMjg3Y2ZmNWI2NTc3YjA0OTE2Y2I3ODEyMDhhODlhNDU2OWU2
14
- MTA5ODYzODE4ZmFhYzg3YjU2OGMxZDM4ODE5MTk5ZWYxZTI1ZGI1OWI1MTE3
15
- MTZkYTI4MzMzMjNkYWVjZjA4YWY3YWNmZTYzMTNhNTc1YjI3ODE=
13
+ MDUyYjI2ZGNmYjZkYjY3NzYzM2RkMDIyYzMxODc1YmViNmUwY2JiZjA2NmRl
14
+ NjZiMWE1ZTFjMTZmZTAzMDNiYmY5MTE0ZmYyMzczYzQxZWFiMTg5NzRhNzQw
15
+ YjlmNThmNmM0NjYxOTg4MGQzMmFmMTRlNDk4MGI5Y2NhNThjY2E=
data/lib/pluct/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Pluct
2
- VERSION = "0.0.7"
2
+ VERSION = "0.0.8"
3
3
  end
@@ -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/baas/apps
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
- - '1129'
24
+ - '2'
25
25
  Server:
26
26
  - TornadoServer/2.4.1
27
27
  Etag:
28
- - ! '"eb6a3361d671dd8cf334bdae7c539d16359583af"'
28
+ - ! '"bf21a9e8fbc5a3846fb05b4fa0859e0917b2202f"'
29
29
  Link:
30
- - <http://localhost:8888/baas/schemas/app-collection>; rel=describedby
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/baas/schemas/app-collection
36
+ - application/json; charset=UTF-8; profile=http://localhost:8888/root/schemas/root
37
37
  body:
38
38
  encoding: US-ASCII
39
- string: ! '{"items": [{"description": "Awesome Data, bro!", "name": "My Awesome
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: Sat, 22 Jun 2013 16:09:21 GMT
41
+ recorded_at: Thu, 27 Jun 2013 17:42:50 GMT
55
42
  - request:
56
43
  method: get
57
- uri: http://localhost:8888/baas/schemas/app-collection
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
- - '367'
63
+ - '336'
77
64
  Server:
78
65
  - TornadoServer/2.4.1
79
66
  Etag:
80
- - ! '"5a1c821d55fe0e75bb01048c47e50c077bd9d5c3"'
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/baas/apps", "rel": "self"},
90
- {"href": "http://localhost:8888/baas/apps", "method": "POST", "rel": "create",
91
- "schema": {"$ref": "http://localhost:8888/baas/schemas/app"}}, {"href": "http://localhost:8888/baas/apps?page={prev_page}",
92
- "rel": "prev"}, {"href": "http://localhost:8888/baas/apps?page={next_page}",
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: Sat, 22 Jun 2013 16:09:21 GMT
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
- - '1129'
103
+ - '1736'
118
104
  Server:
119
105
  - TornadoServer/2.4.1
120
106
  Etag:
121
- - ! '"eb6a3361d671dd8cf334bdae7c539d16359583af"'
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": "Awesome Data, bro!", "name": "My Awesome
133
- App", "resource_id": "4bc4e297ec43467eabe04c82a505ae24"}, {"description":
134
- "Awesome Data, bro!", "name": "My Awesome App", "resource_id": "84748678085f42c1bc4282e309de37d8"},
135
- {"description": "s", "name": "asds", "resource_id": "5c7c8df86c074d08a5e0cab8e57a6b81"},
136
- {"description": "My Awesome App", "name": "New App", "resource_id": "dd68e019f6ab48cbb48d995d276b6113"},
137
- {"description": "My Awesome App", "name": "New App", "resource_id": "ee85cecf98a44d7f928d523e1e3898ea"}],
138
- "links": [{"href": "http://localhost:8888/baas/apps/{resource_id}", "rel":
139
- "item"}, {"href": "http://localhost:8888/baas/apps/{resource_id}", "method":
140
- "PATCH", "rel": "edit"}, {"href": "http://localhost:8888/baas/apps/{resource_id}",
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
- "item_count": 5}'
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: Sat, 22 Jun 2013 16:09:21 GMT
140
+ recorded_at: Thu, 27 Jun 2013 17:42:50 GMT
148
141
  - request:
149
- method: post
150
- uri: http://localhost:8888/baas/apps
142
+ method: get
143
+ uri: http://localhost:8888/baas/schemas/app-collection
151
144
  body:
152
- encoding: UTF-8
153
- string: ! '{"name":"New App","description":"My Awesome App"}'
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: 201
168
- message: Created
158
+ code: 200
159
+ message: OK
169
160
  headers:
170
161
  Content-Length:
171
- - '0'
162
+ - '367'
172
163
  Server:
173
164
  - TornadoServer/2.4.1
174
- Location:
175
- - http://localhost:8888/baas/apps/0d63bf8c52984744b6f3963740474299
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
- - text/html; charset=UTF-8
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: Sat, 22 Jun 2013 16:09:21 GMT
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.7
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/acceptance/creates_new_app.yml
185
- - spec/support/vcr/acceptance/pluct_resource.yml
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/acceptance/creates_new_app.yml
221
- - spec/support/vcr/acceptance/pluct_resource.yml
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