acts_as_price 0.2.4 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (47) hide show
  1. data/Gemfile +4 -8
  2. data/README.rdoc +3 -1
  3. data/Rakefile +11 -16
  4. data/VERSION +1 -1
  5. data/acts_as_price.gemspec +56 -48
  6. data/lib/acts_as_price.rb +5 -1
  7. data/rdoc/ActiveRecord.html +154 -0
  8. data/rdoc/ActiveRecord/Acts.html +154 -0
  9. data/rdoc/ActiveRecord/Acts/Price.html +203 -0
  10. data/rdoc/ActiveRecord/Acts/Price/ClassMethods.html +251 -0
  11. data/rdoc/ActsAsPriceHelper.html +458 -0
  12. data/rdoc/README_rdoc.html +238 -0
  13. data/rdoc/created.rid +4 -1
  14. data/rdoc/images/brick.png +0 -0
  15. data/rdoc/images/brick_link.png +0 -0
  16. data/rdoc/images/bug.png +0 -0
  17. data/rdoc/images/bullet_black.png +0 -0
  18. data/rdoc/images/bullet_toggle_minus.png +0 -0
  19. data/rdoc/images/bullet_toggle_plus.png +0 -0
  20. data/rdoc/images/date.png +0 -0
  21. data/rdoc/images/find.png +0 -0
  22. data/rdoc/images/loadingAnimation.gif +0 -0
  23. data/rdoc/images/macFFBgHack.png +0 -0
  24. data/rdoc/images/package.png +0 -0
  25. data/rdoc/images/page_green.png +0 -0
  26. data/rdoc/images/page_white_text.png +0 -0
  27. data/rdoc/images/page_white_width.png +0 -0
  28. data/rdoc/images/plugin.png +0 -0
  29. data/rdoc/images/ruby.png +0 -0
  30. data/rdoc/images/tag_green.png +0 -0
  31. data/rdoc/images/wrench.png +0 -0
  32. data/rdoc/images/wrench_orange.png +0 -0
  33. data/rdoc/images/zoom.png +0 -0
  34. data/rdoc/index.html +74 -20
  35. data/rdoc/js/darkfish.js +116 -0
  36. data/rdoc/js/jquery.js +32 -0
  37. data/rdoc/js/quicksearch.js +114 -0
  38. data/rdoc/js/thickbox-compressed.js +10 -0
  39. data/rdoc/lib/acts_as_price_helper_rb.html +52 -0
  40. data/rdoc/lib/acts_as_price_rb.html +52 -0
  41. data/rdoc/rdoc.css +706 -0
  42. data/spec/advanced_tests/car_spec.rb +0 -19
  43. data/spec/advanced_tests/fueltype_spec.rb +0 -18
  44. data/spec/models/car.rb +3 -2
  45. data/spec/spec_helper.rb +23 -4
  46. metadata +93 -175
  47. data/Gemfile.lock +0 -166
@@ -0,0 +1,458 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5
+ <head>
6
+ <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
7
+
8
+ <title>Module: ActsAsPriceHelper</title>
9
+
10
+ <link rel="stylesheet" href="./rdoc.css" type="text/css" media="screen" />
11
+
12
+ <script src="./js/jquery.js" type="text/javascript"
13
+ charset="utf-8"></script>
14
+ <script src="./js/thickbox-compressed.js" type="text/javascript"
15
+ charset="utf-8"></script>
16
+ <script src="./js/quicksearch.js" type="text/javascript"
17
+ charset="utf-8"></script>
18
+ <script src="./js/darkfish.js" type="text/javascript"
19
+ charset="utf-8"></script>
20
+
21
+ </head>
22
+ <body class="module">
23
+
24
+ <div id="metadata">
25
+ <div id="home-metadata">
26
+ <div id="home-section" class="section">
27
+ <h3 class="section-header">
28
+ <a href="./index.html">Home</a>
29
+ <a href="./index.html#classes">Classes</a>
30
+ <a href="./index.html#methods">Methods</a>
31
+ </h3>
32
+ </div>
33
+ </div>
34
+
35
+ <div id="file-metadata">
36
+ <div id="file-list-section" class="section">
37
+ <h3 class="section-header">In Files</h3>
38
+ <div class="section-body">
39
+ <ul>
40
+
41
+ <li><a href="./lib/acts_as_price_helper_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
42
+ class="thickbox" title="lib/acts_as_price_helper.rb">lib/acts_as_price_helper.rb</a></li>
43
+
44
+ </ul>
45
+ </div>
46
+ </div>
47
+
48
+
49
+ </div>
50
+
51
+ <div id="class-metadata">
52
+
53
+ <!-- Parent Class -->
54
+
55
+
56
+ <!-- Namespace Contents -->
57
+
58
+
59
+ <!-- Method Quickref -->
60
+
61
+ <div id="method-list-section" class="section">
62
+ <h3 class="section-header">Methods</h3>
63
+ <ul class="link-list">
64
+
65
+ <li><a href="#method-i-columns_in_cents">#columns_in_cents</a></li>
66
+
67
+ <li><a href="#method-i-columns_in_doubles">#columns_in_doubles</a></li>
68
+
69
+ <li><a href="#method-i-test_acts_as_price_methods">#test_acts_as_price_methods</a></li>
70
+
71
+ <li><a href="#method-i-test_setter_in_cents">#test_setter_in_cents</a></li>
72
+
73
+ <li><a href="#method-i-test_setter_in_doubles">#test_setter_in_doubles</a></li>
74
+
75
+ </ul>
76
+ </div>
77
+
78
+
79
+ <!-- Included Modules -->
80
+
81
+ </div>
82
+
83
+ <div id="project-metadata">
84
+
85
+
86
+ <div id="fileindex-section" class="section project-section">
87
+ <h3 class="section-header">Files</h3>
88
+ <ul>
89
+
90
+ <li class="file"><a href="./README_rdoc.html">README.rdoc</a></li>
91
+
92
+ </ul>
93
+ </div>
94
+
95
+
96
+ <div id="classindex-section" class="section project-section">
97
+ <h3 class="section-header">Class Index
98
+ <span class="search-toggle"><img src="./images/find.png"
99
+ height="16" width="16" alt="[+]"
100
+ title="show/hide quicksearch" /></span></h3>
101
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
102
+ <fieldset>
103
+ <legend>Quicksearch</legend>
104
+ <input type="text" name="quicksearch" value=""
105
+ class="quicksearch-field" />
106
+ </fieldset>
107
+ </form>
108
+
109
+ <ul class="link-list">
110
+
111
+ <li><a href="./ActiveRecord.html">ActiveRecord</a></li>
112
+
113
+ <li><a href="./ActiveRecord/Acts.html">ActiveRecord::Acts</a></li>
114
+
115
+ <li><a href="./ActiveRecord/Acts/Price.html">ActiveRecord::Acts::Price</a></li>
116
+
117
+ <li><a href="./ActiveRecord/Acts/Price/ClassMethods.html">ActiveRecord::Acts::Price::ClassMethods</a></li>
118
+
119
+ <li><a href="./ActsAsPriceHelper.html">ActsAsPriceHelper</a></li>
120
+
121
+ </ul>
122
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
123
+ </div>
124
+
125
+
126
+ </div>
127
+ </div>
128
+
129
+ <div id="documentation">
130
+ <h1 class="module">ActsAsPriceHelper</h1>
131
+
132
+ <div id="description">
133
+
134
+ </div>
135
+
136
+ <!-- Constants -->
137
+
138
+
139
+ <!-- Attributes -->
140
+
141
+
142
+ <!-- Methods -->
143
+
144
+ <div id="public-instance-method-details" class="method-section section">
145
+ <h3 class="section-header">Public Instance Methods</h3>
146
+
147
+
148
+ <div id="columns-in-cents-method" class="method-detail ">
149
+ <a name="method-i-columns_in_cents"></a>
150
+
151
+ <div class="method-heading">
152
+
153
+ <span class="method-name">columns_in_cents</span><span
154
+ class="method-args">()</span>
155
+ <span class="method-click-advice">click to toggle source</span>
156
+
157
+ </div>
158
+
159
+ <div class="method-description">
160
+
161
+
162
+
163
+
164
+
165
+ <div class="method-source-code"
166
+ id="columns-in-cents-source">
167
+ <pre>
168
+ <span class="ruby-comment cmt"># File lib/acts_as_price_helper.rb, line 114</span>
169
+ 114: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">columns_in_cents</span>
170
+ 115: [<span class="ruby-value">:price_in_cents</span>, <span class="ruby-node">&quot;#{@column_name}_in_cents&quot;</span>]
171
+ 116: <span class="ruby-keyword kw">end</span></pre>
172
+ </div>
173
+
174
+ </div>
175
+
176
+
177
+
178
+
179
+ </div>
180
+
181
+
182
+ <div id="columns-in-doubles-method" class="method-detail ">
183
+ <a name="method-i-columns_in_doubles"></a>
184
+
185
+ <div class="method-heading">
186
+
187
+ <span class="method-name">columns_in_doubles</span><span
188
+ class="method-args">()</span>
189
+ <span class="method-click-advice">click to toggle source</span>
190
+
191
+ </div>
192
+
193
+ <div class="method-description">
194
+
195
+
196
+
197
+
198
+
199
+ <div class="method-source-code"
200
+ id="columns-in-doubles-source">
201
+ <pre>
202
+ <span class="ruby-comment cmt"># File lib/acts_as_price_helper.rb, line 118</span>
203
+ 118: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">columns_in_doubles</span>
204
+ 119: [<span class="ruby-value">:price</span>, <span class="ruby-ivar">@column_name</span>]
205
+ 120: <span class="ruby-keyword kw">end</span></pre>
206
+ </div>
207
+
208
+ </div>
209
+
210
+
211
+
212
+
213
+ </div>
214
+
215
+
216
+ <div id="test-acts-as-price-methods-method" class="method-detail ">
217
+ <a name="method-i-test_acts_as_price_methods"></a>
218
+
219
+ <div class="method-heading">
220
+
221
+ <span class="method-name">test_acts_as_price_methods</span><span
222
+ class="method-args">(column_name, seperator, options = {})</span>
223
+ <span class="method-click-advice">click to toggle source</span>
224
+
225
+ </div>
226
+
227
+ <div class="method-description">
228
+
229
+ <p>
230
+ Test the acts_as_price plugin for the specified column_name and given
231
+ seperator.
232
+ </p>
233
+ <p>
234
+ Valid options:
235
+ </p>
236
+ <ul>
237
+ <li><p>
238
+ model: Not just the model name, but a full object of the model
239
+ </p>
240
+ </li>
241
+ </ul>
242
+ <p>
243
+ EXAMPLE:
244
+ </p>
245
+ <ul>
246
+ <li><p>
247
+ <a
248
+ href="ActsAsPriceHelper.html#method-i-test_acts_as_price_methods">test_acts_as_price_methods</a>
249
+ :price, &#8220;,&#8221;, :model => @fuel
250
+ </p>
251
+ </li>
252
+ </ul>
253
+ <p>
254
+ Note the you can also specify the model in a before block in your tests
255
+ </p>
256
+
257
+
258
+
259
+ <div class="method-source-code"
260
+ id="test-acts-as-price-methods-source">
261
+ <pre>
262
+ <span class="ruby-comment cmt"># File lib/acts_as_price_helper.rb, line 10</span>
263
+ 10: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_acts_as_price_methods</span> <span class="ruby-identifier">column_name</span>, <span class="ruby-identifier">seperator</span>, <span class="ruby-identifier">options</span> = {}
264
+ 11: <span class="ruby-ivar">@acts_as_price_model</span> = <span class="ruby-identifier">options</span>[<span class="ruby-value">:model</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-value">:model</span>]
265
+ 12:
266
+ 13: <span class="ruby-ivar">@column_name</span> = <span class="ruby-identifier">column_name</span>
267
+ 14: <span class="ruby-identifier">columns_in_cents</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">column</span><span class="ruby-operator">|</span>
268
+ 15: <span class="ruby-ivar">@acts_as_price_model</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">column</span>).<span class="ruby-identifier">should</span> <span class="ruby-operator">==</span> <span class="ruby-ivar">@acts_as_price_model</span>.<span class="ruby-identifier">price_in_cents</span>
269
+ 16: <span class="ruby-keyword kw">end</span>
270
+ 17: <span class="ruby-identifier">columns_in_doubles</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">column</span><span class="ruby-operator">|</span>
271
+ 18: <span class="ruby-ivar">@acts_as_price_model</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">column</span>).<span class="ruby-identifier">should</span> <span class="ruby-operator">==</span> <span class="ruby-ivar">@acts_as_price_model</span>.<span class="ruby-identifier">price</span>
272
+ 19: <span class="ruby-keyword kw">end</span>
273
+ 20:
274
+ 21: <span class="ruby-comment cmt">#normal test for setter</span>
275
+ 22: <span class="ruby-identifier">test_setter_in_cents</span> <span class="ruby-value str">&quot;144&quot;</span>, <span class="ruby-identifier">seperator</span>
276
+ 23:
277
+ 24: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@acts_as_price_model</span>.<span class="ruby-identifier">currency</span>
278
+ 25: <span class="ruby-identifier">currency</span> = <span class="ruby-ivar">@acts_as_price_model</span>.<span class="ruby-identifier">currency</span>
279
+ 26: <span class="ruby-identifier">test_setter_in_doubles</span> <span class="ruby-node">&quot;#{currency}. 1.41&quot;</span>, <span class="ruby-identifier">seperator</span>
280
+ 27: <span class="ruby-identifier">test_setter_in_doubles</span> <span class="ruby-node">&quot;#{currency}. 1,41&quot;</span>, <span class="ruby-identifier">seperator</span>
281
+ 28:
282
+ 29: <span class="ruby-comment cmt">#test for special cases</span>
283
+ 30: <span class="ruby-comment cmt">#test if 1.5 is returned as 1.50</span>
284
+ 31: <span class="ruby-identifier">test_setter_in_doubles</span> <span class="ruby-node">&quot;#{currency}. 1.5&quot;</span>, <span class="ruby-identifier">seperator</span>
285
+ 32: <span class="ruby-identifier">test_setter_in_doubles</span> <span class="ruby-node">&quot;#{currency}. 1.505&quot;</span>, <span class="ruby-identifier">seperator</span>
286
+ 33: <span class="ruby-identifier">test_setter_in_doubles</span> <span class="ruby-node">&quot;#{currency}. 1.504&quot;</span>, <span class="ruby-identifier">seperator</span>
287
+ 34:
288
+ 35: <span class="ruby-comment cmt">#test if 1,5 is returned as 1.50</span>
289
+ 36: <span class="ruby-identifier">test_setter_in_doubles</span> <span class="ruby-node">&quot;#{currency}. 1,5&quot;</span>, <span class="ruby-identifier">seperator</span>
290
+ 37: <span class="ruby-identifier">test_setter_in_doubles</span> <span class="ruby-node">&quot;#{currency}. 1,505&quot;</span>, <span class="ruby-identifier">seperator</span>
291
+ 38: <span class="ruby-identifier">test_setter_in_doubles</span> <span class="ruby-node">&quot;#{currency}. 1,504&quot;</span>, <span class="ruby-identifier">seperator</span>
292
+ 39:
293
+ 40: <span class="ruby-comment cmt">#test if float returns 2.05 correctly </span>
294
+ 41: <span class="ruby-comment cmt">#float can return 2.05 as 2.04 in some cases</span>
295
+ 42: <span class="ruby-identifier">test_setter_in_doubles</span> <span class="ruby-node">&quot;#{currency}. 2.05&quot;</span>, <span class="ruby-identifier">seperator</span>
296
+ 43:
297
+ 44: <span class="ruby-comment cmt">#float can return 2,05 as 2.04 in some cases</span>
298
+ 45: <span class="ruby-identifier">test_setter_in_doubles</span> <span class="ruby-node">&quot;#{currency}. 2,05&quot;</span>, <span class="ruby-identifier">seperator</span>
299
+ 46: <span class="ruby-keyword kw">else</span>
300
+ 47: <span class="ruby-identifier">test_setter_in_doubles</span> <span class="ruby-value str">&quot;1.41&quot;</span>, <span class="ruby-identifier">seperator</span>
301
+ 48: <span class="ruby-identifier">test_setter_in_doubles</span> <span class="ruby-value str">&quot;1,41&quot;</span>, <span class="ruby-identifier">seperator</span>
302
+ 49:
303
+ 50: <span class="ruby-comment cmt">#test for special cases</span>
304
+ 51: <span class="ruby-comment cmt">#test if 1.5 is returned as 1.50</span>
305
+ 52: <span class="ruby-identifier">test_setter_in_doubles</span> <span class="ruby-value str">&quot;1.5&quot;</span>, <span class="ruby-identifier">seperator</span>
306
+ 53: <span class="ruby-comment cmt">#test if 1,5 is returned as 1.50</span>
307
+ 54: <span class="ruby-identifier">test_setter_in_doubles</span> <span class="ruby-value str">&quot;1,5&quot;</span>, <span class="ruby-identifier">seperator</span>
308
+ 55:
309
+ 56: <span class="ruby-comment cmt">#test if float returns 2.05 correctly </span>
310
+ 57: <span class="ruby-comment cmt">#float can return 2.05 as 2.04 in some cases</span>
311
+ 58: <span class="ruby-identifier">test_setter_in_doubles</span> <span class="ruby-value str">&quot;2.05&quot;</span>, <span class="ruby-identifier">seperator</span>
312
+ 59:
313
+ 60: <span class="ruby-comment cmt">#float can return 2,05 as 2.04 in some cases</span>
314
+ 61: <span class="ruby-identifier">test_setter_in_doubles</span> <span class="ruby-value str">&quot;2,05&quot;</span>, <span class="ruby-identifier">seperator</span>
315
+ 62: <span class="ruby-keyword kw">end</span>
316
+ 63:
317
+ 64: <span class="ruby-comment cmt">#test an empty_setter</span>
318
+ 65: <span class="ruby-identifier">test_setter_in_cents</span> <span class="ruby-value str">&quot;&quot;</span>, <span class="ruby-identifier">seperator</span>
319
+ 66: <span class="ruby-identifier">test_setter_in_doubles</span> <span class="ruby-value str">&quot;&quot;</span>, <span class="ruby-identifier">seperator</span>
320
+ 67: <span class="ruby-keyword kw">end</span></pre>
321
+ </div>
322
+
323
+ </div>
324
+
325
+
326
+
327
+
328
+ </div>
329
+
330
+
331
+ <div id="test-setter-in-cents-method" class="method-detail ">
332
+ <a name="method-i-test_setter_in_cents"></a>
333
+
334
+ <div class="method-heading">
335
+
336
+ <span class="method-name">test_setter_in_cents</span><span
337
+ class="method-args">(cents, seperator)</span>
338
+ <span class="method-click-advice">click to toggle source</span>
339
+
340
+ </div>
341
+
342
+ <div class="method-description">
343
+
344
+ <p>
345
+ test if the setter sets the price correctly if price is given in integers
346
+ </p>
347
+
348
+
349
+
350
+ <div class="method-source-code"
351
+ id="test-setter-in-cents-source">
352
+ <pre>
353
+ <span class="ruby-comment cmt"># File lib/acts_as_price_helper.rb, line 70</span>
354
+ 70: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_setter_in_cents</span> <span class="ruby-identifier">cents</span>, <span class="ruby-identifier">seperator</span>
355
+ 71: <span class="ruby-identifier">columns_in_cents</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">setter</span><span class="ruby-operator">|</span>
356
+ 72: <span class="ruby-ivar">@acts_as_price_model</span>.<span class="ruby-identifier">send</span>(<span class="ruby-node">&quot;#{setter}=&quot;</span>, <span class="ruby-identifier">cents</span>)
357
+ 73: <span class="ruby-identifier">columns_in_cents</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">getter</span><span class="ruby-operator">|</span>
358
+ 74: <span class="ruby-ivar">@acts_as_price_model</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">getter</span>).<span class="ruby-identifier">should</span> <span class="ruby-operator">==</span> (<span class="ruby-identifier">cents</span>.<span class="ruby-identifier">to_f</span> <span class="ruby-operator">+</span> <span class="ruby-value">0.5</span>).<span class="ruby-identifier">to_i</span>
359
+ 75: <span class="ruby-keyword kw">end</span>
360
+ 76: <span class="ruby-identifier">columns_in_doubles</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">getter</span><span class="ruby-operator">|</span>
361
+ 77: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">cents</span> <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;&quot;</span>
362
+ 78: <span class="ruby-ivar">@acts_as_price_model</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">getter</span>).<span class="ruby-identifier">should</span> <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;&quot;</span>
363
+ 79: <span class="ruby-keyword kw">else</span>
364
+ 80: <span class="ruby-identifier">currency</span> = <span class="ruby-ivar">@acts_as_price_model</span>.<span class="ruby-identifier">currency</span>
365
+ 81: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">currency</span>
366
+ 82: <span class="ruby-ivar">@acts_as_price_model</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">getter</span>).<span class="ruby-identifier">should</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">currency</span> <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;. &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">sprintf</span>(<span class="ruby-value str">&quot;%.2f&quot;</span>, (<span class="ruby-identifier">cents</span>.<span class="ruby-identifier">to_f</span> <span class="ruby-operator">/</span> <span class="ruby-value">100</span>).<span class="ruby-identifier">to_s</span>).<span class="ruby-identifier">gsub</span>(<span class="ruby-value str">&quot;.&quot;</span>, <span class="ruby-identifier">seperator</span>)
367
+ 83: <span class="ruby-keyword kw">else</span>
368
+ 84: <span class="ruby-ivar">@acts_as_price_model</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">getter</span>).<span class="ruby-identifier">should</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">sprintf</span>(<span class="ruby-value str">&quot;%.2f&quot;</span>, (<span class="ruby-identifier">cents</span>.<span class="ruby-identifier">to_f</span> <span class="ruby-operator">/</span> <span class="ruby-value">100</span>).<span class="ruby-identifier">to_s</span>).<span class="ruby-identifier">gsub</span>(<span class="ruby-value str">&quot;.&quot;</span>, <span class="ruby-identifier">seperator</span>)
369
+ 85: <span class="ruby-keyword kw">end</span>
370
+ 86: <span class="ruby-keyword kw">end</span>
371
+ 87: <span class="ruby-keyword kw">end</span>
372
+ 88: <span class="ruby-keyword kw">end</span>
373
+ 89: <span class="ruby-keyword kw">end</span></pre>
374
+ </div>
375
+
376
+ </div>
377
+
378
+
379
+
380
+
381
+ </div>
382
+
383
+
384
+ <div id="test-setter-in-doubles-method" class="method-detail ">
385
+ <a name="method-i-test_setter_in_doubles"></a>
386
+
387
+ <div class="method-heading">
388
+
389
+ <span class="method-name">test_setter_in_doubles</span><span
390
+ class="method-args">(double, seperator)</span>
391
+ <span class="method-click-advice">click to toggle source</span>
392
+
393
+ </div>
394
+
395
+ <div class="method-description">
396
+
397
+ <p>
398
+ test if the setter sets the price correctly if price is given in doubles
399
+ </p>
400
+
401
+
402
+
403
+ <div class="method-source-code"
404
+ id="test-setter-in-doubles-source">
405
+ <pre>
406
+ <span class="ruby-comment cmt"># File lib/acts_as_price_helper.rb, line 92</span>
407
+ 92: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_setter_in_doubles</span> <span class="ruby-identifier">double</span>, <span class="ruby-identifier">seperator</span>
408
+ 93: <span class="ruby-identifier">currency</span> = <span class="ruby-ivar">@acts_as_price_model</span>.<span class="ruby-identifier">currency</span>
409
+ 94: <span class="ruby-identifier">double</span> = <span class="ruby-identifier">double</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-node">&quot;#{currency}. &quot;</span>, <span class="ruby-value str">&quot;&quot;</span>)
410
+ 95: <span class="ruby-identifier">columns_in_doubles</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">setter</span><span class="ruby-operator">|</span>
411
+ 96: <span class="ruby-ivar">@acts_as_price_model</span>.<span class="ruby-identifier">send</span>(<span class="ruby-node">&quot;#{setter}=&quot;</span>, <span class="ruby-identifier">double</span>)
412
+ 97: <span class="ruby-identifier">columns_in_cents</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">getter</span><span class="ruby-operator">|</span>
413
+ 98: <span class="ruby-ivar">@acts_as_price_model</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">getter</span>).<span class="ruby-identifier">should</span> <span class="ruby-operator">==</span> ((<span class="ruby-identifier">double</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-value str">&quot;,&quot;</span>, <span class="ruby-value str">&quot;.&quot;</span>).<span class="ruby-identifier">to_f</span> * <span class="ruby-value">100</span>) <span class="ruby-operator">+</span> <span class="ruby-value">0.5</span>).<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">to_i</span>
414
+ 99: <span class="ruby-keyword kw">end</span>
415
+ 100: <span class="ruby-identifier">columns_in_doubles</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">getter</span><span class="ruby-operator">|</span>
416
+ 101: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">double</span> <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;&quot;</span>
417
+ 102: <span class="ruby-ivar">@acts_as_price_model</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">getter</span>).<span class="ruby-identifier">should</span> <span class="ruby-operator">==</span> <span class="ruby-value str">&quot;&quot;</span>
418
+ 103: <span class="ruby-keyword kw">else</span>
419
+ 104: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">currency</span>
420
+ 105: <span class="ruby-ivar">@acts_as_price_model</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">getter</span>).<span class="ruby-identifier">should</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">currency</span> <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;. &quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">sprintf</span>(<span class="ruby-value str">&quot;%.2f&quot;</span>, <span class="ruby-identifier">double</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-value str">&quot;,&quot;</span>, <span class="ruby-value str">&quot;.&quot;</span>).<span class="ruby-identifier">to_f</span> <span class="ruby-operator">+</span> <span class="ruby-value">0.0001</span>).<span class="ruby-identifier">gsub</span>(<span class="ruby-value str">&quot;.&quot;</span>, <span class="ruby-identifier">seperator</span>)
421
+ 106: <span class="ruby-keyword kw">else</span>
422
+ 107: <span class="ruby-ivar">@acts_as_price_model</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">getter</span>).<span class="ruby-identifier">should</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">sprintf</span>(<span class="ruby-value str">&quot;%.2f&quot;</span>, <span class="ruby-identifier">double</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-value str">&quot;,&quot;</span>, <span class="ruby-value str">&quot;.&quot;</span>).<span class="ruby-identifier">to_s</span>).<span class="ruby-identifier">gsub</span>(<span class="ruby-value str">&quot;.&quot;</span>, <span class="ruby-identifier">seperator</span>)
423
+ 108: <span class="ruby-keyword kw">end</span>
424
+ 109: <span class="ruby-keyword kw">end</span>
425
+ 110: <span class="ruby-keyword kw">end</span>
426
+ 111: <span class="ruby-keyword kw">end</span>
427
+ 112: <span class="ruby-keyword kw">end</span></pre>
428
+ </div>
429
+
430
+ </div>
431
+
432
+
433
+
434
+
435
+ </div>
436
+
437
+
438
+ </div>
439
+
440
+
441
+ </div>
442
+
443
+
444
+ <div id="rdoc-debugging-section-dump" class="debugging-section">
445
+
446
+ <p>Disabled; run with --debug to generate this.</p>
447
+
448
+ </div>
449
+
450
+ <div id="validator-badges">
451
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
452
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
453
+ Rdoc Generator</a> 1.1.6</small>.</p>
454
+ </div>
455
+
456
+ </body>
457
+ </html>
458
+