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
metadata CHANGED
@@ -1,12 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rack-client
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: false
4
+ hash: 1923832052
5
+ prerelease: true
5
6
  segments:
6
7
  - 0
7
8
  - 3
8
- - 0
9
- version: 0.3.0
9
+ - 1
10
+ - pre
11
+ - a
12
+ version: 0.3.1.pre.a
10
13
  platform: ruby
11
14
  authors:
12
15
  - Tim Carey-Smith
@@ -14,23 +17,10 @@ autorequire:
14
17
  bindir: bin
15
18
  cert_chain: []
16
19
 
17
- date: 2010-06-24 00:00:00 -07:00
20
+ date: 2010-10-13 00:00:00 -07:00
18
21
  default_executable:
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
21
- version_requirements: &id001 !ruby/object:Gem::Requirement
22
- requirements:
23
- - - ">="
24
- - !ruby/object:Gem::Version
25
- segments:
26
- - 1
27
- - 0
28
- - 0
29
- version: 1.0.0
30
- requirement: *id001
31
- prerelease: false
32
- type: :runtime
33
- name: rack
22
+ dependencies: []
23
+
34
24
  description: A client wrapper around a Rack app or HTTP
35
25
  email: tim@spork.in
36
26
  executables: []
@@ -45,56 +35,155 @@ files:
45
35
  - README.textile
46
36
  - Rakefile
47
37
  - lib/rack/client/adapter/base.rb
38
+ - lib/rack/client/adapter/base.rbc
48
39
  - lib/rack/client/adapter/simple.rb
40
+ - lib/rack/client/adapter/simple.rbc
49
41
  - lib/rack/client/adapter.rb
50
- - lib/rack/client/auth/abstract/challenge.rb
51
- - lib/rack/client/auth/basic.rb
52
- - lib/rack/client/auth/digest/challenge.rb
53
- - lib/rack/client/auth/digest/md5.rb
54
- - lib/rack/client/auth/digest/params.rb
42
+ - lib/rack/client/adapter.rbc
55
43
  - lib/rack/client/body.rb
56
- - lib/rack/client/cache/cachecontrol.rb
57
- - lib/rack/client/cache/context.rb
58
- - lib/rack/client/cache/entitystore.rb
59
- - lib/rack/client/cache/key.rb
60
- - lib/rack/client/cache/metastore.rb
61
- - lib/rack/client/cache/options.rb
62
- - lib/rack/client/cache/request.rb
63
- - lib/rack/client/cache/response.rb
64
- - lib/rack/client/cache/storage.rb
65
- - lib/rack/client/cache.rb
66
- - lib/rack/client/cookie_jar/context.rb
67
- - lib/rack/client/cookie_jar/cookie.rb
68
- - lib/rack/client/cookie_jar/cookiestore.rb
69
- - lib/rack/client/cookie_jar/options.rb
70
- - lib/rack/client/cookie_jar/request.rb
71
- - lib/rack/client/cookie_jar/response.rb
72
- - lib/rack/client/cookie_jar/storage.rb
73
- - lib/rack/client/cookie_jar.rb
74
- - lib/rack/client/dual_band.rb
75
- - lib/rack/client/follow_redirects.rb
44
+ - lib/rack/client/core/dual_band.rb
45
+ - lib/rack/client/core/dual_band.rbc
46
+ - lib/rack/client/core/headers.rb
47
+ - lib/rack/client/core/headers.rbc
48
+ - lib/rack/client/core/response.rb
49
+ - lib/rack/client/core/response.rbc
50
+ - lib/rack/client/core.rb
51
+ - lib/rack/client/core.rbc
76
52
  - lib/rack/client/handler/em-http.rb
53
+ - lib/rack/client/handler/em-http.rbc
77
54
  - lib/rack/client/handler/excon.rb
55
+ - lib/rack/client/handler/excon.rbc
78
56
  - lib/rack/client/handler/net_http.rb
57
+ - lib/rack/client/handler/net_http.rbc
79
58
  - lib/rack/client/handler/typhoeus.rb
59
+ - lib/rack/client/handler/typhoeus.rbc
80
60
  - lib/rack/client/handler.rb
81
- - lib/rack/client/headers.rb
61
+ - lib/rack/client/handler.rbc
62
+ - lib/rack/client/middleware/auth/abstract/challenge.rb
63
+ - lib/rack/client/middleware/auth/abstract/challenge.rbc
64
+ - lib/rack/client/middleware/auth/basic.rb
65
+ - lib/rack/client/middleware/auth/basic.rbc
66
+ - lib/rack/client/middleware/auth/digest/challenge.rb
67
+ - lib/rack/client/middleware/auth/digest/challenge.rbc
68
+ - lib/rack/client/middleware/auth/digest/md5.rb
69
+ - lib/rack/client/middleware/auth/digest/md5.rbc
70
+ - lib/rack/client/middleware/auth/digest/params.rb
71
+ - lib/rack/client/middleware/auth/digest/params.rbc
72
+ - lib/rack/client/middleware/auth.rb
73
+ - lib/rack/client/middleware/auth.rbc
74
+ - lib/rack/client/middleware/cache/cachecontrol.rb
75
+ - lib/rack/client/middleware/cache/cachecontrol.rbc
76
+ - lib/rack/client/middleware/cache/context.rb
77
+ - lib/rack/client/middleware/cache/context.rbc
78
+ - lib/rack/client/middleware/cache/entitystore.rb
79
+ - lib/rack/client/middleware/cache/entitystore.rbc
80
+ - lib/rack/client/middleware/cache/key.rb
81
+ - lib/rack/client/middleware/cache/key.rbc
82
+ - lib/rack/client/middleware/cache/metastore.rb
83
+ - lib/rack/client/middleware/cache/metastore.rbc
84
+ - lib/rack/client/middleware/cache/options.rb
85
+ - lib/rack/client/middleware/cache/options.rbc
86
+ - lib/rack/client/middleware/cache/request.rb
87
+ - lib/rack/client/middleware/cache/request.rbc
88
+ - lib/rack/client/middleware/cache/response.rb
89
+ - lib/rack/client/middleware/cache/response.rbc
90
+ - lib/rack/client/middleware/cache/storage.rb
91
+ - lib/rack/client/middleware/cache/storage.rbc
92
+ - lib/rack/client/middleware/cache.rb
93
+ - lib/rack/client/middleware/cache.rbc
94
+ - lib/rack/client/middleware/cookie_jar/context.rb
95
+ - lib/rack/client/middleware/cookie_jar/context.rbc
96
+ - lib/rack/client/middleware/cookie_jar/cookie.rb
97
+ - lib/rack/client/middleware/cookie_jar/cookie.rbc
98
+ - lib/rack/client/middleware/cookie_jar/cookiestore.rb
99
+ - lib/rack/client/middleware/cookie_jar/cookiestore.rbc
100
+ - lib/rack/client/middleware/cookie_jar/options.rb
101
+ - lib/rack/client/middleware/cookie_jar/options.rbc
102
+ - lib/rack/client/middleware/cookie_jar/request.rb
103
+ - lib/rack/client/middleware/cookie_jar/request.rbc
104
+ - lib/rack/client/middleware/cookie_jar/response.rb
105
+ - lib/rack/client/middleware/cookie_jar/response.rbc
106
+ - lib/rack/client/middleware/cookie_jar/storage.rb
107
+ - lib/rack/client/middleware/cookie_jar/storage.rbc
108
+ - lib/rack/client/middleware/cookie_jar.rb
109
+ - lib/rack/client/middleware/cookie_jar.rbc
110
+ - lib/rack/client/middleware/follow_redirects.rb
111
+ - lib/rack/client/middleware/follow_redirects.rbc
112
+ - lib/rack/client/middleware.rb
113
+ - lib/rack/client/middleware.rbc
82
114
  - lib/rack/client/parser/base.rb
115
+ - lib/rack/client/parser/base.rbc
83
116
  - lib/rack/client/parser/body_collection.rb
117
+ - lib/rack/client/parser/body_collection.rbc
84
118
  - lib/rack/client/parser/context.rb
119
+ - lib/rack/client/parser/context.rbc
85
120
  - lib/rack/client/parser/json.rb
86
121
  - lib/rack/client/parser/middleware.rb
87
122
  - lib/rack/client/parser/request.rb
123
+ - lib/rack/client/parser/request.rbc
88
124
  - lib/rack/client/parser/response.rb
125
+ - lib/rack/client/parser/response.rbc
89
126
  - lib/rack/client/parser/yaml.rb
90
127
  - lib/rack/client/parser.rb
91
- - lib/rack/client/response.rb
128
+ - lib/rack/client/parser.rbc
92
129
  - lib/rack/client/version.rb
130
+ - lib/rack/client/version.rbc
93
131
  - lib/rack/client.rb
132
+ - lib/rack/client.rbc
94
133
  - demo/client.rb
95
134
  - demo/config.ru
96
135
  - demo/demo.rb
97
136
  - demo/demo_spec.rb
137
+ - spec/core/headers_spec.rb
138
+ - spec/core/headers_spec.rbc
139
+ - spec/core/response_spec.rb
140
+ - spec/core/response_spec.rbc
141
+ - spec/handler/em_http_spec.rb
142
+ - spec/handler/em_http_spec.rbc
143
+ - spec/handler/excon_spec.rb
144
+ - spec/handler/excon_spec.rbc
145
+ - spec/handler/net_http_spec.rb
146
+ - spec/handler/net_http_spec.rbc
147
+ - spec/handler/typhoeus_spec.rb
148
+ - spec/handler/typhoeus_spec.rbc
149
+ - spec/helpers/async_helper.rb
150
+ - spec/helpers/async_helper.rbc
151
+ - spec/helpers/em_http_helper.rb
152
+ - spec/helpers/em_http_helper.rbc
153
+ - spec/helpers/excon_helper.rb
154
+ - spec/helpers/excon_helper.rbc
155
+ - spec/helpers/handler_helper.rb
156
+ - spec/helpers/handler_helper.rbc
157
+ - spec/helpers/net_http_helper.rb
158
+ - spec/helpers/net_http_helper.rbc
159
+ - spec/helpers/sync_helper.rb
160
+ - spec/helpers/sync_helper.rbc
161
+ - spec/helpers/typhoeus_helper.rb
162
+ - spec/helpers/typhoeus_helper.rbc
163
+ - spec/middleware/cache_spec.rb
164
+ - spec/middleware/cache_spec.rbc
165
+ - spec/middleware/cookie_jar_spec.rb
166
+ - spec/middleware/cookie_jar_spec.rbc
167
+ - spec/middleware/etag_spec.rb
168
+ - spec/middleware/etag_spec.rbc
169
+ - spec/middleware/follow_redirects_spec.rb
170
+ - spec/middleware/follow_redirects_spec.rbc
171
+ - spec/middleware/lint_spec.rb
172
+ - spec/middleware/lint_spec.rbc
173
+ - spec/shared/handler_api.rb
174
+ - spec/shared/handler_api.rbc
175
+ - spec/shared/streamed_response_api.rb
176
+ - spec/shared/streamed_response_api.rbc
177
+ - spec/spec_apps/cache.ru
178
+ - spec/spec_apps/cookie.ru
179
+ - spec/spec_apps/delete.ru
180
+ - spec/spec_apps/get.ru
181
+ - spec/spec_apps/head.ru
182
+ - spec/spec_apps/hello_world.ru
183
+ - spec/spec_apps/redirect.ru
184
+ - spec/spec_apps/stream.ru
185
+ - spec/spec_config.ru
186
+ - spec/spec_helper.rb
98
187
  has_rdoc: true
99
188
  homepage: http://github.com/halorgium/rack-client
100
189
  licenses: []
@@ -105,43 +194,80 @@ rdoc_options: []
105
194
  require_paths:
106
195
  - lib
107
196
  required_ruby_version: !ruby/object:Gem::Requirement
197
+ none: false
108
198
  requirements:
109
199
  - - ">="
110
200
  - !ruby/object:Gem::Version
201
+ hash: 3
111
202
  segments:
112
203
  - 0
113
204
  version: "0"
114
205
  required_rubygems_version: !ruby/object:Gem::Requirement
206
+ none: false
115
207
  requirements:
116
- - - ">="
208
+ - - ">"
117
209
  - !ruby/object:Gem::Version
210
+ hash: 25
118
211
  segments:
119
- - 0
120
- version: "0"
212
+ - 1
213
+ - 3
214
+ - 1
215
+ version: 1.3.1
121
216
  requirements: []
122
217
 
123
218
  rubyforge_project: rack-client
124
- rubygems_version: 1.3.6
219
+ rubygems_version: 1.3.7
125
220
  signing_key:
126
221
  specification_version: 3
127
222
  summary: A client wrapper around a Rack app or HTTP
128
223
  test_files:
129
- - spec/apps/example.org.ru
130
- - spec/auth/basic_spec.rb
131
- - spec/auth/digest/md5_spec.rb
132
- - spec/cache_spec.rb
133
- - spec/cookie_jar_spec.rb
134
- - spec/endpoint_spec.rb
135
- - spec/follow_redirect_spec.rb
136
- - spec/handler/async_api_spec.rb
224
+ - spec/core/headers_spec.rb
225
+ - spec/core/headers_spec.rbc
226
+ - spec/core/response_spec.rb
227
+ - spec/core/response_spec.rbc
137
228
  - spec/handler/em_http_spec.rb
229
+ - spec/handler/em_http_spec.rbc
138
230
  - spec/handler/excon_spec.rb
231
+ - spec/handler/excon_spec.rbc
139
232
  - spec/handler/net_http_spec.rb
140
- - spec/handler/sync_api_spec.rb
233
+ - spec/handler/net_http_spec.rbc
141
234
  - spec/handler/typhoeus_spec.rb
142
- - spec/middleware_helper.rb
143
- - spec/middleware_spec.rb
144
- - spec/parser/json_spec.rb
145
- - spec/parser/yaml_spec.rb
146
- - spec/server_helper.rb
235
+ - spec/handler/typhoeus_spec.rbc
236
+ - spec/helpers/async_helper.rb
237
+ - spec/helpers/async_helper.rbc
238
+ - spec/helpers/em_http_helper.rb
239
+ - spec/helpers/em_http_helper.rbc
240
+ - spec/helpers/excon_helper.rb
241
+ - spec/helpers/excon_helper.rbc
242
+ - spec/helpers/handler_helper.rb
243
+ - spec/helpers/handler_helper.rbc
244
+ - spec/helpers/net_http_helper.rb
245
+ - spec/helpers/net_http_helper.rbc
246
+ - spec/helpers/sync_helper.rb
247
+ - spec/helpers/sync_helper.rbc
248
+ - spec/helpers/typhoeus_helper.rb
249
+ - spec/helpers/typhoeus_helper.rbc
250
+ - spec/middleware/cache_spec.rb
251
+ - spec/middleware/cache_spec.rbc
252
+ - spec/middleware/cookie_jar_spec.rb
253
+ - spec/middleware/cookie_jar_spec.rbc
254
+ - spec/middleware/etag_spec.rb
255
+ - spec/middleware/etag_spec.rbc
256
+ - spec/middleware/follow_redirects_spec.rb
257
+ - spec/middleware/follow_redirects_spec.rbc
258
+ - spec/middleware/lint_spec.rb
259
+ - spec/middleware/lint_spec.rbc
260
+ - spec/shared/handler_api.rb
261
+ - spec/shared/handler_api.rbc
262
+ - spec/shared/streamed_response_api.rb
263
+ - spec/shared/streamed_response_api.rbc
264
+ - spec/spec_apps/cache.ru
265
+ - spec/spec_apps/cookie.ru
266
+ - spec/spec_apps/delete.ru
267
+ - spec/spec_apps/get.ru
268
+ - spec/spec_apps/head.ru
269
+ - spec/spec_apps/hello_world.ru
270
+ - spec/spec_apps/redirect.ru
271
+ - spec/spec_apps/stream.ru
272
+ - spec/spec_config.ru
147
273
  - spec/spec_helper.rb
@@ -1,19 +0,0 @@
1
- module Rack
2
- module Client
3
- module Cache
4
- def self.new(backend, options={}, &b)
5
- Context.new(backend, options, &b)
6
- end
7
- end
8
- end
9
- end
10
-
11
- require 'rack/client/cache/options'
12
- require 'rack/client/cache/cachecontrol'
13
- require 'rack/client/cache/context'
14
- require 'rack/client/cache/entitystore'
15
- require 'rack/client/cache/key'
16
- require 'rack/client/cache/metastore'
17
- require 'rack/client/cache/request'
18
- require 'rack/client/cache/response'
19
- require 'rack/client/cache/storage'
@@ -1,17 +0,0 @@
1
- module Rack
2
- module Client
3
- module CookieJar
4
- def self.new(app, &b)
5
- Context.new(app, &b)
6
- end
7
- end
8
- end
9
- end
10
-
11
- require 'rack/client/cookie_jar/options'
12
- require 'rack/client/cookie_jar/cookie'
13
- require 'rack/client/cookie_jar/cookiestore'
14
- require 'rack/client/cookie_jar/context'
15
- require 'rack/client/cookie_jar/request'
16
- require 'rack/client/cookie_jar/response'
17
- require 'rack/client/cookie_jar/storage'
@@ -1,9 +0,0 @@
1
- module Rack
2
- module Client
3
- class Response < Rack::Response
4
- def initialize(status, headers, body)
5
- super(body, status, headers)
6
- end
7
- end
8
- end
9
- end
@@ -1,128 +0,0 @@
1
- require 'sinatra/base'
2
-
3
- class ExampleOrg < Sinatra::Base
4
- get "/empty" do
5
- ""
6
- end
7
-
8
- get "/ping" do
9
- "pong"
10
- end
11
-
12
- get "/redirect" do
13
- redirect request.script_name + "/after-redirect"
14
- end
15
-
16
- get "/after-redirect" do
17
- "after redirect"
18
- end
19
-
20
- head "/shelf" do
21
- response["ETag"] = "828ef3fdfa96f00ad9f27c383fc9ac7f"
22
- ""
23
- end
24
-
25
- put "/shelf/:book" do
26
- if request.body.read == "some data"
27
- response["Location"] = "/shelf/#{params[:book]}"
28
- ""
29
- else
30
- raise "Not valid"
31
- end
32
- end
33
-
34
- delete "/shelf/:book" do
35
- status 204
36
- ""
37
- end
38
-
39
- post "/posted" do
40
- if request.body.read == "some data"
41
- status 201
42
- response["Created"] = "awesome"
43
- ""
44
- else
45
- raise "Not valid"
46
- end
47
- end
48
-
49
- get "/no-etag" do
50
- ""
51
- end
52
-
53
- get '/cacheable' do
54
- if env['HTTP_IF_NONE_MATCH'] == '123456789abcde'
55
- status 304
56
- else
57
- response['ETag'] = '123456789abcde'
58
- Time.now.to_f.to_s
59
- end
60
- end
61
-
62
- get '/cookied' do
63
- if request.cookies.empty?
64
- response.set_cookie('time', :domain => 'localhost', :path => '/', :value => Time.now.to_f)
65
- response.set_cookie('time2', :domain => 'localhost', :path => '/cookied', :value => Time.now.to_f)
66
- end
67
- ''
68
- end
69
-
70
- get '/hash.:content_type' do |type|
71
- case type
72
- when 'json' then
73
- content_type 'application/json'
74
- {:foo => :bar}.to_json
75
- when 'yaml', 'yml' then
76
- content_type 'application/x-yaml'
77
- {:foo => :bar}.to_yaml
78
- end
79
- end
80
-
81
- post '/echo' do
82
- content_type request.content_type
83
- request.body.read
84
- end
85
- end
86
-
87
- require 'pp'
88
- class Debug
89
- def initialize(app)
90
- @app = app
91
- end
92
-
93
- def call(env)
94
- puts "*" * 80
95
- puts "env is:"
96
- pp env
97
- res = @app.call(env)
98
- puts "response is:"
99
- pp res
100
- puts "*" * 80
101
- res
102
- end
103
- end
104
-
105
- use Rack::CommonLogger
106
- use Debug if ENV["DEBUG"]
107
-
108
- map "http://localhost/" do
109
- map "/auth/basic/" do
110
- use Rack::Auth::Basic do |username,password|
111
- username == "username" && password == "password"
112
- end
113
- run ExampleOrg
114
- end
115
-
116
- map "/auth/digest/" do
117
- use DigestServer, 'My Realm' do |username|
118
- {"username" => "password"}[username]
119
- end
120
- run ExampleOrg
121
- end
122
-
123
- map "/" do
124
- run ExampleOrg
125
- end
126
- end
127
-
128
- # vim:filetype=ruby
@@ -1,69 +0,0 @@
1
- require File.dirname(__FILE__) + '/../spec_helper'
2
-
3
- describe Rack::Client::Auth::Basic do
4
- context 'Synchronous API' do
5
- context 'with basic auth middleware' do
6
- let(:client) do
7
- Rack::Client.new("http://localhost:#{server.port}") do
8
- use Rack::Client::Auth::Basic, "username", "password"
9
- run Rack::Client::Handler::NetHTTP
10
- end
11
- end
12
-
13
- it "succeeds with authorization" do
14
- response = client.get("http://localhost:#{server.port}/auth/basic/ping")
15
- response.status.should == 200
16
- response.headers["Content-Type"].should == "text/html"
17
- response.body.to_s.should == "pong"
18
- end
19
- end
20
-
21
- context 'without basic auth middleware' do
22
- let(:client) do
23
- Rack::Client.new("http://localhost:#{server.port}") do
24
- run Rack::Client::Handler::NetHTTP
25
- end
26
- end
27
-
28
- it "fails with authorization" do
29
- response = client.get("http://localhost:#{server.port}/auth/basic/ping")
30
- response.status.should == 401
31
- response.body.to_s.should == ""
32
- end
33
- end
34
- end
35
-
36
- context 'Asynchronous API' do
37
- context 'with basic auth middleware' do
38
- let(:client) do
39
- Rack::Client.new("http://localhost:#{server.port}") do
40
- use Rack::Client::Auth::Basic, "username", "password"
41
- run Rack::Client::Handler::NetHTTP
42
- end
43
- end
44
-
45
- it "succeeds with authorization" do
46
- client.get("http://localhost:#{server.port}/auth/basic/ping") do |response|
47
- response.status.should == 200
48
- response.headers["Content-Type"].should == "text/html"
49
- response.body.to_s.should == "pong"
50
- end
51
- end
52
- end
53
-
54
- context 'without basic auth middleware' do
55
- let(:client) do
56
- Rack::Client.new("http://localhost:#{server.port}") do
57
- run Rack::Client::Handler::NetHTTP
58
- end
59
- end
60
-
61
- it "fails with authorization" do
62
- client.get("http://localhost:#{server.port}/auth/basic/ping") do |response|
63
- response.status.should == 401
64
- response.body.to_s.should == ""
65
- end
66
- end
67
- end
68
- end
69
- end
@@ -1,69 +0,0 @@
1
- require File.dirname(__FILE__) + '/../../spec_helper'
2
-
3
- describe Rack::Client::Auth::Basic do
4
- context 'Synchronous API' do
5
- context 'with digest auth middleware' do
6
- let(:client) do
7
- Rack::Client.new("http://localhost:#{server.port}") do
8
- use Rack::Client::Auth::Digest::MD5, "My Realm", "username", "password"
9
- run Rack::Client::Handler::NetHTTP
10
- end
11
- end
12
-
13
- it "succeeds with authorization" do
14
- response = client.get("http://localhost:#{server.port}/auth/digest/ping")
15
- response.status.should == 200
16
- response.headers["Content-Type"].should == "text/html"
17
- response.body.to_s.should == "pong"
18
- end
19
- end
20
-
21
- context 'without digest auth middleware' do
22
- let(:client) do
23
- Rack::Client.new("http://localhost:#{server.port}") do
24
- run Rack::Client::Handler::NetHTTP
25
- end
26
- end
27
-
28
- it "fails with authorization" do
29
- response = client.get("http://localhost:#{server.port}/auth/digest/ping")
30
- response.status.should == 401
31
- response.body.to_s.should == ""
32
- end
33
- end
34
- end
35
-
36
- context 'Asynchronous API' do
37
- context 'with digest auth middleware' do
38
- let(:client) do
39
- Rack::Client.new("http://localhost:#{server.port}") do
40
- use Rack::Client::Auth::Digest::MD5, "My Realm", "username", "password"
41
- run Rack::Client::Handler::NetHTTP
42
- end
43
- end
44
-
45
- it "succeeds with authorization" do
46
- response = client.get("http://localhost:#{server.port}/auth/digest/ping") do |response|
47
- response.status.should == 200
48
- response.headers["Content-Type"].should == "text/html"
49
- response.body.to_s.should == "pong"
50
- end
51
- end
52
- end
53
-
54
- context 'without digest auth middleware' do
55
- let(:client) do
56
- Rack::Client.new("http://localhost:#{server.port}") do
57
- run Rack::Client::Handler::NetHTTP
58
- end
59
- end
60
-
61
- it "fails with authorization" do
62
- response = client.get("http://localhost:#{server.port}/auth/digest/ping") do |response|
63
- response.status.should == 401
64
- response.body.to_s.should == ""
65
- end
66
- end
67
- end
68
- end
69
- end
data/spec/cache_spec.rb DELETED
@@ -1,40 +0,0 @@
1
- require File.dirname(__FILE__) + '/spec_helper'
2
-
3
- describe Rack::Client::Cache do
4
- let(:client) do
5
- Rack::Client.new("http://localhost:#{server.port}") do
6
- use Rack::Client::Cache
7
- run Rack::Client::Handler::NetHTTP
8
- end
9
- end
10
-
11
- after(:each) do
12
- Rack::Client::Cache::Storage.instance.clear
13
- end
14
-
15
- context 'Synchronous API' do
16
- it "successfully retrieves cache hits" do
17
- response = client.get("http://localhost:#{server.port}/cacheable")
18
- response.headers['X-Rack-Client-Cache'].should include('store')
19
- original_body = response.body
20
-
21
- response = client.get("http://localhost:#{server.port}/cacheable")
22
- response.headers['X-Rack-Client-Cache'].should include('fresh')
23
- response.body.should == original_body
24
- end
25
- end
26
-
27
- context 'Asynchronous API' do
28
- it "successfully retrieves cache hits" do
29
- client.get("http://localhost:#{server.port}/cacheable") do |response|
30
- response.headers['X-Rack-Client-Cache'].should include('store')
31
- original_body = response.body
32
-
33
- client.get("http://localhost:#{server.port}/cacheable") do |response|
34
- response.headers['X-Rack-Client-Cache'].should include('fresh')
35
- response.body.should == original_body
36
- end
37
- end
38
- end
39
- end
40
- end