api_resource 0.5.0 → 0.5.1

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 (55) hide show
  1. data/Gemfile.lock +89 -78
  2. data/Rakefile +1 -11
  3. data/VERSION +1 -1
  4. data/api_resource.gemspec +2 -2
  5. data/coverage/assets/0.7.1/application.css +1110 -0
  6. data/coverage/assets/0.7.1/application.js +626 -0
  7. data/coverage/assets/0.7.1/fancybox/blank.gif +0 -0
  8. data/coverage/assets/0.7.1/fancybox/fancy_close.png +0 -0
  9. data/coverage/assets/0.7.1/fancybox/fancy_loading.png +0 -0
  10. data/coverage/assets/0.7.1/fancybox/fancy_nav_left.png +0 -0
  11. data/coverage/assets/0.7.1/fancybox/fancy_nav_right.png +0 -0
  12. data/coverage/assets/0.7.1/fancybox/fancy_shadow_e.png +0 -0
  13. data/coverage/assets/0.7.1/fancybox/fancy_shadow_n.png +0 -0
  14. data/coverage/assets/0.7.1/fancybox/fancy_shadow_ne.png +0 -0
  15. data/coverage/assets/0.7.1/fancybox/fancy_shadow_nw.png +0 -0
  16. data/coverage/assets/0.7.1/fancybox/fancy_shadow_s.png +0 -0
  17. data/coverage/assets/0.7.1/fancybox/fancy_shadow_se.png +0 -0
  18. data/coverage/assets/0.7.1/fancybox/fancy_shadow_sw.png +0 -0
  19. data/coverage/assets/0.7.1/fancybox/fancy_shadow_w.png +0 -0
  20. data/coverage/assets/0.7.1/fancybox/fancy_title_left.png +0 -0
  21. data/coverage/assets/0.7.1/fancybox/fancy_title_main.png +0 -0
  22. data/coverage/assets/0.7.1/fancybox/fancy_title_over.png +0 -0
  23. data/coverage/assets/0.7.1/fancybox/fancy_title_right.png +0 -0
  24. data/coverage/assets/0.7.1/fancybox/fancybox-x.png +0 -0
  25. data/coverage/assets/0.7.1/fancybox/fancybox-y.png +0 -0
  26. data/coverage/assets/0.7.1/fancybox/fancybox.png +0 -0
  27. data/coverage/assets/0.7.1/favicon_green.png +0 -0
  28. data/coverage/assets/0.7.1/favicon_red.png +0 -0
  29. data/coverage/assets/0.7.1/favicon_yellow.png +0 -0
  30. data/coverage/assets/0.7.1/loading.gif +0 -0
  31. data/coverage/assets/0.7.1/magnify.png +0 -0
  32. data/coverage/assets/0.7.1/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  33. data/coverage/assets/0.7.1/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  34. data/coverage/assets/0.7.1/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  35. data/coverage/assets/0.7.1/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  36. data/coverage/assets/0.7.1/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  37. data/coverage/assets/0.7.1/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  38. data/coverage/assets/0.7.1/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  39. data/coverage/assets/0.7.1/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  40. data/coverage/assets/0.7.1/smoothness/images/ui-icons_222222_256x240.png +0 -0
  41. data/coverage/assets/0.7.1/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  42. data/coverage/assets/0.7.1/smoothness/images/ui-icons_454545_256x240.png +0 -0
  43. data/coverage/assets/0.7.1/smoothness/images/ui-icons_888888_256x240.png +0 -0
  44. data/coverage/assets/0.7.1/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  45. data/coverage/index.html +146 -155
  46. data/lib/api_resource/associations/resource_scope.rb +1 -1
  47. data/lib/api_resource/connection.rb +1 -1
  48. data/spec/lib/associations/association_scope_spec.rb +4 -0
  49. data/spec/lib/associations/resource_scope_spec.rb +24 -0
  50. data/spec/lib/associations_spec.rb +1 -1
  51. data/spec/lib/base_spec.rb +12 -11
  52. data/spec/lib/callbacks_spec.rb +4 -1
  53. data/spec/tmp/api_resource_test_db.sqlite +0 -0
  54. data/tmp/rspec_guard_result +1 -0
  55. metadata +44 -2
Binary file
Binary file
data/coverage/index.html CHANGED
@@ -3,27 +3,18 @@
3
3
  <head>
4
4
  <title>Code coverage for Api resource</title>
5
5
  <meta http-equiv="content-type" content="text/html; charset=utf-8" />
6
- <script src='./assets/0.5.3/jquery-1.6.2.min.js' type='text/javascript'></script>
7
- <script src='./assets/0.5.3/jquery.dataTables.min.js' type='text/javascript'></script>
8
- <script src='./assets/0.5.3/fancybox/jquery.fancybox-1.3.1.pack.js' type='text/javascript'></script>
9
- <script src='./assets/0.5.3/jquery.timeago.js' type='text/javascript'></script>
10
- <script src='./assets/0.5.3/jquery.url.js' type='text/javascript'></script>
11
- <script src='./assets/0.5.3/highlight.pack.js' type='text/javascript'></script>
12
- <script src='./assets/0.5.3/app.js' type='text/javascript'></script>
13
- <link href='./assets/0.5.3/stylesheet.css' media='screen, projection, print' rel='stylesheet' type='text/css'>
14
- <link href='./assets/0.5.3/highlight.css' media='screen, projection, print' rel='stylesheet' type='text/css'>
15
- <link href='./assets/0.5.3/fancybox/jquery.fancybox-1.3.1.css' media='screen, projection, print' rel='stylesheet' type='text/css'>
16
- <link href='./assets/0.5.3/smoothness/jquery-ui-1.8.4.custom.css' media='screen, projection, print' rel='stylesheet' type='text/css'>
17
- <link rel="shortcut icon" type="image/png" href="./assets/0.5.3/favicon_yellow.png" />
18
- <link rel="icon" type="image/png" href="./assets/0.5.3/favicon.png" />
6
+ <script src='./assets/0.7.1/application.js' type='text/javascript'></script>
7
+ <link href='./assets/0.7.1/application.css' media='screen, projection, print' rel='stylesheet' type='text/css'>
8
+ <link rel="shortcut icon" type="image/png" href="./assets/0.7.1/favicon_yellow.png" />
9
+ <link rel="icon" type="image/png" href="./assets/0.7.1/favicon.png" />
19
10
  </head>
20
11
 
21
12
  <body>
22
13
  <div id="loading">
23
- <img src="./assets/0.5.3/loading.gif" alt="loading"/>
14
+ <img src="./assets/0.7.1/loading.gif" alt="loading"/>
24
15
  </div>
25
16
  <div id="wrapper" style="display:none;">
26
- <div class="timestamp">Generated <abbr class="timeago" title="2012-12-18T14:44:11-05:00">2012-12-18T14:44:11-05:00</abbr></div>
17
+ <div class="timestamp">Generated <abbr class="timeago" title="2012-12-19T15:41:26-05:00">2012-12-19T15:41:26-05:00</abbr></div>
27
18
  <ul class="group_tabs"></ul>
28
19
 
29
20
  <div id="content">
@@ -34,7 +25,7 @@
34
25
  covered at
35
26
  <span class="covered_strength">
36
27
  <span class="green">
37
- 15.43
28
+ 26.37
38
29
  </span>
39
30
  </span> hits/line)
40
31
  </h2>
@@ -66,7 +57,7 @@
66
57
  <td>98</td>
67
58
  <td>83</td>
68
59
  <td>15</td>
69
- <td>55.6</td>
60
+ <td>89.0</td>
70
61
  </tr>
71
62
 
72
63
  <tr>
@@ -116,7 +107,7 @@
116
107
  <td>128</td>
117
108
  <td>121</td>
118
109
  <td>7</td>
119
- <td>32.8</td>
110
+ <td>65.0</td>
120
111
  </tr>
121
112
 
122
113
  </tbody>
@@ -128,8 +119,8 @@
128
119
  </div>
129
120
 
130
121
  <div id="footer">
131
- Generated by <a href="http://github.com/colszowka/simplecov">simplecov</a> v0.6.1
132
- and simplecov-html v0.5.3<br/>
122
+ Generated by <a href="http://github.com/colszowka/simplecov">simplecov</a> v0.7.1
123
+ and simplecov-html v0.7.1<br/>
133
124
  using RSpec
134
125
  </div>
135
126
 
@@ -347,38 +338,38 @@
347
338
  <code class="ruby"> def initialize(site, format = ApiResource::Formats::JsonFormat, headers)</code>
348
339
  </li>
349
340
 
350
- <li class="covered" data-hits="365" data-linenumber="34">
351
- <span class="hits">365</span>
341
+ <li class="covered" data-hits="403" data-linenumber="34">
342
+ <span class="hits">403</span>
352
343
 
353
344
  <code class="ruby"> raise ArgumentError, 'Missing site URI' unless site</code>
354
345
  </li>
355
346
 
356
- <li class="covered" data-hits="365" data-linenumber="35">
357
- <span class="hits">365</span>
347
+ <li class="covered" data-hits="403" data-linenumber="35">
348
+ <span class="hits">403</span>
358
349
 
359
350
  <code class="ruby"> @user = @password = nil</code>
360
351
  </li>
361
352
 
362
- <li class="covered" data-hits="365" data-linenumber="36">
363
- <span class="hits">365</span>
353
+ <li class="covered" data-hits="403" data-linenumber="36">
354
+ <span class="hits">403</span>
364
355
 
365
356
  <code class="ruby"> @uri_parser = URI.const_defined?(:Parser) ? URI::Parser.new : URI</code>
366
357
  </li>
367
358
 
368
- <li class="covered" data-hits="365" data-linenumber="37">
369
- <span class="hits">365</span>
359
+ <li class="covered" data-hits="403" data-linenumber="37">
360
+ <span class="hits">403</span>
370
361
 
371
362
  <code class="ruby"> self.site = site</code>
372
363
  </li>
373
364
 
374
- <li class="covered" data-hits="365" data-linenumber="38">
375
- <span class="hits">365</span>
365
+ <li class="covered" data-hits="403" data-linenumber="38">
366
+ <span class="hits">403</span>
376
367
 
377
368
  <code class="ruby"> self.format = format</code>
378
369
  </li>
379
370
 
380
- <li class="covered" data-hits="365" data-linenumber="39">
381
- <span class="hits">365</span>
371
+ <li class="covered" data-hits="403" data-linenumber="39">
372
+ <span class="hits">403</span>
382
373
 
383
374
  <code class="ruby"> self.headers = headers</code>
384
375
  </li>
@@ -407,20 +398,20 @@
407
398
  <code class="ruby"> def site=(site)</code>
408
399
  </li>
409
400
 
410
- <li class="covered" data-hits="365" data-linenumber="44">
411
- <span class="hits">365</span>
401
+ <li class="covered" data-hits="403" data-linenumber="44">
402
+ <span class="hits">403</span>
412
403
 
413
404
  <code class="ruby"> @site = site.is_a?(URI) ? site : @uri_parser.parse(site)</code>
414
405
  </li>
415
406
 
416
- <li class="covered" data-hits="365" data-linenumber="45">
417
- <span class="hits">365</span>
407
+ <li class="covered" data-hits="403" data-linenumber="45">
408
+ <span class="hits">403</span>
418
409
 
419
410
  <code class="ruby"> @user = @uri_parser.unescape(@site.user) if @site.user</code>
420
411
  </li>
421
412
 
422
- <li class="covered" data-hits="365" data-linenumber="46">
423
- <span class="hits">365</span>
413
+ <li class="covered" data-hits="403" data-linenumber="46">
414
+ <span class="hits">403</span>
424
415
 
425
416
  <code class="ruby"> @password = @uri_parser.unescape(@site.password) if @site.password</code>
426
417
  </li>
@@ -449,8 +440,8 @@
449
440
  <code class="ruby"> def timeout=(timeout)</code>
450
441
  </li>
451
442
 
452
- <li class="covered" data-hits="493" data-linenumber="51">
453
- <span class="hits">493</span>
443
+ <li class="covered" data-hits="667" data-linenumber="51">
444
+ <span class="hits">667</span>
454
445
 
455
446
  <code class="ruby"> @timeout = timeout</code>
456
447
  </li>
@@ -479,14 +470,14 @@
479
470
  <code class="ruby"> # our site and headers for this request</code>
480
471
  </li>
481
472
 
482
- <li class="covered" data-hits="72" data-linenumber="56">
483
- <span class="hits">72</span>
473
+ <li class="covered" data-hits="210" data-linenumber="56">
474
+ <span class="hits">210</span>
484
475
 
485
476
  <code class="ruby"> site = self.site.merge(path)</code>
486
477
  </li>
487
478
 
488
- <li class="covered" data-hits="72" data-linenumber="57">
489
- <span class="hits">72</span>
479
+ <li class="covered" data-hits="210" data-linenumber="57">
480
+ <span class="hits">210</span>
490
481
 
491
482
  <code class="ruby"> headers = build_request_headers(headers, :get, site)</code>
492
483
  </li>
@@ -497,14 +488,14 @@
497
488
  <code class="ruby"></code>
498
489
  </li>
499
490
 
500
- <li class="covered" data-hits="72" data-linenumber="59">
501
- <span class="hits">72</span>
491
+ <li class="covered" data-hits="210" data-linenumber="59">
492
+ <span class="hits">210</span>
502
493
 
503
494
  <code class="ruby"> self.with_caching(path, headers) do</code>
504
495
  </li>
505
496
 
506
- <li class="covered" data-hits="70" data-linenumber="60">
507
- <span class="hits">70</span>
497
+ <li class="covered" data-hits="207" data-linenumber="60">
498
+ <span class="hits">207</span>
508
499
 
509
500
  <code class="ruby"> format.decode(request(:get, path, headers))</code>
510
501
  </li>
@@ -707,14 +698,14 @@
707
698
  <code class="ruby"> def cache_key(path, headers)</code>
708
699
  </li>
709
700
 
710
- <li class="covered" data-hits="3" data-linenumber="94">
711
- <span class="hits">3</span>
701
+ <li class="covered" data-hits="5" data-linenumber="94">
702
+ <span class="hits">5</span>
712
703
 
713
704
  <code class="ruby"> key = Digest::MD5.hexdigest([path, headers].to_s)</code>
714
705
  </li>
715
706
 
716
- <li class="covered" data-hits="3" data-linenumber="95">
717
- <span class="hits">3</span>
707
+ <li class="covered" data-hits="5" data-linenumber="95">
708
+ <span class="hits">5</span>
718
709
 
719
710
  <code class="ruby"> return &quot;a-#{key}-#{ApiResource::Base.ttl}&quot;</code>
720
711
  </li>
@@ -737,26 +728,26 @@
737
728
  <code class="ruby"> def with_caching(path, data = {}, &amp;block)</code>
738
729
  </li>
739
730
 
740
- <li class="covered" data-hits="72" data-linenumber="99">
741
- <span class="hits">72</span>
731
+ <li class="covered" data-hits="210" data-linenumber="99">
732
+ <span class="hits">210</span>
742
733
 
743
734
  <code class="ruby"> if ApiResource::Base.ttl.to_f &gt; 0.0</code>
744
735
  </li>
745
736
 
746
- <li class="covered" data-hits="3" data-linenumber="100">
747
- <span class="hits">3</span>
737
+ <li class="covered" data-hits="5" data-linenumber="100">
738
+ <span class="hits">5</span>
748
739
 
749
740
  <code class="ruby"> key = self.cache_key(path, data)</code>
750
741
  </li>
751
742
 
752
- <li class="covered" data-hits="3" data-linenumber="101">
753
- <span class="hits">3</span>
743
+ <li class="covered" data-hits="5" data-linenumber="101">
744
+ <span class="hits">5</span>
754
745
 
755
746
  <code class="ruby"> ApiResource.cache.fetch(key, :expires_in =&gt; ApiResource::Base.ttl) do</code>
756
747
  </li>
757
748
 
758
- <li class="covered" data-hits="1" data-linenumber="102">
759
- <span class="hits">1</span>
749
+ <li class="covered" data-hits="2" data-linenumber="102">
750
+ <span class="hits">2</span>
760
751
 
761
752
  <code class="ruby"> yield</code>
762
753
  </li>
@@ -773,8 +764,8 @@
773
764
  <code class="ruby"> else</code>
774
765
  </li>
775
766
 
776
- <li class="covered" data-hits="69" data-linenumber="105">
777
- <span class="hits">69</span>
767
+ <li class="covered" data-hits="205" data-linenumber="105">
768
+ <span class="hits">205</span>
778
769
 
779
770
  <code class="ruby"> yield</code>
780
771
  </li>
@@ -815,14 +806,14 @@
815
806
  <code class="ruby"> def request(method, path, *arguments)</code>
816
807
  </li>
817
808
 
818
- <li class="covered" data-hits="82" data-linenumber="112">
819
- <span class="hits">82</span>
809
+ <li class="covered" data-hits="219" data-linenumber="112">
810
+ <span class="hits">219</span>
820
811
 
821
812
  <code class="ruby"> handle_response(path) do</code>
822
813
  </li>
823
814
 
824
- <li class="covered" data-hits="82" data-linenumber="113">
825
- <span class="hits">82</span>
815
+ <li class="covered" data-hits="219" data-linenumber="113">
816
+ <span class="hits">219</span>
826
817
 
827
818
  <code class="ruby"> ActiveSupport::Notifications.instrument(&quot;request.api_resource&quot;) do |payload|</code>
828
819
  </li>
@@ -839,10 +830,10 @@
839
830
  <code class="ruby"> # debug logging</code>
840
831
  </li>
841
832
 
842
- <li class="covered" data-hits="82" data-linenumber="116">
843
- <span class="hits">82</span>
833
+ <li class="covered" data-hits="219" data-linenumber="116">
834
+ <span class="hits">219</span>
844
835
 
845
- <code class="ruby"> ApiResource.logger.debug(&quot;#{method.to_s.upcase} #{path}&quot;)</code>
836
+ <code class="ruby"> ApiResource.logger.debug(&quot;#{method.to_s.upcase} #{site.scheme}://#{site.host}:#{site.port}#{path}&quot;)</code>
846
837
  </li>
847
838
 
848
839
  <li class="never" data-hits="" data-linenumber="117">
@@ -851,20 +842,20 @@
851
842
  <code class="ruby"> </code>
852
843
  </li>
853
844
 
854
- <li class="covered" data-hits="82" data-linenumber="118">
855
- <span class="hits">82</span>
845
+ <li class="covered" data-hits="219" data-linenumber="118">
846
+ <span class="hits">219</span>
856
847
 
857
848
  <code class="ruby"> payload[:method] = method</code>
858
849
  </li>
859
850
 
860
- <li class="covered" data-hits="82" data-linenumber="119">
861
- <span class="hits">82</span>
851
+ <li class="covered" data-hits="219" data-linenumber="119">
852
+ <span class="hits">219</span>
862
853
 
863
854
  <code class="ruby"> payload[:request_uri] = &quot;#{site.scheme}://#{site.host}:#{site.port}#{path}&quot;</code>
864
855
  </li>
865
856
 
866
- <li class="covered" data-hits="82" data-linenumber="120">
867
- <span class="hits">82</span>
857
+ <li class="covered" data-hits="219" data-linenumber="120">
858
+ <span class="hits">219</span>
868
859
 
869
860
  <code class="ruby"> payload[:result] = http(path).send(method, *arguments)</code>
870
861
  </li>
@@ -905,14 +896,14 @@
905
896
  <code class="ruby"> def handle_response(path, &amp;block)</code>
906
897
  </li>
907
898
 
908
- <li class="covered" data-hits="82" data-linenumber="127">
909
- <span class="hits">82</span>
899
+ <li class="covered" data-hits="219" data-linenumber="127">
900
+ <span class="hits">219</span>
910
901
 
911
902
  <code class="ruby"> begin</code>
912
903
  </li>
913
904
 
914
- <li class="covered" data-hits="82" data-linenumber="128">
915
- <span class="hits">82</span>
905
+ <li class="covered" data-hits="219" data-linenumber="128">
906
+ <span class="hits">219</span>
916
907
 
917
908
  <code class="ruby"> result = yield</code>
918
909
  </li>
@@ -983,8 +974,8 @@
983
974
  <code class="ruby"> end</code>
984
975
  </li>
985
976
 
986
- <li class="covered" data-hits="81" data-linenumber="140">
987
- <span class="hits">81</span>
977
+ <li class="covered" data-hits="218" data-linenumber="140">
978
+ <span class="hits">218</span>
988
979
 
989
980
  <code class="ruby"> return propogate_response_or_error(result, result.code)</code>
990
981
  </li>
@@ -1007,8 +998,8 @@
1007
998
  <code class="ruby"> def propogate_response_or_error(response, code)</code>
1008
999
  </li>
1009
1000
 
1010
- <li class="covered" data-hits="81" data-linenumber="144">
1011
- <span class="hits">81</span>
1001
+ <li class="covered" data-hits="218" data-linenumber="144">
1002
+ <span class="hits">218</span>
1012
1003
 
1013
1004
  <code class="ruby"> case code.to_i</code>
1014
1005
  </li>
@@ -1031,8 +1022,8 @@
1031
1022
  <code class="ruby"> when 200..400</code>
1032
1023
  </li>
1033
1024
 
1034
- <li class="covered" data-hits="76" data-linenumber="148">
1035
- <span class="hits">76</span>
1025
+ <li class="covered" data-hits="213" data-linenumber="148">
1026
+ <span class="hits">213</span>
1036
1027
 
1037
1028
  <code class="ruby"> response.body</code>
1038
1029
  </li>
@@ -1259,8 +1250,8 @@
1259
1250
  <code class="ruby"> def build_request_headers(headers, verb, uri)</code>
1260
1251
  </li>
1261
1252
 
1262
- <li class="covered" data-hits="84" data-linenumber="186">
1263
- <span class="hits">84</span>
1253
+ <li class="covered" data-hits="222" data-linenumber="186">
1254
+ <span class="hits">222</span>
1264
1255
 
1265
1256
  <code class="ruby"> http_format_header(verb).update(headers)</code>
1266
1257
  </li>
@@ -1283,14 +1274,14 @@
1283
1274
  <code class="ruby"> def http_format_header(verb)</code>
1284
1275
  </li>
1285
1276
 
1286
- <li class="covered" data-hits="84" data-linenumber="190">
1287
- <span class="hits">84</span>
1277
+ <li class="covered" data-hits="222" data-linenumber="190">
1278
+ <span class="hits">222</span>
1288
1279
 
1289
1280
  <code class="ruby"> {}.tap do |ret|</code>
1290
1281
  </li>
1291
1282
 
1292
- <li class="covered" data-hits="84" data-linenumber="191">
1293
- <span class="hits">84</span>
1283
+ <li class="covered" data-hits="222" data-linenumber="191">
1284
+ <span class="hits">222</span>
1294
1285
 
1295
1286
  <code class="ruby"> ret[HTTP_FORMAT_HEADER_NAMES[verb]] = format.mime_type</code>
1296
1287
  </li>
@@ -1937,8 +1928,8 @@
1937
1928
  <code class="ruby"> def initialize(path)</code>
1938
1929
  </li>
1939
1930
 
1940
- <li class="covered" data-hits="81" data-linenumber="15">
1941
- <span class="hits">81</span>
1931
+ <li class="covered" data-hits="218" data-linenumber="15">
1932
+ <span class="hits">218</span>
1942
1933
 
1943
1934
  <code class="ruby"> @path = path</code>
1944
1935
  </li>
@@ -1961,8 +1952,8 @@
1961
1952
  <code class="ruby"> def get(*args, &amp;block)</code>
1962
1953
  </li>
1963
1954
 
1964
- <li class="covered" data-hits="68" data-linenumber="19">
1965
- <span class="hits">68</span>
1955
+ <li class="covered" data-hits="205" data-linenumber="19">
1956
+ <span class="hits">205</span>
1966
1957
 
1967
1958
  <code class="ruby"> Connection.send(:get, @path, *args, &amp;block)</code>
1968
1959
  </li>
@@ -2093,8 +2084,8 @@
2093
2084
  <code class="ruby"> def http(path)</code>
2094
2085
  </li>
2095
2086
 
2096
- <li class="covered" data-hits="81" data-linenumber="41">
2097
- <span class="hits">81</span>
2087
+ <li class="covered" data-hits="218" data-linenumber="41">
2088
+ <span class="hits">218</span>
2098
2089
 
2099
2090
  <code class="ruby"> Interface.new(path)</code>
2100
2091
  </li>
@@ -2339,26 +2330,26 @@
2339
2330
  <code class="ruby"> # these are stored as [[Request, Response], [Request, Response]]</code>
2340
2331
  </li>
2341
2332
 
2342
- <li class="covered" data-hits="74" data-linenumber="82">
2343
- <span class="hits">74</span>
2333
+ <li class="covered" data-hits="211" data-linenumber="82">
2334
+ <span class="hits">211</span>
2344
2335
 
2345
2336
  <code class="ruby"> responses_and_params = self.responses_for_path(request.path)</code>
2346
2337
  </li>
2347
2338
 
2348
- <li class="covered" data-hits="238" data-linenumber="83">
2349
- <span class="hits">238</span>
2339
+ <li class="covered" data-hits="512" data-linenumber="83">
2340
+ <span class="hits">512</span>
2350
2341
 
2351
2342
  <code class="ruby"> ret = (responses_and_params[:responses] || []).select{|pair| pair.first.match?(request)}</code>
2352
2343
  </li>
2353
2344
 
2354
- <li class="covered" data-hits="74" data-linenumber="84">
2355
- <span class="hits">74</span>
2345
+ <li class="covered" data-hits="211" data-linenumber="84">
2346
+ <span class="hits">211</span>
2356
2347
 
2357
2348
  <code class="ruby"> raise Exception.new(&quot;More than one response matches #{request}&quot;) if ret.length &gt; 1</code>
2358
2349
  </li>
2359
2350
 
2360
- <li class="covered" data-hits="74" data-linenumber="85">
2361
- <span class="hits">74</span>
2351
+ <li class="covered" data-hits="211" data-linenumber="85">
2352
+ <span class="hits">211</span>
2362
2353
 
2363
2354
  <code class="ruby"> return ret.first ? {:response =&gt; ret.first[1], :params =&gt; responses_and_params[:params]} : nil</code>
2364
2355
  </li>
@@ -2453,14 +2444,14 @@
2453
2444
  <code class="ruby"> def self.responses_for_path(path)</code>
2454
2445
  </li>
2455
2446
 
2456
- <li class="covered" data-hits="77" data-linenumber="101">
2457
- <span class="hits">77</span>
2447
+ <li class="covered" data-hits="214" data-linenumber="101">
2448
+ <span class="hits">214</span>
2458
2449
 
2459
2450
  <code class="ruby"> path = path.split(&quot;?&quot;).first</code>
2460
2451
  </li>
2461
2452
 
2462
- <li class="covered" data-hits="77" data-linenumber="102">
2463
- <span class="hits">77</span>
2453
+ <li class="covered" data-hits="214" data-linenumber="102">
2454
+ <span class="hits">214</span>
2464
2455
 
2465
2456
  <code class="ruby"> path = path.split(/\./).first</code>
2466
2457
  </li>
@@ -2471,14 +2462,14 @@
2471
2462
  <code class="ruby"> # The obvious case</code>
2472
2463
  </li>
2473
2464
 
2474
- <li class="covered" data-hits="77" data-linenumber="104">
2475
- <span class="hits">77</span>
2465
+ <li class="covered" data-hits="214" data-linenumber="104">
2466
+ <span class="hits">214</span>
2476
2467
 
2477
2468
  <code class="ruby"> if @@endpoints[path]</code>
2478
2469
  </li>
2479
2470
 
2480
- <li class="covered" data-hits="58" data-linenumber="105">
2481
- <span class="hits">58</span>
2471
+ <li class="covered" data-hits="195" data-linenumber="105">
2472
+ <span class="hits">195</span>
2482
2473
 
2483
2474
  <code class="ruby"> return {:responses =&gt; @@endpoints[path], :params =&gt; {}}</code>
2484
2475
  </li>
@@ -2789,14 +2780,14 @@
2789
2780
  <code class="ruby"> def body</code>
2790
2781
  </li>
2791
2782
 
2792
- <li class="covered" data-hits="83" data-linenumber="157">
2793
- <span class="hits">83</span>
2783
+ <li class="covered" data-hits="220" data-linenumber="157">
2784
+ <span class="hits">220</span>
2794
2785
 
2795
2786
  <code class="ruby"> raise Exception.new(&quot;Body must respond to to_#{self.format}&quot;) unless @body.respond_to?(&quot;to_#{self.format}&quot;)</code>
2796
2787
  </li>
2797
2788
 
2798
- <li class="covered" data-hits="83" data-linenumber="158">
2799
- <span class="hits">83</span>
2789
+ <li class="covered" data-hits="220" data-linenumber="158">
2790
+ <span class="hits">220</span>
2800
2791
 
2801
2792
  <code class="ruby"> @body.send(&quot;to_#{self.format}&quot;)</code>
2802
2793
  </li>
@@ -2843,8 +2834,8 @@
2843
2834
  <code class="ruby"> def generate_response(params)</code>
2844
2835
  </li>
2845
2836
 
2846
- <li class="covered" data-hits="71" data-linenumber="166">
2847
- <span class="hits">71</span>
2837
+ <li class="covered" data-hits="208" data-linenumber="166">
2838
+ <span class="hits">208</span>
2848
2839
 
2849
2840
  <code class="ruby"> @body = @body.instance_exec(params, &amp;self.block) if self.block</code>
2850
2841
  </li>
@@ -2891,8 +2882,8 @@
2891
2882
  <code class="ruby"> def initialize(method, path, opts = {})</code>
2892
2883
  </li>
2893
2884
 
2894
- <li class="covered" data-hits="111" data-linenumber="174">
2895
- <span class="hits">111</span>
2885
+ <li class="covered" data-hits="248" data-linenumber="174">
2886
+ <span class="hits">248</span>
2896
2887
 
2897
2888
  <code class="ruby"> @method = method.to_sym</code>
2898
2889
  </li>
@@ -2909,14 +2900,14 @@
2909
2900
  <code class="ruby"> # set the normalized path, format and query string</code>
2910
2901
  </li>
2911
2902
 
2912
- <li class="covered" data-hits="111" data-linenumber="177">
2913
- <span class="hits">111</span>
2903
+ <li class="covered" data-hits="248" data-linenumber="177">
2904
+ <span class="hits">248</span>
2914
2905
 
2915
2906
  <code class="ruby"> @path, @query = path.split(&quot;?&quot;)</code>
2916
2907
  </li>
2917
2908
 
2918
- <li class="covered" data-hits="111" data-linenumber="178">
2919
- <span class="hits">111</span>
2909
+ <li class="covered" data-hits="248" data-linenumber="178">
2910
+ <span class="hits">248</span>
2920
2911
 
2921
2912
  <code class="ruby"> @path, @format = @path.split(&quot;.&quot;)</code>
2922
2913
  </li>
@@ -2933,8 +2924,8 @@
2933
2924
  <code class="ruby"> # if we have params, it is a MockRequest definition</code>
2934
2925
  </li>
2935
2926
 
2936
- <li class="covered" data-hits="111" data-linenumber="181">
2937
- <span class="hits">111</span>
2927
+ <li class="covered" data-hits="248" data-linenumber="181">
2928
+ <span class="hits">248</span>
2938
2929
 
2939
2930
  <code class="ruby"> if opts[:params]</code>
2940
2931
  </li>
@@ -2963,8 +2954,8 @@
2963
2954
  <code class="ruby"> else</code>
2964
2955
  </li>
2965
2956
 
2966
- <li class="covered" data-hits="77" data-linenumber="186">
2967
- <span class="hits">77</span>
2957
+ <li class="covered" data-hits="214" data-linenumber="186">
2958
+ <span class="hits">214</span>
2968
2959
 
2969
2960
  <code class="ruby"> case @method</code>
2970
2961
  </li>
@@ -2987,8 +2978,8 @@
2987
2978
  <code class="ruby"> when :get, :delete, :head</code>
2988
2979
  </li>
2989
2980
 
2990
- <li class="covered" data-hits="72" data-linenumber="190">
2991
- <span class="hits">72</span>
2981
+ <li class="covered" data-hits="209" data-linenumber="190">
2982
+ <span class="hits">209</span>
2992
2983
 
2993
2984
  <code class="ruby"> @params = typecast_values(</code>
2994
2985
  </li>
@@ -3017,20 +3008,20 @@
3017
3008
  <code class="ruby"> end</code>
3018
3009
  </li>
3019
3010
 
3020
- <li class="covered" data-hits="111" data-linenumber="195">
3021
- <span class="hits">111</span>
3011
+ <li class="covered" data-hits="248" data-linenumber="195">
3012
+ <span class="hits">248</span>
3022
3013
 
3023
3014
  <code class="ruby"> @body = opts[:body]</code>
3024
3015
  </li>
3025
3016
 
3026
- <li class="covered" data-hits="111" data-linenumber="196">
3027
- <span class="hits">111</span>
3017
+ <li class="covered" data-hits="248" data-linenumber="196">
3018
+ <span class="hits">248</span>
3028
3019
 
3029
3020
  <code class="ruby"> @headers = opts[:headers] || {}</code>
3030
3021
  </li>
3031
3022
 
3032
- <li class="covered" data-hits="111" data-linenumber="197">
3033
- <span class="hits">111</span>
3023
+ <li class="covered" data-hits="248" data-linenumber="197">
3024
+ <span class="hits">248</span>
3034
3025
 
3035
3026
  <code class="ruby"> @headers[&quot;Content-Length&quot;] = @body.blank? ? &quot;0&quot; : @body.size.to_s</code>
3036
3027
  </li>
@@ -3059,20 +3050,20 @@
3059
3050
  <code class="ruby"> def typecast_values(data)</code>
3060
3051
  </li>
3061
3052
 
3062
- <li class="covered" data-hits="90" data-linenumber="202">
3063
- <span class="hits">90</span>
3053
+ <li class="covered" data-hits="229" data-linenumber="202">
3054
+ <span class="hits">229</span>
3064
3055
 
3065
3056
  <code class="ruby"> if data.is_a?(Hash)</code>
3066
3057
  </li>
3067
3058
 
3068
- <li class="covered" data-hits="74" data-linenumber="203">
3069
- <span class="hits">74</span>
3059
+ <li class="covered" data-hits="211" data-linenumber="203">
3060
+ <span class="hits">211</span>
3070
3061
 
3071
3062
  <code class="ruby"> data.each_pair do |k,v|</code>
3072
3063
  </li>
3073
3064
 
3074
- <li class="covered" data-hits="16" data-linenumber="204">
3075
- <span class="hits">16</span>
3065
+ <li class="covered" data-hits="18" data-linenumber="204">
3066
+ <span class="hits">18</span>
3076
3067
 
3077
3068
  <code class="ruby"> data[k] = typecast_values(v)</code>
3078
3069
  </li>
@@ -3113,8 +3104,8 @@
3113
3104
  <code class="ruby"> else</code>
3114
3105
  </li>
3115
3106
 
3116
- <li class="covered" data-hits="15" data-linenumber="211">
3117
- <span class="hits">15</span>
3107
+ <li class="covered" data-hits="17" data-linenumber="211">
3108
+ <span class="hits">17</span>
3118
3109
 
3119
3110
  <code class="ruby"> data = if data.to_s =~ /^\d+$/</code>
3120
3111
  </li>
@@ -3143,8 +3134,8 @@
3143
3134
  <code class="ruby"> elsif data == &quot;true&quot;</code>
3144
3135
  </li>
3145
3136
 
3146
- <li class="covered" data-hits="9" data-linenumber="216">
3147
- <span class="hits">9</span>
3137
+ <li class="covered" data-hits="11" data-linenumber="216">
3138
+ <span class="hits">11</span>
3148
3139
 
3149
3140
  <code class="ruby"> true</code>
3150
3141
  </li>
@@ -3185,8 +3176,8 @@
3185
3176
  <code class="ruby"> end</code>
3186
3177
  </li>
3187
3178
 
3188
- <li class="covered" data-hits="90" data-linenumber="223">
3189
- <span class="hits">90</span>
3179
+ <li class="covered" data-hits="229" data-linenumber="223">
3180
+ <span class="hits">229</span>
3190
3181
 
3191
3182
  <code class="ruby"> data.nil? ? &quot;&quot; : data</code>
3192
3183
  </li>
@@ -3215,20 +3206,20 @@
3215
3206
  <code class="ruby"> def match?(request)</code>
3216
3207
  </li>
3217
3208
 
3218
- <li class="covered" data-hits="164" data-linenumber="228">
3219
- <span class="hits">164</span>
3209
+ <li class="covered" data-hits="301" data-linenumber="228">
3210
+ <span class="hits">301</span>
3220
3211
 
3221
3212
  <code class="ruby"> return false unless self.method == request.method</code>
3222
3213
  </li>
3223
3214
 
3224
- <li class="covered" data-hits="126" data-linenumber="229">
3225
- <span class="hits">126</span>
3215
+ <li class="covered" data-hits="263" data-linenumber="229">
3216
+ <span class="hits">263</span>
3226
3217
 
3227
3218
  <code class="ruby"> return false unless self.format == request.format || request.format.nil? || self.format.nil?</code>
3228
3219
  </li>
3229
3220
 
3230
- <li class="covered" data-hits="126" data-linenumber="230">
3231
- <span class="hits">126</span>
3221
+ <li class="covered" data-hits="263" data-linenumber="230">
3222
+ <span class="hits">263</span>
3232
3223
 
3233
3224
  <code class="ruby"> Comparator.diff(self.params, request.params) == {}</code>
3234
3225
  </li>