rack-client 0.3.0 → 0.3.1.pre.a

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.
Files changed (153) hide show
  1. data/Rakefile +12 -14
  2. data/lib/rack/client/adapter/base.rb +23 -14
  3. data/lib/rack/client/adapter/base.rbc +1802 -0
  4. data/lib/rack/client/adapter/simple.rb +53 -21
  5. data/lib/rack/client/adapter/simple.rbc +2063 -0
  6. data/lib/rack/client/adapter.rbc +225 -0
  7. data/lib/rack/client/{dual_band.rb → core/dual_band.rb} +0 -0
  8. data/lib/rack/client/core/dual_band.rbc +380 -0
  9. data/lib/rack/client/{headers.rb → core/headers.rb} +1 -1
  10. data/lib/rack/client/core/headers.rbc +1811 -0
  11. data/lib/rack/client/core/response.rb +50 -0
  12. data/lib/rack/client/core/response.rbc +1105 -0
  13. data/lib/rack/client/core.rb +3 -0
  14. data/lib/rack/client/core.rbc +85 -0
  15. data/lib/rack/client/handler/em-http.rb +3 -7
  16. data/lib/rack/client/handler/em-http.rbc +1648 -0
  17. data/lib/rack/client/handler/excon.rb +6 -14
  18. data/lib/rack/client/handler/excon.rbc +1270 -0
  19. data/lib/rack/client/handler/net_http.rb +7 -4
  20. data/lib/rack/client/handler/net_http.rbc +2400 -0
  21. data/lib/rack/client/handler/typhoeus.rb +12 -5
  22. data/lib/rack/client/handler/typhoeus.rbc +1885 -0
  23. data/lib/rack/client/handler.rbc +340 -0
  24. data/lib/rack/client/{auth → middleware/auth}/abstract/challenge.rb +0 -0
  25. data/lib/rack/client/middleware/auth/abstract/challenge.rbc +1453 -0
  26. data/lib/rack/client/{auth → middleware/auth}/basic.rb +0 -0
  27. data/lib/rack/client/middleware/auth/basic.rbc +1566 -0
  28. data/lib/rack/client/{auth → middleware/auth}/digest/challenge.rb +0 -0
  29. data/lib/rack/client/middleware/auth/digest/challenge.rbc +1124 -0
  30. data/lib/rack/client/{auth → middleware/auth}/digest/md5.rb +0 -0
  31. data/lib/rack/client/middleware/auth/digest/md5.rbc +2241 -0
  32. data/lib/rack/client/{auth → middleware/auth}/digest/params.rb +0 -0
  33. data/lib/rack/client/middleware/auth/digest/params.rbc +365 -0
  34. data/lib/rack/client/middleware/auth.rb +5 -0
  35. data/lib/rack/client/middleware/auth.rbc +117 -0
  36. data/lib/rack/client/{cache → middleware/cache}/cachecontrol.rb +0 -0
  37. data/lib/rack/client/middleware/cache/cachecontrol.rbc +1610 -0
  38. data/lib/rack/client/{cache → middleware/cache}/context.rb +12 -3
  39. data/lib/rack/client/middleware/cache/context.rbc +2074 -0
  40. data/lib/rack/client/{cache → middleware/cache}/entitystore.rb +0 -0
  41. data/lib/rack/client/middleware/cache/entitystore.rbc +1619 -0
  42. data/lib/rack/client/{cache → middleware/cache}/key.rb +0 -0
  43. data/lib/rack/client/middleware/cache/key.rbc +1217 -0
  44. data/lib/rack/client/{cache → middleware/cache}/metastore.rb +0 -0
  45. data/lib/rack/client/middleware/cache/metastore.rbc +2754 -0
  46. data/lib/rack/client/{cache → middleware/cache}/options.rb +0 -0
  47. data/lib/rack/client/middleware/cache/options.rbc +1844 -0
  48. data/lib/rack/client/{cache → middleware/cache}/request.rb +0 -0
  49. data/lib/rack/client/middleware/cache/request.rbc +1020 -0
  50. data/lib/rack/client/{cache → middleware/cache}/response.rb +19 -0
  51. data/lib/rack/client/middleware/cache/response.rbc +1540 -0
  52. data/lib/rack/client/{cache → middleware/cache}/storage.rb +0 -0
  53. data/lib/rack/client/middleware/cache/storage.rbc +1106 -0
  54. data/lib/rack/client/middleware/cache.rb +19 -0
  55. data/lib/rack/client/middleware/cache.rbc +528 -0
  56. data/lib/rack/client/{cookie_jar → middleware/cookie_jar}/context.rb +0 -0
  57. data/lib/rack/client/middleware/cookie_jar/context.rbc +1576 -0
  58. data/lib/rack/client/{cookie_jar → middleware/cookie_jar}/cookie.rb +0 -0
  59. data/lib/rack/client/middleware/cookie_jar/cookie.rbc +2393 -0
  60. data/lib/rack/client/{cookie_jar → middleware/cookie_jar}/cookiestore.rb +0 -0
  61. data/lib/rack/client/middleware/cookie_jar/cookiestore.rbc +1209 -0
  62. data/lib/rack/client/{cookie_jar → middleware/cookie_jar}/options.rb +0 -0
  63. data/lib/rack/client/middleware/cookie_jar/options.rbc +1305 -0
  64. data/lib/rack/client/{cookie_jar → middleware/cookie_jar}/request.rb +0 -0
  65. data/lib/rack/client/middleware/cookie_jar/request.rbc +568 -0
  66. data/lib/rack/client/{cookie_jar → middleware/cookie_jar}/response.rb +0 -0
  67. data/lib/rack/client/middleware/cookie_jar/response.rbc +616 -0
  68. data/lib/rack/client/{cookie_jar → middleware/cookie_jar}/storage.rb +0 -0
  69. data/lib/rack/client/middleware/cookie_jar/storage.rbc +894 -0
  70. data/lib/rack/client/middleware/cookie_jar.rb +17 -0
  71. data/lib/rack/client/middleware/cookie_jar.rbc +471 -0
  72. data/lib/rack/client/{follow_redirects.rb → middleware/follow_redirects.rb} +0 -0
  73. data/lib/rack/client/middleware/follow_redirects.rbc +1344 -0
  74. data/lib/rack/client/middleware.rb +4 -0
  75. data/lib/rack/client/middleware.rbc +101 -0
  76. data/lib/rack/client/parser/base.rbc +898 -0
  77. data/lib/rack/client/parser/body_collection.rbc +1220 -0
  78. data/lib/rack/client/parser/context.rbc +540 -0
  79. data/lib/rack/client/parser/request.rbc +631 -0
  80. data/lib/rack/client/parser/response.rbc +663 -0
  81. data/lib/rack/client/parser.rbc +484 -0
  82. data/lib/rack/client/version.rb +1 -1
  83. data/lib/rack/client/version.rbc +203 -0
  84. data/lib/rack/client.rb +3 -13
  85. data/lib/rack/client.rbc +701 -0
  86. data/spec/core/headers_spec.rb +47 -0
  87. data/spec/core/headers_spec.rbc +1674 -0
  88. data/spec/core/response_spec.rb +78 -0
  89. data/spec/core/response_spec.rbc +2244 -0
  90. data/spec/handler/em_http_spec.rb +4 -19
  91. data/spec/handler/em_http_spec.rbc +224 -0
  92. data/spec/handler/excon_spec.rb +4 -4
  93. data/spec/handler/excon_spec.rbc +224 -0
  94. data/spec/handler/net_http_spec.rb +7 -4
  95. data/spec/handler/net_http_spec.rbc +307 -0
  96. data/spec/handler/typhoeus_spec.rb +6 -17
  97. data/spec/handler/typhoeus_spec.rbc +307 -0
  98. data/spec/helpers/async_helper.rb +31 -0
  99. data/spec/helpers/async_helper.rbc +843 -0
  100. data/spec/helpers/em_http_helper.rb +24 -0
  101. data/spec/helpers/em_http_helper.rbc +663 -0
  102. data/spec/helpers/excon_helper.rb +13 -0
  103. data/spec/helpers/excon_helper.rbc +461 -0
  104. data/spec/helpers/handler_helper.rb +68 -0
  105. data/spec/helpers/handler_helper.rbc +1769 -0
  106. data/spec/helpers/net_http_helper.rb +26 -0
  107. data/spec/helpers/net_http_helper.rbc +806 -0
  108. data/spec/helpers/sync_helper.rb +9 -0
  109. data/spec/helpers/sync_helper.rbc +311 -0
  110. data/spec/helpers/typhoeus_helper.rb +32 -0
  111. data/spec/helpers/typhoeus_helper.rbc +936 -0
  112. data/spec/middleware/cache_spec.rb +25 -0
  113. data/spec/middleware/cache_spec.rbc +712 -0
  114. data/spec/middleware/cookie_jar_spec.rb +19 -0
  115. data/spec/middleware/cookie_jar_spec.rbc +614 -0
  116. data/spec/middleware/etag_spec.rb +10 -0
  117. data/spec/middleware/etag_spec.rbc +438 -0
  118. data/spec/middleware/follow_redirects_spec.rb +12 -0
  119. data/spec/middleware/follow_redirects_spec.rbc +402 -0
  120. data/spec/middleware/lint_spec.rb +10 -0
  121. data/spec/middleware/lint_spec.rbc +392 -0
  122. data/spec/shared/handler_api.rb +33 -0
  123. data/spec/shared/handler_api.rbc +1340 -0
  124. data/spec/shared/streamed_response_api.rb +14 -0
  125. data/spec/shared/streamed_response_api.rbc +508 -0
  126. data/spec/spec_apps/cache.ru +14 -0
  127. data/spec/spec_apps/cookie.ru +12 -0
  128. data/spec/spec_apps/delete.ru +10 -0
  129. data/spec/spec_apps/get.ru +13 -0
  130. data/spec/spec_apps/head.ru +10 -0
  131. data/spec/spec_apps/hello_world.ru +1 -0
  132. data/spec/spec_apps/redirect.ru +13 -0
  133. data/spec/spec_apps/stream.ru +9 -0
  134. data/spec/spec_config.ru +10 -0
  135. data/spec/spec_helper.rb +14 -12
  136. metadata +190 -64
  137. data/lib/rack/client/cache.rb +0 -19
  138. data/lib/rack/client/cookie_jar.rb +0 -17
  139. data/lib/rack/client/response.rb +0 -9
  140. data/spec/apps/example.org.ru +0 -128
  141. data/spec/auth/basic_spec.rb +0 -69
  142. data/spec/auth/digest/md5_spec.rb +0 -69
  143. data/spec/cache_spec.rb +0 -40
  144. data/spec/cookie_jar_spec.rb +0 -37
  145. data/spec/endpoint_spec.rb +0 -30
  146. data/spec/follow_redirect_spec.rb +0 -27
  147. data/spec/handler/async_api_spec.rb +0 -69
  148. data/spec/handler/sync_api_spec.rb +0 -55
  149. data/spec/middleware_helper.rb +0 -37
  150. data/spec/middleware_spec.rb +0 -53
  151. data/spec/parser/json_spec.rb +0 -22
  152. data/spec/parser/yaml_spec.rb +0 -22
  153. data/spec/server_helper.rb +0 -72
@@ -0,0 +1,392 @@
1
+ !RBIX
2
+ 0
3
+ x
4
+ M
5
+ 1
6
+ n
7
+ n
8
+ x
9
+ 10
10
+ __script__
11
+ i
12
+ 24
13
+ 5
14
+ 7
15
+ 0
16
+ 64
17
+ 47
18
+ 49
19
+ 1
20
+ 1
21
+ 15
22
+ 5
23
+ 45
24
+ 2
25
+ 3
26
+ 43
27
+ 4
28
+ 56
29
+ 5
30
+ 47
31
+ 50
32
+ 6
33
+ 1
34
+ 15
35
+ 2
36
+ 11
37
+ I
38
+ 3
39
+ I
40
+ 0
41
+ I
42
+ 0
43
+ I
44
+ 0
45
+ n
46
+ p
47
+ 7
48
+ s
49
+ 11
50
+ spec_helper
51
+ x
52
+ 7
53
+ require
54
+ x
55
+ 4
56
+ Rack
57
+ n
58
+ x
59
+ 4
60
+ Lint
61
+ M
62
+ 1
63
+ p
64
+ 2
65
+ x
66
+ 9
67
+ for_block
68
+ t
69
+ n
70
+ x
71
+ 9
72
+ __block__
73
+ i
74
+ 13
75
+ 5
76
+ 45
77
+ 0
78
+ 1
79
+ 43
80
+ 2
81
+ 56
82
+ 3
83
+ 47
84
+ 50
85
+ 4
86
+ 1
87
+ 11
88
+ I
89
+ 4
90
+ I
91
+ 0
92
+ I
93
+ 0
94
+ I
95
+ 0
96
+ I
97
+ -2
98
+ p
99
+ 5
100
+ x
101
+ 4
102
+ Rack
103
+ n
104
+ x
105
+ 4
106
+ Lint
107
+ M
108
+ 1
109
+ p
110
+ 2
111
+ x
112
+ 9
113
+ for_block
114
+ t
115
+ n
116
+ x
117
+ 9
118
+ __block__
119
+ i
120
+ 11
121
+ 5
122
+ 7
123
+ 0
124
+ 64
125
+ 56
126
+ 1
127
+ 47
128
+ 50
129
+ 2
130
+ 1
131
+ 11
132
+ I
133
+ 4
134
+ I
135
+ 0
136
+ I
137
+ 0
138
+ I
139
+ 0
140
+ I
141
+ -2
142
+ p
143
+ 3
144
+ s
145
+ 46
146
+ will work with Rack::Lint right out of the box
147
+ M
148
+ 1
149
+ p
150
+ 2
151
+ x
152
+ 9
153
+ for_block
154
+ t
155
+ n
156
+ x
157
+ 9
158
+ __block__
159
+ i
160
+ 16
161
+ 5
162
+ 56
163
+ 0
164
+ 47
165
+ 50
166
+ 1
167
+ 0
168
+ 15
169
+ 5
170
+ 56
171
+ 2
172
+ 47
173
+ 50
174
+ 3
175
+ 0
176
+ 11
177
+ I
178
+ 3
179
+ I
180
+ 0
181
+ I
182
+ 0
183
+ I
184
+ 0
185
+ I
186
+ -2
187
+ p
188
+ 4
189
+ M
190
+ 1
191
+ p
192
+ 2
193
+ x
194
+ 9
195
+ for_block
196
+ t
197
+ n
198
+ x
199
+ 9
200
+ __block__
201
+ i
202
+ 9
203
+ 5
204
+ 7
205
+ 0
206
+ 64
207
+ 47
208
+ 49
209
+ 1
210
+ 1
211
+ 11
212
+ I
213
+ 3
214
+ I
215
+ 0
216
+ I
217
+ 0
218
+ I
219
+ 0
220
+ I
221
+ -2
222
+ p
223
+ 2
224
+ s
225
+ 12
226
+ /hello_world
227
+ x
228
+ 3
229
+ get
230
+ p
231
+ 3
232
+ I
233
+ 0
234
+ I
235
+ 6
236
+ I
237
+ 9
238
+ x
239
+ 56
240
+ /Users/ben/code/rack-client/spec/middleware/lint_spec.rb
241
+ p
242
+ 0
243
+ x
244
+ 7
245
+ request
246
+ M
247
+ 1
248
+ p
249
+ 2
250
+ x
251
+ 9
252
+ for_block
253
+ t
254
+ n
255
+ x
256
+ 9
257
+ __block__
258
+ i
259
+ 12
260
+ 5
261
+ 48
262
+ 0
263
+ 49
264
+ 1
265
+ 0
266
+ 7
267
+ 2
268
+ 64
269
+ 83
270
+ 3
271
+ 11
272
+ I
273
+ 3
274
+ I
275
+ 0
276
+ I
277
+ 0
278
+ I
279
+ 0
280
+ I
281
+ -2
282
+ p
283
+ 4
284
+ x
285
+ 4
286
+ body
287
+ x
288
+ 6
289
+ should
290
+ s
291
+ 12
292
+ Hello World!
293
+ x
294
+ 2
295
+ ==
296
+ p
297
+ 3
298
+ I
299
+ 0
300
+ I
301
+ 7
302
+ I
303
+ c
304
+ x
305
+ 56
306
+ /Users/ben/code/rack-client/spec/middleware/lint_spec.rb
307
+ p
308
+ 0
309
+ x
310
+ 8
311
+ response
312
+ p
313
+ 7
314
+ I
315
+ 0
316
+ I
317
+ 5
318
+ I
319
+ 0
320
+ I
321
+ 6
322
+ I
323
+ 8
324
+ I
325
+ 7
326
+ I
327
+ 10
328
+ x
329
+ 56
330
+ /Users/ben/code/rack-client/spec/middleware/lint_spec.rb
331
+ p
332
+ 0
333
+ x
334
+ 2
335
+ it
336
+ p
337
+ 5
338
+ I
339
+ 0
340
+ I
341
+ 4
342
+ I
343
+ 0
344
+ I
345
+ 5
346
+ I
347
+ b
348
+ x
349
+ 56
350
+ /Users/ben/code/rack-client/spec/middleware/lint_spec.rb
351
+ p
352
+ 0
353
+ x
354
+ 21
355
+ sync_handler_contexts
356
+ p
357
+ 5
358
+ I
359
+ 0
360
+ I
361
+ 3
362
+ I
363
+ 0
364
+ I
365
+ 4
366
+ I
367
+ d
368
+ x
369
+ 56
370
+ /Users/ben/code/rack-client/spec/middleware/lint_spec.rb
371
+ p
372
+ 0
373
+ x
374
+ 8
375
+ describe
376
+ p
377
+ 5
378
+ I
379
+ 0
380
+ I
381
+ 1
382
+ I
383
+ 9
384
+ I
385
+ 3
386
+ I
387
+ 18
388
+ x
389
+ 56
390
+ /Users/ben/code/rack-client/spec/middleware/lint_spec.rb
391
+ p
392
+ 0
@@ -0,0 +1,33 @@
1
+ shared_examples_for "Handler API" do
2
+
3
+ context 'GET request' do
4
+ it 'has the correct status code' do
5
+ request { get('/get/hello_world') }
6
+ response { status.should == 200 }
7
+ end
8
+
9
+ it 'has the correct headers' do
10
+ request { get('/get/hello_world') }
11
+ response { headers.keys.should == %w[Content-Type Date Content-Length Connection] }
12
+ end
13
+
14
+ it 'has the correct body' do
15
+ request { get('/get/hello_world') }
16
+ response { body.should == 'Hello World!' }
17
+ end
18
+ end
19
+
20
+ context 'DELETE request' do
21
+ it 'can handle a No Content response' do
22
+ request { delete('/delete/no-content') }
23
+ response { body.should == '' }
24
+ end
25
+ end
26
+
27
+ context 'HEAD request' do
28
+ it 'can handle ETag headers' do
29
+ request { head('/head/etag') }
30
+ response { headers['ETag'].should == 'DEADBEEF' }
31
+ end
32
+ end
33
+ end