sucker 1.0.0.beta.4 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (71) hide show
  1. data/CHANGELOG.md +12 -2
  2. data/README.md +5 -2
  3. data/lib/sucker.rbc +341 -0
  4. data/lib/sucker/request.rb +1 -1
  5. data/lib/sucker/request.rbc +2481 -0
  6. data/lib/sucker/response.rb +19 -7
  7. data/lib/sucker/response.rbc +1554 -0
  8. data/lib/sucker/version.rb +2 -2
  9. data/lib/sucker/version.rbc +130 -0
  10. data/spec/fixtures/asins.txt +9406 -406
  11. data/spec/fixtures/cassette_library/integration/alternate_versions.yml +27 -0
  12. data/spec/fixtures/cassette_library/integration/errors.yml +27 -0
  13. data/spec/fixtures/cassette_library/integration/france.yml +27 -0
  14. data/spec/fixtures/cassette_library/integration/images.yml +27 -0
  15. data/spec/fixtures/cassette_library/integration/item_lookup/multiple.yml +27 -0
  16. data/spec/fixtures/cassette_library/integration/item_lookup/single.yml +27 -0
  17. data/spec/fixtures/cassette_library/integration/item_search.yml +27 -0
  18. data/spec/fixtures/cassette_library/integration/japan.yml +27 -0
  19. data/spec/fixtures/cassette_library/integration/keyword_search.yml +27 -0
  20. data/spec/fixtures/cassette_library/integration/kindle.yml +27 -0
  21. data/spec/fixtures/cassette_library/integration/kindle_2.yml +27 -0
  22. data/spec/fixtures/cassette_library/integration/multiple_locales.yml +157 -0
  23. data/spec/fixtures/cassette_library/integration/power_search.yml +27 -0
  24. data/spec/fixtures/cassette_library/integration/related_items/child.yml +27 -0
  25. data/spec/fixtures/cassette_library/integration/related_items/parent.yml +27 -0
  26. data/spec/fixtures/cassette_library/integration/seller_listings_search.yml +27 -0
  27. data/spec/fixtures/cassette_library/integration/twenty_items.yml +27 -0
  28. data/spec/fixtures/cassette_library/unit/sucker/request.yml +29 -0
  29. data/spec/fixtures/cassette_library/unit/sucker/response.yml +27 -0
  30. data/spec/integration/alternate_versions_spec.rb +28 -20
  31. data/spec/integration/alternate_versions_spec.rbc +843 -0
  32. data/spec/integration/errors_spec.rb +10 -6
  33. data/spec/integration/errors_spec.rbc +964 -0
  34. data/spec/integration/france_spec.rb +33 -25
  35. data/spec/integration/france_spec.rbc +1012 -0
  36. data/spec/integration/images_spec.rb +32 -24
  37. data/spec/integration/images_spec.rbc +1047 -0
  38. data/spec/integration/item_lookup_spec.rb +11 -3
  39. data/spec/integration/item_lookup_spec.rbc +1723 -0
  40. data/spec/integration/item_search_spec.rb +6 -2
  41. data/spec/integration/item_search_spec.rbc +926 -0
  42. data/spec/integration/japan_spec.rb +27 -19
  43. data/spec/integration/japan_spec.rbc +849 -0
  44. data/spec/integration/keyword_search_spec.rb +5 -0
  45. data/spec/integration/keyword_search_spec.rbc +838 -0
  46. data/spec/integration/kindle_spec.rb +13 -5
  47. data/spec/integration/kindle_spec.rbc +1425 -0
  48. data/spec/integration/multiple_locales_spec.rb +34 -26
  49. data/spec/integration/multiple_locales_spec.rbc +1090 -0
  50. data/spec/integration/power_search_spec.rb +5 -0
  51. data/spec/integration/power_search_spec.rbc +838 -0
  52. data/spec/integration/related_items_spec.rb +41 -29
  53. data/spec/integration/related_items_spec.rbc +1228 -0
  54. data/spec/integration/seller_listing_search_spec.rb +3 -0
  55. data/spec/integration/seller_listing_search_spec.rbc +852 -0
  56. data/spec/integration/twenty_items_spec.rb +41 -34
  57. data/spec/integration/twenty_items_spec.rbc +1166 -0
  58. data/spec/spec_helper.rbc +231 -0
  59. data/spec/support/amazon.yml +3 -0
  60. data/spec/support/amazon.yml.example +1 -0
  61. data/spec/support/amazon_credentials.rbc +154 -0
  62. data/spec/support/asins.rb +6 -1
  63. data/spec/support/asins.rbc +335 -0
  64. data/spec/support/vcr.rbc +360 -0
  65. data/spec/unit/sucker/request_spec.rb +57 -23
  66. data/spec/unit/sucker/request_spec.rbc +4031 -0
  67. data/spec/unit/sucker/response_spec.rb +100 -26
  68. data/spec/unit/sucker/response_spec.rbc +3787 -0
  69. data/spec/unit/sucker_spec.rb +5 -1
  70. data/spec/unit/sucker_spec.rbc +299 -0
  71. metadata +94 -12
@@ -1,4 +1,4 @@
1
- module Sucker #:nodoc
1
+ module Sucker #:nodoc:
2
2
 
3
3
  # A Nokogiri-driven wrapper around the cURL response
4
4
  class Response
@@ -18,17 +18,29 @@ module Sucker #:nodoc
18
18
  self.time = curl.total_time
19
19
  end
20
20
 
21
+ # A shorthand that yields each match to a block
22
+ #
23
+ # worker.get.each("Item") { |item| process(item) }
24
+ #
25
+ def each(path)
26
+ find(path).each { |node| yield node }
27
+ end
28
+
21
29
  # Queries an xpath and returns an array of matching nodes
22
30
  #
23
- # Will yield each match if a block is given
24
- #
25
31
  # response = worker.get
26
- # response.find("Item") { |item| ... }
32
+ # response.find("Item").each { |item| ... }
27
33
  #
28
34
  def find(path)
29
- node = xml.xpath("//xmlns:#{path}").map { |node| strip_content(node.to_hash[path]) }
30
- node.each { |e| yield e } if block_given?
31
- node
35
+ xml.xpath("//xmlns:#{path}").map { |node| strip_content(node.to_hash[path]) }
36
+ end
37
+
38
+ # A shorthand that yields matches to a block and collects returned values
39
+ #
40
+ # descriptions = worker.get.map("Item") { |item| build_description(item) }
41
+ #
42
+ def map(path)
43
+ find(path).map { |e| yield e }
32
44
  end
33
45
 
34
46
  def node(path) # :nodoc:
@@ -0,0 +1,1554 @@
1
+ !RBIX
2
+ 0
3
+ x
4
+ M
5
+ 1
6
+ n
7
+ n
8
+ x
9
+ 10
10
+ __script__
11
+ i
12
+ 28
13
+ 99
14
+ 7
15
+ 0
16
+ 65
17
+ 49
18
+ 1
19
+ 2
20
+ 13
21
+ 99
22
+ 12
23
+ 7
24
+ 2
25
+ 12
26
+ 7
27
+ 3
28
+ 12
29
+ 65
30
+ 12
31
+ 49
32
+ 4
33
+ 4
34
+ 15
35
+ 49
36
+ 2
37
+ 0
38
+ 15
39
+ 2
40
+ 11
41
+ I
42
+ 6
43
+ I
44
+ 0
45
+ I
46
+ 0
47
+ I
48
+ 0
49
+ n
50
+ p
51
+ 5
52
+ x
53
+ 6
54
+ Sucker
55
+ x
56
+ 11
57
+ open_module
58
+ x
59
+ 15
60
+ __module_init__
61
+ M
62
+ 1
63
+ n
64
+ n
65
+ x
66
+ 6
67
+ Sucker
68
+ i
69
+ 42
70
+ 5
71
+ 66
72
+ 99
73
+ 7
74
+ 0
75
+ 1
76
+ 65
77
+ 49
78
+ 1
79
+ 3
80
+ 13
81
+ 99
82
+ 12
83
+ 7
84
+ 2
85
+ 12
86
+ 7
87
+ 3
88
+ 12
89
+ 65
90
+ 12
91
+ 49
92
+ 4
93
+ 4
94
+ 15
95
+ 49
96
+ 2
97
+ 0
98
+ 15
99
+ 99
100
+ 7
101
+ 5
102
+ 45
103
+ 6
104
+ 7
105
+ 65
106
+ 49
107
+ 1
108
+ 3
109
+ 15
110
+ 1
111
+ 11
112
+ I
113
+ 6
114
+ I
115
+ 0
116
+ I
117
+ 0
118
+ I
119
+ 0
120
+ n
121
+ p
122
+ 8
123
+ x
124
+ 8
125
+ Response
126
+ x
127
+ 10
128
+ open_class
129
+ x
130
+ 14
131
+ __class_init__
132
+ M
133
+ 1
134
+ n
135
+ n
136
+ x
137
+ 8
138
+ Response
139
+ i
140
+ 156
141
+ 5
142
+ 66
143
+ 5
144
+ 7
145
+ 0
146
+ 47
147
+ 49
148
+ 1
149
+ 1
150
+ 15
151
+ 5
152
+ 7
153
+ 2
154
+ 47
155
+ 49
156
+ 1
157
+ 1
158
+ 15
159
+ 5
160
+ 7
161
+ 3
162
+ 47
163
+ 49
164
+ 1
165
+ 1
166
+ 15
167
+ 99
168
+ 7
169
+ 4
170
+ 7
171
+ 5
172
+ 65
173
+ 67
174
+ 49
175
+ 6
176
+ 0
177
+ 49
178
+ 7
179
+ 4
180
+ 15
181
+ 99
182
+ 7
183
+ 8
184
+ 7
185
+ 9
186
+ 65
187
+ 67
188
+ 49
189
+ 6
190
+ 0
191
+ 49
192
+ 7
193
+ 4
194
+ 15
195
+ 99
196
+ 7
197
+ 10
198
+ 7
199
+ 11
200
+ 65
201
+ 67
202
+ 49
203
+ 6
204
+ 0
205
+ 49
206
+ 7
207
+ 4
208
+ 15
209
+ 99
210
+ 7
211
+ 12
212
+ 7
213
+ 13
214
+ 65
215
+ 67
216
+ 49
217
+ 6
218
+ 0
219
+ 49
220
+ 7
221
+ 4
222
+ 15
223
+ 99
224
+ 7
225
+ 14
226
+ 7
227
+ 15
228
+ 65
229
+ 67
230
+ 49
231
+ 6
232
+ 0
233
+ 49
234
+ 7
235
+ 4
236
+ 15
237
+ 99
238
+ 7
239
+ 16
240
+ 7
241
+ 17
242
+ 65
243
+ 67
244
+ 49
245
+ 6
246
+ 0
247
+ 49
248
+ 7
249
+ 4
250
+ 15
251
+ 99
252
+ 7
253
+ 18
254
+ 7
255
+ 19
256
+ 65
257
+ 67
258
+ 49
259
+ 6
260
+ 0
261
+ 49
262
+ 7
263
+ 4
264
+ 15
265
+ 99
266
+ 7
267
+ 20
268
+ 7
269
+ 21
270
+ 65
271
+ 67
272
+ 49
273
+ 6
274
+ 0
275
+ 49
276
+ 7
277
+ 4
278
+ 15
279
+ 5
280
+ 48
281
+ 22
282
+ 15
283
+ 99
284
+ 7
285
+ 23
286
+ 7
287
+ 24
288
+ 65
289
+ 67
290
+ 49
291
+ 6
292
+ 0
293
+ 49
294
+ 7
295
+ 4
296
+ 11
297
+ I
298
+ 5
299
+ I
300
+ 0
301
+ I
302
+ 0
303
+ I
304
+ 0
305
+ n
306
+ p
307
+ 25
308
+ x
309
+ 4
310
+ body
311
+ x
312
+ 13
313
+ attr_accessor
314
+ x
315
+ 4
316
+ code
317
+ x
318
+ 4
319
+ time
320
+ x
321
+ 10
322
+ initialize
323
+ M
324
+ 1
325
+ n
326
+ n
327
+ x
328
+ 10
329
+ initialize
330
+ i
331
+ 45
332
+ 5
333
+ 20
334
+ 0
335
+ 49
336
+ 0
337
+ 0
338
+ 13
339
+ 18
340
+ 2
341
+ 47
342
+ 49
343
+ 1
344
+ 1
345
+ 15
346
+ 15
347
+ 5
348
+ 20
349
+ 0
350
+ 49
351
+ 2
352
+ 0
353
+ 13
354
+ 18
355
+ 2
356
+ 47
357
+ 49
358
+ 3
359
+ 1
360
+ 15
361
+ 15
362
+ 5
363
+ 20
364
+ 0
365
+ 49
366
+ 4
367
+ 0
368
+ 13
369
+ 18
370
+ 2
371
+ 47
372
+ 49
373
+ 5
374
+ 1
375
+ 15
376
+ 11
377
+ I
378
+ 4
379
+ I
380
+ 1
381
+ I
382
+ 1
383
+ I
384
+ 1
385
+ n
386
+ p
387
+ 6
388
+ x
389
+ 8
390
+ body_str
391
+ x
392
+ 5
393
+ body=
394
+ x
395
+ 13
396
+ response_code
397
+ x
398
+ 5
399
+ code=
400
+ x
401
+ 10
402
+ total_time
403
+ x
404
+ 5
405
+ time=
406
+ p
407
+ 15
408
+ I
409
+ 0
410
+ I
411
+ f
412
+ I
413
+ 0
414
+ I
415
+ 64
416
+ I
417
+ 1
418
+ I
419
+ 10
420
+ I
421
+ f
422
+ I
423
+ 64
424
+ I
425
+ 10
426
+ I
427
+ 11
428
+ I
429
+ 1e
430
+ I
431
+ 64
432
+ I
433
+ 1f
434
+ I
435
+ 12
436
+ I
437
+ 2d
438
+ x
439
+ 45
440
+ /Users/snl/code/sucker/lib/sucker/response.rb
441
+ p
442
+ 1
443
+ x
444
+ 4
445
+ curl
446
+ x
447
+ 17
448
+ method_visibility
449
+ x
450
+ 15
451
+ add_defn_method
452
+ x
453
+ 4
454
+ each
455
+ M
456
+ 1
457
+ n
458
+ n
459
+ x
460
+ 4
461
+ each
462
+ i
463
+ 13
464
+ 5
465
+ 20
466
+ 0
467
+ 47
468
+ 49
469
+ 0
470
+ 1
471
+ 56
472
+ 1
473
+ 50
474
+ 2
475
+ 0
476
+ 11
477
+ I
478
+ 3
479
+ I
480
+ 1
481
+ I
482
+ 1
483
+ I
484
+ 1
485
+ n
486
+ p
487
+ 3
488
+ x
489
+ 4
490
+ find
491
+ M
492
+ 1
493
+ p
494
+ 2
495
+ x
496
+ 9
497
+ for_block
498
+ t
499
+ n
500
+ x
501
+ 4
502
+ each
503
+ i
504
+ 9
505
+ 57
506
+ 19
507
+ 0
508
+ 15
509
+ 20
510
+ 0
511
+ 60
512
+ 1
513
+ 11
514
+ I
515
+ 3
516
+ I
517
+ 1
518
+ I
519
+ 1
520
+ I
521
+ 1
522
+ n
523
+ p
524
+ 0
525
+ p
526
+ 3
527
+ I
528
+ 0
529
+ I
530
+ 1a
531
+ I
532
+ 9
533
+ x
534
+ 45
535
+ /Users/snl/code/sucker/lib/sucker/response.rb
536
+ p
537
+ 1
538
+ x
539
+ 4
540
+ node
541
+ x
542
+ 4
543
+ each
544
+ p
545
+ 5
546
+ I
547
+ 0
548
+ I
549
+ 19
550
+ I
551
+ 0
552
+ I
553
+ 1a
554
+ I
555
+ d
556
+ x
557
+ 45
558
+ /Users/snl/code/sucker/lib/sucker/response.rb
559
+ p
560
+ 1
561
+ x
562
+ 4
563
+ path
564
+ x
565
+ 4
566
+ find
567
+ M
568
+ 1
569
+ n
570
+ n
571
+ x
572
+ 4
573
+ find
574
+ i
575
+ 22
576
+ 5
577
+ 48
578
+ 0
579
+ 7
580
+ 1
581
+ 20
582
+ 0
583
+ 47
584
+ 49
585
+ 2
586
+ 0
587
+ 63
588
+ 2
589
+ 49
590
+ 3
591
+ 1
592
+ 56
593
+ 4
594
+ 50
595
+ 5
596
+ 0
597
+ 11
598
+ I
599
+ 4
600
+ I
601
+ 1
602
+ I
603
+ 1
604
+ I
605
+ 1
606
+ n
607
+ p
608
+ 6
609
+ x
610
+ 3
611
+ xml
612
+ s
613
+ 8
614
+ //xmlns:
615
+ x
616
+ 4
617
+ to_s
618
+ x
619
+ 5
620
+ xpath
621
+ M
622
+ 1
623
+ p
624
+ 2
625
+ x
626
+ 9
627
+ for_block
628
+ t
629
+ n
630
+ x
631
+ 4
632
+ find
633
+ i
634
+ 21
635
+ 57
636
+ 19
637
+ 0
638
+ 15
639
+ 5
640
+ 20
641
+ 0
642
+ 49
643
+ 0
644
+ 0
645
+ 21
646
+ 1
647
+ 0
648
+ 49
649
+ 1
650
+ 1
651
+ 47
652
+ 49
653
+ 2
654
+ 1
655
+ 11
656
+ I
657
+ 5
658
+ I
659
+ 1
660
+ I
661
+ 1
662
+ I
663
+ 1
664
+ n
665
+ p
666
+ 3
667
+ x
668
+ 7
669
+ to_hash
670
+ x
671
+ 2
672
+ []
673
+ x
674
+ 13
675
+ strip_content
676
+ p
677
+ 3
678
+ I
679
+ 0
680
+ I
681
+ 23
682
+ I
683
+ 15
684
+ x
685
+ 45
686
+ /Users/snl/code/sucker/lib/sucker/response.rb
687
+ p
688
+ 1
689
+ x
690
+ 4
691
+ node
692
+ x
693
+ 3
694
+ map
695
+ p
696
+ 5
697
+ I
698
+ 0
699
+ I
700
+ 22
701
+ I
702
+ 0
703
+ I
704
+ 23
705
+ I
706
+ 16
707
+ x
708
+ 45
709
+ /Users/snl/code/sucker/lib/sucker/response.rb
710
+ p
711
+ 1
712
+ x
713
+ 4
714
+ path
715
+ x
716
+ 3
717
+ map
718
+ M
719
+ 1
720
+ n
721
+ n
722
+ x
723
+ 3
724
+ map
725
+ i
726
+ 13
727
+ 5
728
+ 20
729
+ 0
730
+ 47
731
+ 49
732
+ 0
733
+ 1
734
+ 56
735
+ 1
736
+ 50
737
+ 2
738
+ 0
739
+ 11
740
+ I
741
+ 3
742
+ I
743
+ 1
744
+ I
745
+ 1
746
+ I
747
+ 1
748
+ n
749
+ p
750
+ 3
751
+ x
752
+ 4
753
+ find
754
+ M
755
+ 1
756
+ p
757
+ 2
758
+ x
759
+ 9
760
+ for_block
761
+ t
762
+ n
763
+ x
764
+ 3
765
+ map
766
+ i
767
+ 9
768
+ 57
769
+ 19
770
+ 0
771
+ 15
772
+ 20
773
+ 0
774
+ 60
775
+ 1
776
+ 11
777
+ I
778
+ 3
779
+ I
780
+ 1
781
+ I
782
+ 1
783
+ I
784
+ 1
785
+ n
786
+ p
787
+ 0
788
+ p
789
+ 3
790
+ I
791
+ 0
792
+ I
793
+ 2b
794
+ I
795
+ 9
796
+ x
797
+ 45
798
+ /Users/snl/code/sucker/lib/sucker/response.rb
799
+ p
800
+ 1
801
+ x
802
+ 1
803
+ e
804
+ x
805
+ 3
806
+ map
807
+ p
808
+ 5
809
+ I
810
+ 0
811
+ I
812
+ 2a
813
+ I
814
+ 0
815
+ I
816
+ 2b
817
+ I
818
+ d
819
+ x
820
+ 45
821
+ /Users/snl/code/sucker/lib/sucker/response.rb
822
+ p
823
+ 1
824
+ x
825
+ 4
826
+ path
827
+ x
828
+ 4
829
+ node
830
+ M
831
+ 1
832
+ n
833
+ n
834
+ x
835
+ 4
836
+ node
837
+ i
838
+ 17
839
+ 5
840
+ 7
841
+ 0
842
+ 64
843
+ 47
844
+ 49
845
+ 1
846
+ 1
847
+ 15
848
+ 5
849
+ 20
850
+ 0
851
+ 47
852
+ 49
853
+ 2
854
+ 1
855
+ 11
856
+ I
857
+ 3
858
+ I
859
+ 1
860
+ I
861
+ 1
862
+ I
863
+ 1
864
+ n
865
+ p
866
+ 3
867
+ s
868
+ 56
869
+ [DEPRECATION] `node` is deprecated. Use `find` instead.
870
+ x
871
+ 4
872
+ warn
873
+ x
874
+ 4
875
+ find
876
+ p
877
+ 7
878
+ I
879
+ 0
880
+ I
881
+ 2e
882
+ I
883
+ 0
884
+ I
885
+ 2f
886
+ I
887
+ 9
888
+ I
889
+ 30
890
+ I
891
+ 11
892
+ x
893
+ 45
894
+ /Users/snl/code/sucker/lib/sucker/response.rb
895
+ p
896
+ 1
897
+ x
898
+ 4
899
+ path
900
+ x
901
+ 7
902
+ to_hash
903
+ M
904
+ 1
905
+ n
906
+ n
907
+ x
908
+ 7
909
+ to_hash
910
+ i
911
+ 12
912
+ 5
913
+ 5
914
+ 48
915
+ 0
916
+ 49
917
+ 1
918
+ 0
919
+ 47
920
+ 49
921
+ 2
922
+ 1
923
+ 11
924
+ I
925
+ 2
926
+ I
927
+ 0
928
+ I
929
+ 0
930
+ I
931
+ 0
932
+ n
933
+ p
934
+ 3
935
+ x
936
+ 3
937
+ xml
938
+ x
939
+ 7
940
+ to_hash
941
+ x
942
+ 13
943
+ strip_content
944
+ p
945
+ 5
946
+ I
947
+ 0
948
+ I
949
+ 38
950
+ I
951
+ 0
952
+ I
953
+ 39
954
+ I
955
+ c
956
+ x
957
+ 45
958
+ /Users/snl/code/sucker/lib/sucker/response.rb
959
+ p
960
+ 0
961
+ x
962
+ 6
963
+ valid?
964
+ M
965
+ 1
966
+ n
967
+ n
968
+ x
969
+ 6
970
+ valid?
971
+ i
972
+ 8
973
+ 5
974
+ 48
975
+ 0
976
+ 4
977
+ 200
978
+ 83
979
+ 1
980
+ 11
981
+ I
982
+ 2
983
+ I
984
+ 0
985
+ I
986
+ 0
987
+ I
988
+ 0
989
+ n
990
+ p
991
+ 2
992
+ x
993
+ 4
994
+ code
995
+ x
996
+ 2
997
+ ==
998
+ p
999
+ 5
1000
+ I
1001
+ 0
1002
+ I
1003
+ 42
1004
+ I
1005
+ 0
1006
+ I
1007
+ 43
1008
+ I
1009
+ 8
1010
+ x
1011
+ 45
1012
+ /Users/snl/code/sucker/lib/sucker/response.rb
1013
+ p
1014
+ 0
1015
+ x
1016
+ 3
1017
+ xml
1018
+ M
1019
+ 1
1020
+ n
1021
+ n
1022
+ x
1023
+ 3
1024
+ xml
1025
+ i
1026
+ 18
1027
+ 39
1028
+ 0
1029
+ 13
1030
+ 10
1031
+ 17
1032
+ 15
1033
+ 45
1034
+ 1
1035
+ 2
1036
+ 5
1037
+ 48
1038
+ 3
1039
+ 49
1040
+ 4
1041
+ 1
1042
+ 38
1043
+ 0
1044
+ 11
1045
+ I
1046
+ 2
1047
+ I
1048
+ 0
1049
+ I
1050
+ 0
1051
+ I
1052
+ 0
1053
+ n
1054
+ p
1055
+ 5
1056
+ x
1057
+ 4
1058
+ @xml
1059
+ x
1060
+ 8
1061
+ Nokogiri
1062
+ n
1063
+ x
1064
+ 4
1065
+ body
1066
+ x
1067
+ 3
1068
+ XML
1069
+ p
1070
+ 5
1071
+ I
1072
+ 0
1073
+ I
1074
+ 4a
1075
+ I
1076
+ 0
1077
+ I
1078
+ 4b
1079
+ I
1080
+ 12
1081
+ x
1082
+ 45
1083
+ /Users/snl/code/sucker/lib/sucker/response.rb
1084
+ p
1085
+ 0
1086
+ x
1087
+ 7
1088
+ private
1089
+ x
1090
+ 13
1091
+ strip_content
1092
+ M
1093
+ 1
1094
+ n
1095
+ n
1096
+ x
1097
+ 13
1098
+ strip_content
1099
+ i
1100
+ 88
1101
+ 20
1102
+ 0
1103
+ 13
1104
+ 45
1105
+ 0
1106
+ 1
1107
+ 12
1108
+ 49
1109
+ 2
1110
+ 1
1111
+ 9
1112
+ 22
1113
+ 15
1114
+ 20
1115
+ 0
1116
+ 56
1117
+ 3
1118
+ 50
1119
+ 4
1120
+ 0
1121
+ 8
1122
+ 87
1123
+ 13
1124
+ 45
1125
+ 5
1126
+ 6
1127
+ 12
1128
+ 49
1129
+ 2
1130
+ 1
1131
+ 9
1132
+ 84
1133
+ 15
1134
+ 20
1135
+ 0
1136
+ 49
1137
+ 7
1138
+ 0
1139
+ 49
1140
+ 8
1141
+ 0
1142
+ 79
1143
+ 83
1144
+ 9
1145
+ 13
1146
+ 9
1147
+ 56
1148
+ 15
1149
+ 20
1150
+ 0
1151
+ 7
1152
+ 10
1153
+ 64
1154
+ 49
1155
+ 11
1156
+ 1
1157
+ 9
1158
+ 68
1159
+ 20
1160
+ 0
1161
+ 7
1162
+ 10
1163
+ 64
1164
+ 49
1165
+ 11
1166
+ 1
1167
+ 8
1168
+ 82
1169
+ 20
1170
+ 0
1171
+ 44
1172
+ 43
1173
+ 5
1174
+ 78
1175
+ 49
1176
+ 12
1177
+ 1
1178
+ 56
1179
+ 13
1180
+ 50
1181
+ 14
1182
+ 1
1183
+ 8
1184
+ 87
1185
+ 15
1186
+ 20
1187
+ 0
1188
+ 11
1189
+ I
1190
+ 4
1191
+ I
1192
+ 1
1193
+ I
1194
+ 1
1195
+ I
1196
+ 1
1197
+ n
1198
+ p
1199
+ 15
1200
+ x
1201
+ 5
1202
+ Array
1203
+ n
1204
+ x
1205
+ 3
1206
+ ===
1207
+ M
1208
+ 1
1209
+ p
1210
+ 2
1211
+ x
1212
+ 9
1213
+ for_block
1214
+ t
1215
+ n
1216
+ x
1217
+ 13
1218
+ strip_content
1219
+ i
1220
+ 12
1221
+ 57
1222
+ 19
1223
+ 0
1224
+ 15
1225
+ 5
1226
+ 20
1227
+ 0
1228
+ 47
1229
+ 49
1230
+ 0
1231
+ 1
1232
+ 11
1233
+ I
1234
+ 4
1235
+ I
1236
+ 1
1237
+ I
1238
+ 1
1239
+ I
1240
+ 1
1241
+ n
1242
+ p
1243
+ 1
1244
+ x
1245
+ 13
1246
+ strip_content
1247
+ p
1248
+ 3
1249
+ I
1250
+ 0
1251
+ I
1252
+ 54
1253
+ I
1254
+ c
1255
+ x
1256
+ 45
1257
+ /Users/snl/code/sucker/lib/sucker/response.rb
1258
+ p
1259
+ 1
1260
+ x
1261
+ 5
1262
+ child
1263
+ x
1264
+ 3
1265
+ map
1266
+ x
1267
+ 4
1268
+ Hash
1269
+ n
1270
+ x
1271
+ 4
1272
+ keys
1273
+ x
1274
+ 4
1275
+ size
1276
+ x
1277
+ 2
1278
+ ==
1279
+ s
1280
+ 11
1281
+ __content__
1282
+ x
1283
+ 2
1284
+ []
1285
+ x
1286
+ 16
1287
+ new_from_literal
1288
+ M
1289
+ 1
1290
+ p
1291
+ 2
1292
+ x
1293
+ 9
1294
+ for_block
1295
+ t
1296
+ n
1297
+ x
1298
+ 13
1299
+ strip_content
1300
+ i
1301
+ 43
1302
+ 58
1303
+ 37
1304
+ 19
1305
+ 0
1306
+ 15
1307
+ 37
1308
+ 19
1309
+ 1
1310
+ 15
1311
+ 15
1312
+ 20
1313
+ 0
1314
+ 44
1315
+ 43
1316
+ 0
1317
+ 79
1318
+ 49
1319
+ 1
1320
+ 1
1321
+ 13
1322
+ 20
1323
+ 1
1324
+ 49
1325
+ 2
1326
+ 0
1327
+ 5
1328
+ 20
1329
+ 1
1330
+ 49
1331
+ 3
1332
+ 0
1333
+ 47
1334
+ 49
1335
+ 4
1336
+ 1
1337
+ 49
1338
+ 5
1339
+ 2
1340
+ 15
1341
+ 49
1342
+ 6
1343
+ 1
1344
+ 11
1345
+ I
1346
+ 9
1347
+ I
1348
+ 2
1349
+ I
1350
+ 2
1351
+ I
1352
+ 2
1353
+ n
1354
+ p
1355
+ 7
1356
+ x
1357
+ 4
1358
+ Hash
1359
+ x
1360
+ 16
1361
+ new_from_literal
1362
+ x
1363
+ 5
1364
+ first
1365
+ x
1366
+ 4
1367
+ last
1368
+ x
1369
+ 13
1370
+ strip_content
1371
+ x
1372
+ 3
1373
+ []=
1374
+ x
1375
+ 5
1376
+ merge
1377
+ p
1378
+ 5
1379
+ I
1380
+ 0
1381
+ I
1382
+ 59
1383
+ I
1384
+ a
1385
+ I
1386
+ 5a
1387
+ I
1388
+ 2b
1389
+ x
1390
+ 45
1391
+ /Users/snl/code/sucker/lib/sucker/response.rb
1392
+ p
1393
+ 2
1394
+ x
1395
+ 10
1396
+ attributes
1397
+ x
1398
+ 9
1399
+ key_value
1400
+ x
1401
+ 6
1402
+ inject
1403
+ p
1404
+ 19
1405
+ I
1406
+ 0
1407
+ I
1408
+ 51
1409
+ I
1410
+ 0
1411
+ I
1412
+ 52
1413
+ I
1414
+ 3
1415
+ I
1416
+ 53
1417
+ I
1418
+ d
1419
+ I
1420
+ 54
1421
+ I
1422
+ 17
1423
+ I
1424
+ 55
1425
+ I
1426
+ 21
1427
+ I
1428
+ 56
1429
+ I
1430
+ 3a
1431
+ I
1432
+ 57
1433
+ I
1434
+ 44
1435
+ I
1436
+ 59
1437
+ I
1438
+ 55
1439
+ I
1440
+ 5e
1441
+ I
1442
+ 58
1443
+ x
1444
+ 45
1445
+ /Users/snl/code/sucker/lib/sucker/response.rb
1446
+ p
1447
+ 1
1448
+ x
1449
+ 4
1450
+ node
1451
+ p
1452
+ 27
1453
+ I
1454
+ 2
1455
+ I
1456
+ 7
1457
+ I
1458
+ a
1459
+ I
1460
+ a
1461
+ I
1462
+ 12
1463
+ I
1464
+ d
1465
+ I
1466
+ 1a
1467
+ I
1468
+ f
1469
+ I
1470
+ 28
1471
+ I
1472
+ 19
1473
+ I
1474
+ 36
1475
+ I
1476
+ 22
1477
+ I
1478
+ 44
1479
+ I
1480
+ 2a
1481
+ I
1482
+ 52
1483
+ I
1484
+ 2e
1485
+ I
1486
+ 60
1487
+ I
1488
+ 38
1489
+ I
1490
+ 6e
1491
+ I
1492
+ 42
1493
+ I
1494
+ 7c
1495
+ I
1496
+ 4a
1497
+ I
1498
+ 8a
1499
+ I
1500
+ 4e
1501
+ I
1502
+ 8e
1503
+ I
1504
+ 51
1505
+ I
1506
+ 9c
1507
+ x
1508
+ 45
1509
+ /Users/snl/code/sucker/lib/sucker/response.rb
1510
+ p
1511
+ 0
1512
+ x
1513
+ 13
1514
+ attach_method
1515
+ x
1516
+ 13
1517
+ ResponseError
1518
+ x
1519
+ 13
1520
+ StandardError
1521
+ n
1522
+ p
1523
+ 5
1524
+ I
1525
+ 2
1526
+ I
1527
+ 4
1528
+ I
1529
+ 1d
1530
+ I
1531
+ 63
1532
+ I
1533
+ 2a
1534
+ x
1535
+ 45
1536
+ /Users/snl/code/sucker/lib/sucker/response.rb
1537
+ p
1538
+ 0
1539
+ x
1540
+ 13
1541
+ attach_method
1542
+ p
1543
+ 3
1544
+ I
1545
+ 0
1546
+ I
1547
+ 1
1548
+ I
1549
+ 1c
1550
+ x
1551
+ 45
1552
+ /Users/snl/code/sucker/lib/sucker/response.rb
1553
+ p
1554
+ 0