rapuncel 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (63) hide show
  1. data/README.md +39 -33
  2. data/{Rakefile.rb → Rakefile} +1 -1
  3. data/lib/rapuncel.rb +2 -1
  4. data/lib/rapuncel/adapters/net_http_adapter.rb +6 -6
  5. data/lib/rapuncel/base.rb +2 -2
  6. data/lib/rapuncel/client.rb +21 -13
  7. data/lib/rapuncel/connection.rb +2 -2
  8. data/lib/rapuncel/core_ext/array.rb +9 -16
  9. data/lib/rapuncel/core_ext/big_decimal.rb +7 -0
  10. data/lib/rapuncel/core_ext/boolean.rb +10 -13
  11. data/lib/rapuncel/core_ext/float.rb +4 -7
  12. data/lib/rapuncel/core_ext/hash.rb +17 -27
  13. data/lib/rapuncel/core_ext/integer.rb +2 -10
  14. data/lib/rapuncel/core_ext/nil.rb +7 -0
  15. data/lib/rapuncel/core_ext/object.rb +6 -6
  16. data/lib/rapuncel/core_ext/string.rb +5 -7
  17. data/lib/rapuncel/core_ext/symbol.rb +2 -3
  18. data/lib/rapuncel/core_ext/time.rb +5 -8
  19. data/lib/rapuncel/proxy.rb +39 -14
  20. data/lib/rapuncel/request.rb +7 -6
  21. data/lib/rapuncel/response.rb +60 -31
  22. data/rapuncel.gemspec +2 -3
  23. data/test/functional/client_test.rb +38 -7
  24. data/test/functional_test_helper.rb +2 -2
  25. data/test/test_server.rb +3 -3
  26. data/test/unit/array_test.rb +14 -14
  27. data/test/unit/boolean_test.rb +6 -6
  28. data/test/unit/float_test.rb +7 -7
  29. data/test/unit/hash_test.rb +16 -16
  30. data/test/unit/nil_test.rb +16 -0
  31. data/test/unit/object_test.rb +29 -29
  32. data/test/unit/proxy_test.rb +9 -9
  33. data/test/unit/response_test.rb +69 -5
  34. data/test/unit/string_test.rb +15 -7
  35. metadata +13 -53
  36. data/lib/rapuncel/adapters/typhoeus_adapter.rb +0 -33
  37. data/lib/rapuncel/fault.rb +0 -10
  38. data/test/coverage/-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-adapters-typhoeus_adapter_rb.html +0 -231
  39. data/test/coverage/-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-base_rb.html +0 -105
  40. data/test/coverage/-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-client_rb.html +0 -321
  41. data/test/coverage/-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-connection_rb.html +0 -513
  42. data/test/coverage/-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-core_ext-array_rb.html +0 -303
  43. data/test/coverage/-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-core_ext-boolean_rb.html +0 -255
  44. data/test/coverage/-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-core_ext-float_rb.html +0 -177
  45. data/test/coverage/-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-core_ext-hash_rb.html +0 -297
  46. data/test/coverage/-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-core_ext-integer_rb.html +0 -177
  47. data/test/coverage/-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-core_ext-object_rb.html +0 -297
  48. data/test/coverage/-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-core_ext-string_rb.html +0 -159
  49. data/test/coverage/-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-core_ext-time_rb.html +0 -165
  50. data/test/coverage/-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-fault_rb.html +0 -93
  51. data/test/coverage/-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-proxy_rb.html +0 -393
  52. data/test/coverage/-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-request_rb.html +0 -351
  53. data/test/coverage/-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-response_rb.html +0 -399
  54. data/test/coverage/-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel_rb.html +0 -201
  55. data/test/coverage/functional_test_helper_rb.html +0 -141
  56. data/test/coverage/index.html +0 -410
  57. data/test/coverage/jquery-1.3.2.min.js +0 -19
  58. data/test/coverage/jquery.tablesorter.min.js +0 -15
  59. data/test/coverage/print.css +0 -12
  60. data/test/coverage/rcov.js +0 -42
  61. data/test/coverage/screen.css +0 -270
  62. data/test/coverage/test_helper_rb.html +0 -291
  63. data/test/coverage/test_server_rb.html +0 -231
@@ -1,159 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
- <html lang='en' xml:lang='en' xmlns='http://www.w3.org/1999/xhtml'>
3
- <head>
4
- <title>/Users/mariantheisen/Projects/Kayoom/rapuncel/lib/rapuncel/core_ext/string.rb</title>
5
- <link href="screen.css" media="all" rel="stylesheet" type="text/css" />
6
- <link href="print.css" media="print" rel="stylesheet" type="text/css" />
7
-
8
- <meta http-equiv="Content-type" content="text/html;charset=UTF-8" />
9
- <script type="text/javascript" src="rcov.js"></script>
10
- </head>
11
- <body>
12
- <h1>Test C0 Coverage Information - RCov</h1>
13
- <h2>/Users/mariantheisen/Projects/Kayoom/rapuncel/lib/rapuncel/core_ext/string.rb</h2>
14
-
15
-
16
-
17
- <div class="report_table_wrapper">
18
- <table class='report' id='report_table'>
19
- <thead>
20
- <tr>
21
- <th class="left_align">Name</th>
22
- <th class="right_align">Total Lines</th>
23
- <th class="right_align">Lines of Code</th>
24
- <th class="left_align">Total Coverage</th>
25
- <th class="left_align">Code Coverage</th>
26
- </tr>
27
- </thead>
28
- <tbody>
29
- <tr>
30
- <td class="left_align"><a href="-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-core_ext-string_rb.html">/Users/mariantheisen/Projects/Kayoom/rapuncel/lib/rapuncel/core_ext/string.rb</a></td>
31
- <td class='right_align'><tt>16</tt></td>
32
- <td class='right_align'><tt>12</tt></td>
33
- <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
34
- <div class="percent_graph">
35
- <div class="covered" style="width:100px"></div>
36
- <div class="uncovered" style="width:0px"></div>
37
- </div></td>
38
- <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
39
- <div class="percent_graph">
40
- <div class="covered" style="width:100px"></div>
41
- <div class="uncovered" style="width:0px"></div>
42
- </div></td>
43
- </tr>
44
- </tbody>
45
- </table>
46
- </div>
47
-
48
- <h3>Key</h3>
49
-
50
- <div class="key"><pre><span class='marked'>Code reported as executed by Ruby looks like this...</span><span class='marked1'>and this: this line is also marked as covered.</span><span class='inferred'>Lines considered as run by rcov, but not reported by Ruby, look like this,</span><span class='inferred1'>and this: these lines were inferred by rcov (using simple heuristics).</span><span class='uncovered'>Finally, here's a line marked as not executed.</span></pre></div>
51
-
52
- <h3>Coverage Details</h3>
53
-
54
- <table class="details">
55
- <tbody>
56
-
57
-
58
-
59
- <tr class="marked">
60
- <td><pre><a name="line1">1</a> require 'builder'</pre></td>
61
- </tr>
62
-
63
-
64
-
65
- <tr class="marked">
66
- <td><pre><a name="line2">2</a> require 'nokogiri'</pre></td>
67
- </tr>
68
-
69
-
70
-
71
- <tr class="inferred">
72
- <td><pre><a name="line3">3</a> </pre></td>
73
- </tr>
74
-
75
-
76
-
77
- <tr class="marked">
78
- <td><pre><a name="line4">4</a> class String</pre></td>
79
- </tr>
80
-
81
-
82
-
83
- <tr class="inferred">
84
- <td><pre><a name="line5">5</a> </pre></td>
85
- </tr>
86
-
87
-
88
-
89
- <tr class="marked">
90
- <td><pre><a name="line6">6</a> def self.from_xml_rpc xml_node</pre></td>
91
- </tr>
92
-
93
-
94
-
95
- <tr class="marked">
96
- <td><pre><a name="line7">7</a> warn &quot;I, String.from_xml_rpc have been given an xml_node with the wrong tag (name of #{xml_node.name}). My tag should be 'string'. Will still parse at your risk&quot; unless ['string'].include? xml_node.name.downcase</pre></td>
97
- </tr>
98
-
99
-
100
-
101
- <tr class="inferred">
102
- <td><pre><a name="line8">8</a> </pre></td>
103
- </tr>
104
-
105
-
106
-
107
- <tr class="marked">
108
- <td><pre><a name="line9">9</a> xml_node.text #just give back the string between the 'string' tags</pre></td>
109
- </tr>
110
-
111
-
112
-
113
- <tr class="inferred">
114
- <td><pre><a name="line10">10</a> end</pre></td>
115
- </tr>
116
-
117
-
118
-
119
- <tr class="inferred">
120
- <td><pre><a name="line11">11</a> </pre></td>
121
- </tr>
122
-
123
-
124
-
125
- <tr class="marked">
126
- <td><pre><a name="line12">12</a> protected</pre></td>
127
- </tr>
128
-
129
-
130
-
131
- <tr class="marked">
132
- <td><pre><a name="line13">13</a> def to_xml_rpc_name #this suffices. go to object.rb to see why</pre></td>
133
- </tr>
134
-
135
-
136
-
137
- <tr class="marked">
138
- <td><pre><a name="line14">14</a> &quot;string&quot;</pre></td>
139
- </tr>
140
-
141
-
142
-
143
- <tr class="inferred">
144
- <td><pre><a name="line15">15</a> end</pre></td>
145
- </tr>
146
-
147
-
148
-
149
- <tr class="inferred">
150
- <td><pre><a name="line16">16</a> end</pre></td>
151
- </tr>
152
-
153
- </tbody>
154
- </table>
155
-
156
- <p>Generated on Thu Nov 25 12:29:31 +0100 2010 with <a href="http://github.com/relevance/rcov">rcov 0.9.8</a></p>
157
-
158
- </body>
159
- </html>
@@ -1,165 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
- <html lang='en' xml:lang='en' xmlns='http://www.w3.org/1999/xhtml'>
3
- <head>
4
- <title>/Users/mariantheisen/Projects/Kayoom/rapuncel/lib/rapuncel/core_ext/time.rb</title>
5
- <link href="screen.css" media="all" rel="stylesheet" type="text/css" />
6
- <link href="print.css" media="print" rel="stylesheet" type="text/css" />
7
-
8
- <meta http-equiv="Content-type" content="text/html;charset=UTF-8" />
9
- <script type="text/javascript" src="rcov.js"></script>
10
- </head>
11
- <body>
12
- <h1>Test C0 Coverage Information - RCov</h1>
13
- <h2>/Users/mariantheisen/Projects/Kayoom/rapuncel/lib/rapuncel/core_ext/time.rb</h2>
14
-
15
-
16
-
17
- <div class="report_table_wrapper">
18
- <table class='report' id='report_table'>
19
- <thead>
20
- <tr>
21
- <th class="left_align">Name</th>
22
- <th class="right_align">Total Lines</th>
23
- <th class="right_align">Lines of Code</th>
24
- <th class="left_align">Total Coverage</th>
25
- <th class="left_align">Code Coverage</th>
26
- </tr>
27
- </thead>
28
- <tbody>
29
- <tr>
30
- <td class="left_align"><a href="-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-core_ext-time_rb.html">/Users/mariantheisen/Projects/Kayoom/rapuncel/lib/rapuncel/core_ext/time.rb</a></td>
31
- <td class='right_align'><tt>17</tt></td>
32
- <td class='right_align'><tt>12</tt></td>
33
- <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
34
- <div class="percent_graph">
35
- <div class="covered" style="width:100px"></div>
36
- <div class="uncovered" style="width:0px"></div>
37
- </div></td>
38
- <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
39
- <div class="percent_graph">
40
- <div class="covered" style="width:100px"></div>
41
- <div class="uncovered" style="width:0px"></div>
42
- </div></td>
43
- </tr>
44
- </tbody>
45
- </table>
46
- </div>
47
-
48
- <h3>Key</h3>
49
-
50
- <div class="key"><pre><span class='marked'>Code reported as executed by Ruby looks like this...</span><span class='marked1'>and this: this line is also marked as covered.</span><span class='inferred'>Lines considered as run by rcov, but not reported by Ruby, look like this,</span><span class='inferred1'>and this: these lines were inferred by rcov (using simple heuristics).</span><span class='uncovered'>Finally, here's a line marked as not executed.</span></pre></div>
51
-
52
- <h3>Coverage Details</h3>
53
-
54
- <table class="details">
55
- <tbody>
56
-
57
-
58
-
59
- <tr class="marked">
60
- <td><pre><a name="line1">1</a> require 'builder'</pre></td>
61
- </tr>
62
-
63
-
64
-
65
- <tr class="marked">
66
- <td><pre><a name="line2">2</a> require 'time'</pre></td>
67
- </tr>
68
-
69
-
70
-
71
- <tr class="marked">
72
- <td><pre><a name="line3">3</a> require 'nokogiri'</pre></td>
73
- </tr>
74
-
75
-
76
-
77
- <tr class="inferred">
78
- <td><pre><a name="line4">4</a> </pre></td>
79
- </tr>
80
-
81
-
82
-
83
- <tr class="marked">
84
- <td><pre><a name="line5">5</a> class Time</pre></td>
85
- </tr>
86
-
87
-
88
-
89
- <tr class="inferred">
90
- <td><pre><a name="line6">6</a> </pre></td>
91
- </tr>
92
-
93
-
94
-
95
- <tr class="marked">
96
- <td><pre><a name="line7">7</a> def to_xml_rpc b=Rapuncel.get_builder</pre></td>
97
- </tr>
98
-
99
-
100
-
101
- <tr class="marked">
102
- <td><pre><a name="line8">8</a> b.tag! &quot;dateTime.iso8601&quot;, self.iso8601</pre></td>
103
- </tr>
104
-
105
-
106
-
107
- <tr class="inferred">
108
- <td><pre><a name="line9">9</a> end</pre></td>
109
- </tr>
110
-
111
-
112
-
113
- <tr class="inferred">
114
- <td><pre><a name="line10">10</a> </pre></td>
115
- </tr>
116
-
117
-
118
-
119
- <tr class="marked">
120
- <td><pre><a name="line11">11</a> def self.from_xml_rpc xml_node</pre></td>
121
- </tr>
122
-
123
-
124
-
125
- <tr class="marked">
126
- <td><pre><a name="line12">12</a> warn &quot;Need node to be named 'dateTime.iso8601', but it is #{xml_node.name}. Will still parse, at your risk&quot; unless ['dateTime.iso8601'].include? xml_node.name</pre></td>
127
- </tr>
128
-
129
-
130
-
131
- <tr class="inferred">
132
- <td><pre><a name="line13">13</a> </pre></td>
133
- </tr>
134
-
135
-
136
-
137
- <tr class="marked">
138
- <td><pre><a name="line14">14</a> Time.parse xml_node.text #make a Time object of this string which is hopefully in the right format</pre></td>
139
- </tr>
140
-
141
-
142
-
143
- <tr class="inferred">
144
- <td><pre><a name="line15">15</a> end</pre></td>
145
- </tr>
146
-
147
-
148
-
149
- <tr class="inferred">
150
- <td><pre><a name="line16">16</a> </pre></td>
151
- </tr>
152
-
153
-
154
-
155
- <tr class="inferred">
156
- <td><pre><a name="line17">17</a> end</pre></td>
157
- </tr>
158
-
159
- </tbody>
160
- </table>
161
-
162
- <p>Generated on Thu Nov 25 12:29:31 +0100 2010 with <a href="http://github.com/relevance/rcov">rcov 0.9.8</a></p>
163
-
164
- </body>
165
- </html>
@@ -1,93 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
- <html lang='en' xml:lang='en' xmlns='http://www.w3.org/1999/xhtml'>
3
- <head>
4
- <title>/Users/mariantheisen/Projects/Kayoom/rapuncel/lib/rapuncel/fault.rb</title>
5
- <link href="screen.css" media="all" rel="stylesheet" type="text/css" />
6
- <link href="print.css" media="print" rel="stylesheet" type="text/css" />
7
-
8
- <meta http-equiv="Content-type" content="text/html;charset=UTF-8" />
9
- <script type="text/javascript" src="rcov.js"></script>
10
- </head>
11
- <body>
12
- <h1>Test C0 Coverage Information - RCov</h1>
13
- <h2>/Users/mariantheisen/Projects/Kayoom/rapuncel/lib/rapuncel/fault.rb</h2>
14
-
15
-
16
-
17
- <div class="report_table_wrapper">
18
- <table class='report' id='report_table'>
19
- <thead>
20
- <tr>
21
- <th class="left_align">Name</th>
22
- <th class="right_align">Total Lines</th>
23
- <th class="right_align">Lines of Code</th>
24
- <th class="left_align">Total Coverage</th>
25
- <th class="left_align">Code Coverage</th>
26
- </tr>
27
- </thead>
28
- <tbody>
29
- <tr>
30
- <td class="left_align"><a href="-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-fault_rb.html">/Users/mariantheisen/Projects/Kayoom/rapuncel/lib/rapuncel/fault.rb</a></td>
31
- <td class='right_align'><tt>5</tt></td>
32
- <td class='right_align'><tt>4</tt></td>
33
- <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
34
- <div class="percent_graph">
35
- <div class="covered" style="width:100px"></div>
36
- <div class="uncovered" style="width:0px"></div>
37
- </div></td>
38
- <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
39
- <div class="percent_graph">
40
- <div class="covered" style="width:100px"></div>
41
- <div class="uncovered" style="width:0px"></div>
42
- </div></td>
43
- </tr>
44
- </tbody>
45
- </table>
46
- </div>
47
-
48
- <h3>Key</h3>
49
-
50
- <div class="key"><pre><span class='marked'>Code reported as executed by Ruby looks like this...</span><span class='marked1'>and this: this line is also marked as covered.</span><span class='inferred'>Lines considered as run by rcov, but not reported by Ruby, look like this,</span><span class='inferred1'>and this: these lines were inferred by rcov (using simple heuristics).</span><span class='uncovered'>Finally, here's a line marked as not executed.</span></pre></div>
51
-
52
- <h3>Coverage Details</h3>
53
-
54
- <table class="details">
55
- <tbody>
56
-
57
-
58
-
59
- <tr class="marked">
60
- <td><pre><a name="line1">1</a> module Rapuncel</pre></td>
61
- </tr>
62
-
63
-
64
-
65
- <tr class="marked">
66
- <td><pre><a name="line2">2</a> class Fault &lt; Hash</pre></td>
67
- </tr>
68
-
69
-
70
-
71
- <tr class="inferred">
72
- <td><pre><a name="line3">3</a> </pre></td>
73
- </tr>
74
-
75
-
76
-
77
- <tr class="inferred">
78
- <td><pre><a name="line4">4</a> end</pre></td>
79
- </tr>
80
-
81
-
82
-
83
- <tr class="inferred">
84
- <td><pre><a name="line5">5</a> end</pre></td>
85
- </tr>
86
-
87
- </tbody>
88
- </table>
89
-
90
- <p>Generated on Thu Nov 25 12:29:31 +0100 2010 with <a href="http://github.com/relevance/rcov">rcov 0.9.8</a></p>
91
-
92
- </body>
93
- </html>
@@ -1,393 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
- <html lang='en' xml:lang='en' xmlns='http://www.w3.org/1999/xhtml'>
3
- <head>
4
- <title>/Users/mariantheisen/Projects/Kayoom/rapuncel/lib/rapuncel/proxy.rb</title>
5
- <link href="screen.css" media="all" rel="stylesheet" type="text/css" />
6
- <link href="print.css" media="print" rel="stylesheet" type="text/css" />
7
-
8
- <meta http-equiv="Content-type" content="text/html;charset=UTF-8" />
9
- <script type="text/javascript" src="rcov.js"></script>
10
- </head>
11
- <body>
12
- <h1>Test C0 Coverage Information - RCov</h1>
13
- <h2>/Users/mariantheisen/Projects/Kayoom/rapuncel/lib/rapuncel/proxy.rb</h2>
14
-
15
-
16
-
17
- <div class="report_table_wrapper">
18
- <table class='report' id='report_table'>
19
- <thead>
20
- <tr>
21
- <th class="left_align">Name</th>
22
- <th class="right_align">Total Lines</th>
23
- <th class="right_align">Lines of Code</th>
24
- <th class="left_align">Total Coverage</th>
25
- <th class="left_align">Code Coverage</th>
26
- </tr>
27
- </thead>
28
- <tbody>
29
- <tr>
30
- <td class="left_align"><a href="-Users-mariantheisen-Projects-Kayoom-rapuncel-lib-rapuncel-proxy_rb.html">/Users/mariantheisen/Projects/Kayoom/rapuncel/lib/rapuncel/proxy.rb</a></td>
31
- <td class='right_align'><tt>55</tt></td>
32
- <td class='right_align'><tt>46</tt></td>
33
- <td class="left_align"><div class="percent_graph_legend"><tt class=''>98.18%</tt></div>
34
- <div class="percent_graph">
35
- <div class="covered" style="width:98px"></div>
36
- <div class="uncovered" style="width:2px"></div>
37
- </div></td>
38
- <td class="left_align"><div class="percent_graph_legend"><tt class=''>97.83%</tt></div>
39
- <div class="percent_graph">
40
- <div class="covered" style="width:98px"></div>
41
- <div class="uncovered" style="width:2px"></div>
42
- </div></td>
43
- </tr>
44
- </tbody>
45
- </table>
46
- </div>
47
-
48
- <h3>Key</h3>
49
-
50
- <div class="key"><pre><span class='marked'>Code reported as executed by Ruby looks like this...</span><span class='marked1'>and this: this line is also marked as covered.</span><span class='inferred'>Lines considered as run by rcov, but not reported by Ruby, look like this,</span><span class='inferred1'>and this: these lines were inferred by rcov (using simple heuristics).</span><span class='uncovered'>Finally, here's a line marked as not executed.</span></pre></div>
51
-
52
- <h3>Coverage Details</h3>
53
-
54
- <table class="details">
55
- <tbody>
56
-
57
-
58
-
59
- <tr class="marked">
60
- <td><pre><a name="line1">1</a> require 'rapuncel/request'</pre></td>
61
- </tr>
62
-
63
-
64
-
65
- <tr class="inferred">
66
- <td><pre><a name="line2">2</a> </pre></td>
67
- </tr>
68
-
69
-
70
-
71
- <tr class="marked">
72
- <td><pre><a name="line3">3</a> module Rapuncel</pre></td>
73
- </tr>
74
-
75
-
76
-
77
- <tr class="marked">
78
- <td><pre><a name="line4">4</a> class Proxy</pre></td>
79
- </tr>
80
-
81
-
82
-
83
- <tr class="marked">
84
- <td><pre><a name="line5">5</a> PROXY_METHODS = %w(tap inspect clone freeze dup class initialize)</pre></td>
85
- </tr>
86
-
87
-
88
-
89
- <tr class="marked">
90
- <td><pre><a name="line6">6</a> LOCKED_METHODS = %w(method_missing)</pre></td>
91
- </tr>
92
-
93
-
94
-
95
- <tr class="marked">
96
- <td><pre><a name="line7">7</a> LOCKED_PATTERN = /(\A__|\?\Z|!\Z)/</pre></td>
97
- </tr>
98
-
99
-
100
-
101
- <tr class="inferred">
102
- <td><pre><a name="line8">8</a> </pre></td>
103
- </tr>
104
-
105
-
106
-
107
- <tr class="marked">
108
- <td><pre><a name="line9">9</a> class &lt;&lt; self</pre></td>
109
- </tr>
110
-
111
-
112
-
113
- <tr class="marked">
114
- <td><pre><a name="line10">10</a> def new client, interface = nil </pre></td>
115
- </tr>
116
-
117
-
118
-
119
- <tr class="marked">
120
- <td><pre><a name="line11">11</a> allocate.__tap__ do |new_proxy|</pre></td>
121
- </tr>
122
-
123
-
124
-
125
- <tr class="marked">
126
- <td><pre><a name="line12">12</a> new_proxy.__initialize__ client, interface</pre></td>
127
- </tr>
128
-
129
-
130
-
131
- <tr class="inferred">
132
- <td><pre><a name="line13">13</a> end</pre></td>
133
- </tr>
134
-
135
-
136
-
137
- <tr class="inferred">
138
- <td><pre><a name="line14">14</a> end</pre></td>
139
- </tr>
140
-
141
-
142
-
143
- <tr class="inferred">
144
- <td><pre><a name="line15">15</a> </pre></td>
145
- </tr>
146
-
147
-
148
-
149
- <tr class="marked">
150
- <td><pre><a name="line16">16</a> def define_proxy_method name</pre></td>
151
- </tr>
152
-
153
-
154
-
155
- <tr class="marked">
156
- <td><pre><a name="line17">17</a> define_method name do |*args|</pre></td>
157
- </tr>
158
-
159
-
160
-
161
- <tr class="marked">
162
- <td><pre><a name="line18">18</a> call! name, *args</pre></td>
163
- </tr>
164
-
165
-
166
-
167
- <tr class="inferred">
168
- <td><pre><a name="line19">19</a> end</pre></td>
169
- </tr>
170
-
171
-
172
-
173
- <tr class="inferred">
174
- <td><pre><a name="line20">20</a> end</pre></td>
175
- </tr>
176
-
177
-
178
-
179
- <tr class="inferred">
180
- <td><pre><a name="line21">21</a> end</pre></td>
181
- </tr>
182
-
183
-
184
-
185
- <tr class="inferred">
186
- <td><pre><a name="line22">22</a> </pre></td>
187
- </tr>
188
-
189
-
190
-
191
- <tr class="marked">
192
- <td><pre><a name="line23">23</a> PROXY_METHODS.each do |name|</pre></td>
193
- </tr>
194
-
195
-
196
-
197
- <tr class="marked">
198
- <td><pre><a name="line24">24</a> alias_method &quot;__#{name}__&quot;, name</pre></td>
199
- </tr>
200
-
201
-
202
-
203
- <tr class="inferred">
204
- <td><pre><a name="line25">25</a> end</pre></td>
205
- </tr>
206
-
207
-
208
-
209
- <tr class="inferred">
210
- <td><pre><a name="line26">26</a> </pre></td>
211
- </tr>
212
-
213
-
214
-
215
- <tr class="marked">
216
- <td><pre><a name="line27">27</a> instance_methods.each do |name|</pre></td>
217
- </tr>
218
-
219
-
220
-
221
- <tr class="marked">
222
- <td><pre><a name="line28">28</a> unless LOCKED_METHODS.include?(name) || LOCKED_PATTERN.match(name)</pre></td>
223
- </tr>
224
-
225
-
226
-
227
- <tr class="marked">
228
- <td><pre><a name="line29">29</a> define_proxy_method name</pre></td>
229
- </tr>
230
-
231
-
232
-
233
- <tr class="inferred">
234
- <td><pre><a name="line30">30</a> end</pre></td>
235
- </tr>
236
-
237
-
238
-
239
- <tr class="inferred">
240
- <td><pre><a name="line31">31</a> end</pre></td>
241
- </tr>
242
-
243
-
244
-
245
- <tr class="inferred">
246
- <td><pre><a name="line32">32</a> </pre></td>
247
- </tr>
248
-
249
-
250
-
251
- <tr class="marked">
252
- <td><pre><a name="line33">33</a> def call! name, *args</pre></td>
253
- </tr>
254
-
255
-
256
-
257
- <tr class="marked">
258
- <td><pre><a name="line34">34</a> name = [@interface, name] * '.' if @interface</pre></td>
259
- </tr>
260
-
261
-
262
-
263
- <tr class="marked">
264
- <td><pre><a name="line35">35</a> @client.execute_to_ruby Request.new(name, *args)</pre></td>
265
- </tr>
266
-
267
-
268
-
269
- <tr class="inferred">
270
- <td><pre><a name="line36">36</a> end</pre></td>
271
- </tr>
272
-
273
-
274
-
275
- <tr class="inferred">
276
- <td><pre><a name="line37">37</a> </pre></td>
277
- </tr>
278
-
279
-
280
-
281
- <tr class="marked">
282
- <td><pre><a name="line38">38</a> def __initialize__ client, interface</pre></td>
283
- </tr>
284
-
285
-
286
-
287
- <tr class="marked">
288
- <td><pre><a name="line39">39</a> @interface = interface</pre></td>
289
- </tr>
290
-
291
-
292
-
293
- <tr class="marked">
294
- <td><pre><a name="line40">40</a> @client = client</pre></td>
295
- </tr>
296
-
297
-
298
-
299
- <tr class="inferred">
300
- <td><pre><a name="line41">41</a> end</pre></td>
301
- </tr>
302
-
303
-
304
-
305
- <tr class="inferred">
306
- <td><pre><a name="line42">42</a> </pre></td>
307
- </tr>
308
-
309
-
310
-
311
- <tr class="marked">
312
- <td><pre><a name="line43">43</a> protected</pre></td>
313
- </tr>
314
-
315
-
316
-
317
- <tr class="marked">
318
- <td><pre><a name="line44">44</a> def method_missing name, *args</pre></td>
319
- </tr>
320
-
321
-
322
-
323
- <tr class="marked">
324
- <td><pre><a name="line45">45</a> name = name.to_s</pre></td>
325
- </tr>
326
-
327
-
328
-
329
- <tr class="inferred">
330
- <td><pre><a name="line46">46</a> </pre></td>
331
- </tr>
332
-
333
-
334
-
335
- <tr class="marked">
336
- <td><pre><a name="line47">47</a> if LOCKED_PATTERN.match name</pre></td>
337
- </tr>
338
-
339
-
340
-
341
- <tr class="uncovered">
342
- <td><pre><a name="line48">48</a> super</pre></td>
343
- </tr>
344
-
345
-
346
-
347
- <tr class="inferred">
348
- <td><pre><a name="line49">49</a> else</pre></td>
349
- </tr>
350
-
351
-
352
-
353
- <tr class="marked">
354
- <td><pre><a name="line50">50</a> self.__class__.define_proxy_method name</pre></td>
355
- </tr>
356
-
357
-
358
-
359
- <tr class="marked">
360
- <td><pre><a name="line51">51</a> call! name, *args</pre></td>
361
- </tr>
362
-
363
-
364
-
365
- <tr class="inferred">
366
- <td><pre><a name="line52">52</a> end</pre></td>
367
- </tr>
368
-
369
-
370
-
371
- <tr class="inferred">
372
- <td><pre><a name="line53">53</a> end</pre></td>
373
- </tr>
374
-
375
-
376
-
377
- <tr class="inferred">
378
- <td><pre><a name="line54">54</a> end</pre></td>
379
- </tr>
380
-
381
-
382
-
383
- <tr class="inferred">
384
- <td><pre><a name="line55">55</a> end</pre></td>
385
- </tr>
386
-
387
- </tbody>
388
- </table>
389
-
390
- <p>Generated on Thu Nov 25 12:29:31 +0100 2010 with <a href="http://github.com/relevance/rcov">rcov 0.9.8</a></p>
391
-
392
- </body>
393
- </html>