rack-client 0.3.0 → 0.3.1.pre.a

Sign up to get free protection for your applications and to get access to all the features.
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,701 @@
1
+ !RBIX
2
+ 0
3
+ x
4
+ M
5
+ 1
6
+ n
7
+ n
8
+ x
9
+ 10
10
+ __script__
11
+ i
12
+ 109
13
+ 5
14
+ 7
15
+ 0
16
+ 64
17
+ 47
18
+ 49
19
+ 1
20
+ 1
21
+ 15
22
+ 5
23
+ 7
24
+ 2
25
+ 64
26
+ 47
27
+ 49
28
+ 1
29
+ 1
30
+ 15
31
+ 5
32
+ 7
33
+ 3
34
+ 64
35
+ 47
36
+ 49
37
+ 1
38
+ 1
39
+ 15
40
+ 99
41
+ 7
42
+ 4
43
+ 65
44
+ 49
45
+ 5
46
+ 2
47
+ 13
48
+ 99
49
+ 12
50
+ 7
51
+ 6
52
+ 12
53
+ 7
54
+ 7
55
+ 12
56
+ 65
57
+ 12
58
+ 49
59
+ 8
60
+ 4
61
+ 15
62
+ 49
63
+ 6
64
+ 0
65
+ 15
66
+ 5
67
+ 7
68
+ 9
69
+ 64
70
+ 47
71
+ 49
72
+ 1
73
+ 1
74
+ 15
75
+ 5
76
+ 7
77
+ 10
78
+ 64
79
+ 47
80
+ 49
81
+ 1
82
+ 1
83
+ 15
84
+ 5
85
+ 7
86
+ 11
87
+ 64
88
+ 47
89
+ 49
90
+ 1
91
+ 1
92
+ 15
93
+ 5
94
+ 7
95
+ 12
96
+ 64
97
+ 47
98
+ 49
99
+ 1
100
+ 1
101
+ 15
102
+ 5
103
+ 7
104
+ 13
105
+ 64
106
+ 47
107
+ 49
108
+ 1
109
+ 1
110
+ 15
111
+ 5
112
+ 7
113
+ 14
114
+ 64
115
+ 47
116
+ 49
117
+ 1
118
+ 1
119
+ 15
120
+ 2
121
+ 11
122
+ I
123
+ 6
124
+ I
125
+ 0
126
+ I
127
+ 0
128
+ I
129
+ 0
130
+ n
131
+ p
132
+ 15
133
+ s
134
+ 11
135
+ forwardable
136
+ x
137
+ 7
138
+ require
139
+ s
140
+ 3
141
+ uri
142
+ s
143
+ 4
144
+ rack
145
+ x
146
+ 4
147
+ Rack
148
+ x
149
+ 11
150
+ open_module
151
+ x
152
+ 15
153
+ __module_init__
154
+ M
155
+ 1
156
+ n
157
+ n
158
+ x
159
+ 4
160
+ Rack
161
+ i
162
+ 28
163
+ 5
164
+ 66
165
+ 99
166
+ 7
167
+ 0
168
+ 65
169
+ 49
170
+ 1
171
+ 2
172
+ 13
173
+ 99
174
+ 12
175
+ 7
176
+ 2
177
+ 12
178
+ 7
179
+ 3
180
+ 12
181
+ 65
182
+ 12
183
+ 49
184
+ 4
185
+ 4
186
+ 15
187
+ 49
188
+ 2
189
+ 0
190
+ 11
191
+ I
192
+ 6
193
+ I
194
+ 0
195
+ I
196
+ 0
197
+ I
198
+ 0
199
+ n
200
+ p
201
+ 5
202
+ x
203
+ 6
204
+ Client
205
+ x
206
+ 11
207
+ open_module
208
+ x
209
+ 15
210
+ __module_init__
211
+ M
212
+ 1
213
+ n
214
+ n
215
+ x
216
+ 6
217
+ Client
218
+ i
219
+ 48
220
+ 5
221
+ 66
222
+ 5
223
+ 45
224
+ 0
225
+ 1
226
+ 47
227
+ 49
228
+ 2
229
+ 1
230
+ 15
231
+ 5
232
+ 99
233
+ 12
234
+ 49
235
+ 3
236
+ 1
237
+ 13
238
+ 99
239
+ 12
240
+ 7
241
+ 4
242
+ 12
243
+ 7
244
+ 5
245
+ 12
246
+ 65
247
+ 12
248
+ 49
249
+ 6
250
+ 4
251
+ 15
252
+ 54
253
+ 50
254
+ 4
255
+ 0
256
+ 15
257
+ 99
258
+ 7
259
+ 7
260
+ 7
261
+ 8
262
+ 65
263
+ 5
264
+ 49
265
+ 6
266
+ 4
267
+ 11
268
+ I
269
+ 6
270
+ I
271
+ 0
272
+ I
273
+ 0
274
+ I
275
+ 0
276
+ n
277
+ p
278
+ 9
279
+ x
280
+ 11
281
+ Forwardable
282
+ n
283
+ x
284
+ 7
285
+ include
286
+ x
287
+ 16
288
+ object_metaclass
289
+ x
290
+ 18
291
+ __metaclass_init__
292
+ M
293
+ 1
294
+ n
295
+ n
296
+ x
297
+ 18
298
+ __metaclass_init__
299
+ i
300
+ 29
301
+ 5
302
+ 66
303
+ 5
304
+ 45
305
+ 0
306
+ 1
307
+ 47
308
+ 49
309
+ 2
310
+ 1
311
+ 15
312
+ 5
313
+ 7
314
+ 3
315
+ 7
316
+ 4
317
+ 7
318
+ 5
319
+ 7
320
+ 6
321
+ 7
322
+ 7
323
+ 7
324
+ 8
325
+ 47
326
+ 49
327
+ 9
328
+ 6
329
+ 11
330
+ I
331
+ 7
332
+ I
333
+ 0
334
+ I
335
+ 0
336
+ I
337
+ 0
338
+ n
339
+ p
340
+ 10
341
+ x
342
+ 11
343
+ Forwardable
344
+ n
345
+ x
346
+ 6
347
+ extend
348
+ x
349
+ 3
350
+ new
351
+ x
352
+ 4
353
+ head
354
+ x
355
+ 3
356
+ get
357
+ x
358
+ 3
359
+ put
360
+ x
361
+ 4
362
+ post
363
+ x
364
+ 6
365
+ delete
366
+ x
367
+ 14
368
+ def_delegators
369
+ p
370
+ 5
371
+ I
372
+ 2
373
+ I
374
+ a
375
+ I
376
+ b
377
+ I
378
+ b
379
+ I
380
+ 1d
381
+ x
382
+ 46
383
+ /Users/ben/code/rack-client/lib/rack/client.rb
384
+ p
385
+ 0
386
+ x
387
+ 13
388
+ attach_method
389
+ x
390
+ 3
391
+ new
392
+ M
393
+ 1
394
+ n
395
+ n
396
+ x
397
+ 3
398
+ new
399
+ i
400
+ 56
401
+ 95
402
+ 19
403
+ 1
404
+ 15
405
+ 20
406
+ 1
407
+ 13
408
+ 10
409
+ 19
410
+ 15
411
+ 5
412
+ 56
413
+ 0
414
+ 47
415
+ 50
416
+ 1
417
+ 0
418
+ 19
419
+ 1
420
+ 15
421
+ 45
422
+ 2
423
+ 3
424
+ 43
425
+ 4
426
+ 43
427
+ 5
428
+ 45
429
+ 2
430
+ 6
431
+ 43
432
+ 7
433
+ 20
434
+ 1
435
+ 13
436
+ 70
437
+ 10
438
+ 45
439
+ 44
440
+ 43
441
+ 8
442
+ 12
443
+ 49
444
+ 9
445
+ 1
446
+ 50
447
+ 10
448
+ 0
449
+ 20
450
+ 0
451
+ 36
452
+ 1
453
+ 51
454
+ 11
455
+ 1
456
+ 11
457
+ I
458
+ 6
459
+ I
460
+ 2
461
+ I
462
+ 0
463
+ I
464
+ 0
465
+ I
466
+ 0
467
+ p
468
+ 12
469
+ M
470
+ 1
471
+ p
472
+ 2
473
+ x
474
+ 9
475
+ for_block
476
+ t
477
+ n
478
+ x
479
+ 3
480
+ new
481
+ i
482
+ 15
483
+ 5
484
+ 45
485
+ 0
486
+ 1
487
+ 43
488
+ 2
489
+ 43
490
+ 3
491
+ 43
492
+ 4
493
+ 47
494
+ 49
495
+ 5
496
+ 1
497
+ 11
498
+ I
499
+ 3
500
+ I
501
+ 0
502
+ I
503
+ 0
504
+ I
505
+ 0
506
+ I
507
+ -2
508
+ p
509
+ 6
510
+ x
511
+ 4
512
+ Rack
513
+ n
514
+ x
515
+ 6
516
+ Client
517
+ x
518
+ 7
519
+ Handler
520
+ x
521
+ 7
522
+ NetHTTP
523
+ x
524
+ 3
525
+ run
526
+ p
527
+ 3
528
+ I
529
+ 0
530
+ I
531
+ f
532
+ I
533
+ f
534
+ x
535
+ 46
536
+ /Users/ben/code/rack-client/lib/rack/client.rb
537
+ p
538
+ 0
539
+ x
540
+ 6
541
+ lambda
542
+ x
543
+ 4
544
+ Rack
545
+ n
546
+ x
547
+ 6
548
+ Client
549
+ x
550
+ 6
551
+ Simple
552
+ n
553
+ x
554
+ 7
555
+ Builder
556
+ x
557
+ 4
558
+ Proc
559
+ x
560
+ 14
561
+ __from_block__
562
+ x
563
+ 3
564
+ app
565
+ x
566
+ 3
567
+ new
568
+ p
569
+ 7
570
+ I
571
+ 0
572
+ I
573
+ e
574
+ I
575
+ 4
576
+ I
577
+ f
578
+ I
579
+ 14
580
+ I
581
+ 10
582
+ I
583
+ 38
584
+ x
585
+ 46
586
+ /Users/ben/code/rack-client/lib/rack/client.rb
587
+ p
588
+ 2
589
+ x
590
+ 1
591
+ a
592
+ x
593
+ 5
594
+ block
595
+ p
596
+ 7
597
+ I
598
+ 2
599
+ I
600
+ 7
601
+ I
602
+ b
603
+ I
604
+ 9
605
+ I
606
+ 25
607
+ I
608
+ e
609
+ I
610
+ 30
611
+ x
612
+ 46
613
+ /Users/ben/code/rack-client/lib/rack/client.rb
614
+ p
615
+ 0
616
+ x
617
+ 13
618
+ attach_method
619
+ p
620
+ 3
621
+ I
622
+ 2
623
+ I
624
+ 6
625
+ I
626
+ 1c
627
+ x
628
+ 46
629
+ /Users/ben/code/rack-client/lib/rack/client.rb
630
+ p
631
+ 0
632
+ x
633
+ 13
634
+ attach_method
635
+ s
636
+ 19
637
+ rack/client/version
638
+ s
639
+ 16
640
+ rack/client/core
641
+ s
642
+ 19
643
+ rack/client/handler
644
+ s
645
+ 19
646
+ rack/client/adapter
647
+ s
648
+ 22
649
+ rack/client/middleware
650
+ s
651
+ 18
652
+ rack/client/parser
653
+ p
654
+ 21
655
+ I
656
+ 0
657
+ I
658
+ 1
659
+ I
660
+ 9
661
+ I
662
+ 2
663
+ I
664
+ 12
665
+ I
666
+ 3
667
+ I
668
+ 1b
669
+ I
670
+ 5
671
+ I
672
+ 35
673
+ I
674
+ 15
675
+ I
676
+ 3e
677
+ I
678
+ 17
679
+ I
680
+ 47
681
+ I
682
+ 19
683
+ I
684
+ 50
685
+ I
686
+ 1b
687
+ I
688
+ 59
689
+ I
690
+ 1d
691
+ I
692
+ 62
693
+ I
694
+ 1f
695
+ I
696
+ 6d
697
+ x
698
+ 46
699
+ /Users/ben/code/rack-client/lib/rack/client.rb
700
+ p
701
+ 0
@@ -0,0 +1,47 @@
1
+ require 'spec_helper'
2
+
3
+ describe Rack::Client::Headers do
4
+ context ".from" do
5
+ it 'rejects headers which do not do not start with HTTP_, excluding CONTENT_TYPE and CONTENT_LENGTH' do
6
+ headers = Rack::Client::Headers.from('rack.foo' => 'bar',
7
+ 'HTTP_X_RACK_FOO' => 'bar',
8
+ 'CONTENT_TYPE' => 'text/plain',
9
+ 'CONTENT_LENGTH' => 100)
10
+ headers['rack.foo'].should be_nil
11
+ headers['HTTP_X_RACK_FOO'].should == 'bar'
12
+ headers['CONTENT_TYPE'].should == 'text/plain'
13
+ headers['CONTENT_LENGTH'].should == 100
14
+ end
15
+ end
16
+
17
+ context "#initialize" do
18
+ it 'merges in any arguments' do
19
+ Rack::Client::Headers.new('HTTP_X_RACK_FOO' => 'bar')['HTTP_X_RACK_FOO'] = 'bar'
20
+ end
21
+ end
22
+
23
+ context "#to_http" do
24
+ it 'removes the leading "HTTP_" from headers' do
25
+ headers = Rack::Client::Headers.new('HTTP_X_RACK_FOO' => 'bar').to_http
26
+ headers.keys.detect {|header| header =~ /^HTTP_/ }.should be_nil
27
+ end
28
+
29
+ it 'Titleizes the header name' do
30
+ headers = Rack::Client::Headers.new('HTTP_X_RACK_FOO' => 'bar').to_http
31
+ headers['X-Rack-Foo'].should == 'bar'
32
+ end
33
+ end
34
+
35
+ context "#to_env" do
36
+ it 'rackifies http header names, except CONTENT_TYPE and CONTENT_LENGTH' do
37
+ headers = Rack::Client::Headers.new('rack.foo' => 'bar',
38
+ 'X-Rack-Foo' => 'bar',
39
+ 'CONTENT_TYPE' => 'text/plain',
40
+ 'CONTENT_LENGTH' => 100).to_env
41
+
42
+ headers['HTTP_X_RACK_FOO'].should == 'bar'
43
+ headers['CONTENT_TYPE'].should == 'text/plain'
44
+ headers['CONTENT_LENGTH'].should == 100
45
+ end
46
+ end
47
+ end