quantitymanager 0.2.0 → 0.9.0

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 (174) hide show
  1. data/doc/classes/Array.html +12 -12
  2. data/doc/classes/Array.src/M000042.html +23 -0
  3. data/doc/classes/Array.src/M000043.html +19 -0
  4. data/doc/classes/CalculatorTest.html +72 -72
  5. data/doc/classes/CalculatorTest.src/M000024.html +18 -10
  6. data/doc/classes/CalculatorTest.src/M000025.html +11 -17
  7. data/doc/classes/CalculatorTest.src/M000026.html +11 -13
  8. data/doc/classes/CalculatorTest.src/M000027.html +19 -13
  9. data/doc/classes/CalculatorTest.src/M000028.html +12 -11
  10. data/doc/classes/CalculatorTest.src/M000029.html +12 -9
  11. data/doc/classes/CalculatorTest.src/M000030.html +10 -10
  12. data/doc/classes/CalculatorTest.src/M000031.html +9 -15
  13. data/doc/classes/CalculatorTest.src/M000032.html +11 -8
  14. data/doc/classes/CalculatorTest.src/M000033.html +15 -7
  15. data/doc/classes/CalculatorTest.src/M000034.html +8 -17
  16. data/doc/classes/CalculatorTest.src/M000035.html +9 -6
  17. data/doc/classes/CalculatorTest.src/M000036.html +32 -0
  18. data/doc/classes/CalculatorTest.src/M000037.html +20 -0
  19. data/doc/classes/CompasedUnitTest.html +32 -2
  20. data/doc/classes/CompasedUnitTest.src/M000001.html +1 -1
  21. data/doc/classes/CompasedUnitTest.src/M000002.html +1 -1
  22. data/doc/classes/CompasedUnitTest.src/M000003.html +1 -1
  23. data/doc/classes/CompasedUnitTest.src/M000004.html +1 -1
  24. data/doc/classes/CompasedUnitTest.src/M000005.html +1 -1
  25. data/doc/classes/CompasedUnitTest.src/M000006.html +1 -1
  26. data/doc/classes/CompasedUnitTest.src/M000007.html +1 -1
  27. data/doc/classes/CompasedUnitTest.src/M000008.html +1 -1
  28. data/doc/classes/CompasedUnitTest.src/M000009.html +1 -1
  29. data/doc/classes/CompasedUnitTest.src/M000010.html +1 -1
  30. data/doc/classes/CompasedUnitTest.src/M000011.html +18 -0
  31. data/doc/classes/CompasedUnitTest.src/M000012.html +32 -0
  32. data/doc/classes/Configuration.html +22 -22
  33. data/doc/classes/Configuration.src/M000044.html +5 -4
  34. data/doc/classes/Configuration.src/M000045.html +4 -10
  35. data/doc/classes/Configuration.src/M000046.html +18 -0
  36. data/doc/classes/Configuration.src/M000047.html +24 -0
  37. data/doc/classes/ConfigurationTest.html +22 -22
  38. data/doc/classes/ConfigurationTest.src/M000068.html +16 -9
  39. data/doc/classes/ConfigurationTest.src/M000069.html +27 -0
  40. data/doc/classes/ConfigurationTest.src/M000070.html +35 -0
  41. data/doc/classes/ConfigurationTest.src/M000071.html +24 -0
  42. data/doc/classes/CustomUnitConversionTest.html +47 -32
  43. data/doc/classes/CustomUnitConversionTest.src/M000055.html +16 -11
  44. data/doc/classes/CustomUnitConversionTest.src/M000056.html +9 -10
  45. data/doc/classes/CustomUnitConversionTest.src/M000057.html +6 -10
  46. data/doc/classes/CustomUnitConversionTest.src/M000058.html +26 -0
  47. data/doc/classes/CustomUnitConversionTest.src/M000059.html +26 -0
  48. data/doc/classes/CustomUnitConversionTest.src/M000060.html +24 -0
  49. data/doc/classes/CustomUnitConversionTest.src/M000061.html +27 -0
  50. data/doc/classes/Numeric.html +2 -2
  51. data/doc/classes/QuantifiableTest.html +22 -22
  52. data/doc/classes/QuantifiableTest.src/M000038.html +8 -25
  53. data/doc/classes/QuantifiableTest.src/M000039.html +12 -9
  54. data/doc/classes/QuantifiableTest.src/M000040.html +41 -0
  55. data/doc/classes/QuantifiableTest.src/M000041.html +31 -0
  56. data/doc/classes/Quantity/CalculationSupport.html +168 -0
  57. data/doc/classes/Quantity/CalculationSupport.src/M000075.html +22 -0
  58. data/doc/classes/Quantity/CalculationSupport.src/M000076.html +21 -0
  59. data/doc/classes/Quantity/CalculationSupport.src/M000077.html +18 -0
  60. data/doc/classes/Quantity/Calculator.html +32 -32
  61. data/doc/classes/Quantity/Calculator.src/M000083.html +1 -1
  62. data/doc/classes/Quantity/Calculator.src/M000084.html +2 -2
  63. data/doc/classes/Quantity/Calculator.src/M000085.html +1 -1
  64. data/doc/classes/Quantity/Calculator.src/M000086.html +2 -2
  65. data/doc/classes/Quantity/Calculator.src/M000087.html +1 -1
  66. data/doc/classes/Quantity/Calculator.src/M000088.html +2 -3
  67. data/doc/classes/Quantity/Measurable.html +12 -12
  68. data/doc/classes/Quantity/Measurable.src/M000073.html +18 -0
  69. data/doc/classes/Quantity/Measurable.src/M000074.html +18 -0
  70. data/doc/classes/Quantity/OperationInfo.html +13 -13
  71. data/doc/classes/Quantity/OperationInfo.src/M000089.html +3 -3
  72. data/doc/classes/Quantity/OperationInfo.src/M000090.html +1 -1
  73. data/doc/classes/Quantity/Quantifiable.html +7 -7
  74. data/doc/classes/Quantity/Quantifiable.src/M000072.html +18 -0
  75. data/doc/classes/Quantity/Quantity.html +18 -18
  76. data/doc/classes/Quantity/Quantity.src/M000078.html +1 -1
  77. data/doc/classes/Quantity/Quantity.src/M000079.html +1 -1
  78. data/doc/classes/Quantity/Quantity.src/M000080.html +1 -1
  79. data/doc/classes/Quantity/QuantityInfo.html +13 -13
  80. data/doc/classes/Quantity/QuantityInfo.src/M000081.html +1 -1
  81. data/doc/classes/Quantity/QuantityInfo.src/M000082.html +1 -1
  82. data/doc/classes/Quantity.html +5 -5
  83. data/doc/classes/QuantityTest.html +44 -29
  84. data/doc/classes/QuantityTest.src/M000048.html +18 -13
  85. data/doc/classes/QuantityTest.src/M000049.html +17 -4
  86. data/doc/classes/QuantityTest.src/M000050.html +12 -7
  87. data/doc/classes/QuantityTest.src/M000051.html +6 -6
  88. data/doc/classes/QuantityTest.src/M000052.html +22 -0
  89. data/doc/classes/QuantityTest.src/M000053.html +20 -0
  90. data/doc/classes/QuantityTest.src/M000054.html +27 -0
  91. data/doc/classes/SimpleUnitTest.html +29 -44
  92. data/doc/classes/SimpleUnitTest.src/M000062.html +9 -11
  93. data/doc/classes/SimpleUnitTest.src/M000063.html +12 -8
  94. data/doc/classes/SimpleUnitTest.src/M000064.html +7 -4
  95. data/doc/classes/SimpleUnitTest.src/M000065.html +20 -0
  96. data/doc/classes/SimpleUnitTest.src/M000066.html +26 -0
  97. data/doc/classes/SimpleUnitTest.src/M000067.html +21 -0
  98. data/doc/classes/SpecParserTest.html +17 -17
  99. data/doc/classes/SpecParserTest.src/M000021.html +10 -16
  100. data/doc/classes/SpecParserTest.src/M000022.html +28 -0
  101. data/doc/classes/SpecParserTest.src/M000023.html +31 -0
  102. data/doc/classes/Unit/BaseUnit.html +148 -0
  103. data/doc/classes/Unit/BaseUnit.src/M000108.html +18 -0
  104. data/doc/classes/Unit/Comparable.html +12 -12
  105. data/doc/classes/Unit/Comparable.src/M000092.html +1 -1
  106. data/doc/classes/Unit/Comparable.src/M000093.html +1 -1
  107. data/doc/classes/Unit/ComposedUnit.html +61 -55
  108. data/doc/classes/Unit/ComposedUnit.src/M000109.html +7 -10
  109. data/doc/classes/Unit/ComposedUnit.src/M000110.html +4 -8
  110. data/doc/classes/Unit/ComposedUnit.src/M000111.html +4 -15
  111. data/doc/classes/Unit/ComposedUnit.src/M000112.html +6 -10
  112. data/doc/classes/Unit/ComposedUnit.src/M000113.html +4 -11
  113. data/doc/classes/Unit/ComposedUnit.src/M000114.html +4 -4
  114. data/doc/classes/Unit/ComposedUnit.src/M000115.html +22 -0
  115. data/doc/classes/Unit/ComposedUnit.src/M000116.html +25 -0
  116. data/doc/classes/Unit/ComposedUnit.src/M000117.html +18 -0
  117. data/doc/classes/Unit/Optimizer.html +12 -12
  118. data/doc/classes/Unit/Optimizer.src/M000106.html +30 -4
  119. data/doc/classes/Unit/Optimizer.src/M000107.html +18 -0
  120. data/doc/classes/Unit/Parser.html +17 -17
  121. data/doc/classes/Unit/Parser.src/M000103.html +4 -11
  122. data/doc/classes/Unit/Parser.src/M000104.html +11 -5
  123. data/doc/classes/Unit/Parser.src/M000105.html +19 -0
  124. data/doc/classes/Unit/SimpleUnit.html +57 -51
  125. data/doc/classes/Unit/SimpleUnit.src/M000094.html +2 -2
  126. data/doc/classes/Unit/SimpleUnit.src/M000095.html +1 -1
  127. data/doc/classes/Unit/SimpleUnit.src/M000096.html +1 -1
  128. data/doc/classes/Unit/SimpleUnit.src/M000097.html +4 -6
  129. data/doc/classes/Unit/SimpleUnit.src/M000098.html +4 -4
  130. data/doc/classes/Unit/SimpleUnit.src/M000099.html +4 -7
  131. data/doc/classes/Unit/SimpleUnit.src/M000100.html +7 -4
  132. data/doc/classes/Unit/SimpleUnit.src/M000101.html +18 -0
  133. data/doc/classes/Unit/SymbolConverter.html +7 -7
  134. data/doc/classes/Unit/SymbolConverter.src/M000091.html +1 -1
  135. data/doc/classes/Unit/TestCase.html +5 -11
  136. data/doc/classes/Unit/TestCase.src/M000102.html +24 -0
  137. data/doc/classes/Unit.html +6 -4
  138. data/doc/classes/UnitOptemizerTest.html +45 -42
  139. data/doc/classes/UnitOptemizerTest.src/M000013.html +16 -12
  140. data/doc/classes/UnitOptemizerTest.src/M000014.html +6 -8
  141. data/doc/classes/UnitOptemizerTest.src/M000015.html +9 -9
  142. data/doc/classes/UnitOptemizerTest.src/M000016.html +6 -5
  143. data/doc/classes/UnitOptemizerTest.src/M000017.html +9 -5
  144. data/doc/classes/UnitOptemizerTest.src/M000018.html +12 -8
  145. data/doc/classes/UnitOptemizerTest.src/M000019.html +23 -0
  146. data/doc/classes/UnitOptemizerTest.src/M000020.html +22 -0
  147. data/doc/created.rid +1 -1
  148. data/doc/files/lib/config/default_configuration_rb.html +108 -0
  149. data/doc/files/lib/quantity_rb.html +113 -0
  150. data/doc/files/lib/unitmanager/calculator_rb.html +101 -0
  151. data/doc/files/lib/unitmanager/configuration_rb.html +101 -0
  152. data/doc/files/lib/unitmanager/quantity_rb.html +101 -0
  153. data/doc/files/lib/unitmanager/simple_unit_rb.html +109 -0
  154. data/doc/files/lib/unitmanager/unit_composition_rb.html +101 -0
  155. data/doc/files/test/all_tests_rb.html +1 -8
  156. data/doc/files/test/calculator_test_rb.html +109 -0
  157. data/doc/files/test/composed_unit_test_rb.html +101 -0
  158. data/doc/files/test/configuration_test_rb.html +109 -0
  159. data/doc/files/test/custom_conversion_test_rb.html +109 -0
  160. data/doc/files/test/quantifiable_test_rb.html +101 -0
  161. data/doc/files/test/quantity_test_rb.html +101 -0
  162. data/doc/files/test/simple_unit_test_rb.html +101 -0
  163. data/doc/files/test/test_helper_rb.html +1 -2
  164. data/doc/files/test/unit_optimizer_test_rb.html +101 -0
  165. data/doc/files/test/unit_spec_parser_test_rb.html +101 -0
  166. data/doc/fr_class_index.html +13 -1
  167. data/doc/fr_file_index.html +18 -7
  168. data/doc/fr_method_index.html +117 -51
  169. data/doc/index.html +1 -1
  170. data/lib/unitmanager/calculator.rb +4 -5
  171. data/lib/unitmanager/quantity.rb +30 -39
  172. data/lib/unitmanager/simple_unit.rb +5 -5
  173. data/test/quantity_test.rb +13 -0
  174. metadata +69 -3
@@ -55,8 +55,8 @@
55
55
  <tr class="top-aligned-row">
56
56
  <td><strong>In:</strong></td>
57
57
  <td>
58
- <a href="../files/unitmanager/simple_unit_rb.html">
59
- unitmanager/simple_unit.rb
58
+ <a href="../files/lib/unitmanager/simple_unit_rb.html">
59
+ lib/unitmanager/simple_unit.rb
60
60
  </a>
61
61
  <br />
62
62
  </td>
@@ -93,8 +93,8 @@ functionality to compare array content regardless element order.
93
93
  <h3 class="section-bar">Methods</h3>
94
94
 
95
95
  <div class="name-list">
96
- <a href="#M000001">contains?</a>&nbsp;&nbsp;
97
- <a href="#M000002">same?</a>&nbsp;&nbsp;
96
+ <a href="#M000042">contains?</a>&nbsp;&nbsp;
97
+ <a href="#M000043">same?</a>&nbsp;&nbsp;
98
98
  </div>
99
99
  </div>
100
100
 
@@ -116,12 +116,12 @@ functionality to compare array content regardless element order.
116
116
  <div id="methods">
117
117
  <h3 class="section-bar">Public Instance methods</h3>
118
118
 
119
- <div id="method-M000001" class="method-detail">
120
- <a name="M000001"></a>
119
+ <div id="method-M000042" class="method-detail">
120
+ <a name="M000042"></a>
121
121
 
122
122
  <div class="method-heading">
123
- <a href="Array.src/M000001.html" target="Code" class="method-signature"
124
- onclick="popupCode('Array.src/M000001.html');return false;">
123
+ <a href="Array.src/M000042.html" target="Code" class="method-signature"
124
+ onclick="popupCode('Array.src/M000042.html');return false;">
125
125
  <span class="method-name">contains?</span><span class="method-args">(other_array)</span>
126
126
  </a>
127
127
  </div>
@@ -130,12 +130,12 @@ functionality to compare array content regardless element order.
130
130
  </div>
131
131
  </div>
132
132
 
133
- <div id="method-M000002" class="method-detail">
134
- <a name="M000002"></a>
133
+ <div id="method-M000043" class="method-detail">
134
+ <a name="M000043"></a>
135
135
 
136
136
  <div class="method-heading">
137
- <a href="Array.src/M000002.html" target="Code" class="method-signature"
138
- onclick="popupCode('Array.src/M000002.html');return false;">
137
+ <a href="Array.src/M000043.html" target="Code" class="method-signature"
138
+ onclick="popupCode('Array.src/M000043.html');return false;">
139
139
  <span class="method-name">same?</span><span class="method-args">(other_array)</span>
140
140
  </a>
141
141
  </div>
@@ -0,0 +1,23 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>contains? (Array)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/unitmanager/simple_unit.rb, line 4</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">contains?</span>(<span class="ruby-identifier">other_array</span>)
15
+ <span class="ruby-identifier">copy</span> = <span class="ruby-identifier">dup</span>
16
+ <span class="ruby-identifier">other_array</span>.<span class="ruby-identifier">each</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">item</span><span class="ruby-operator">|</span>
17
+ <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">i</span> = <span class="ruby-identifier">copy</span>.<span class="ruby-identifier">index</span>(<span class="ruby-identifier">item</span>)
18
+ <span class="ruby-identifier">copy</span>[<span class="ruby-identifier">i</span>] = <span class="ruby-keyword kw">nil</span>
19
+ }
20
+ <span class="ruby-keyword kw">true</span>
21
+ <span class="ruby-keyword kw">end</span></pre>
22
+ </body>
23
+ </html>
@@ -0,0 +1,19 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>same? (Array)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/unitmanager/simple_unit.rb, line 13</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">same?</span>(<span class="ruby-identifier">other_array</span>)
15
+ <span class="ruby-identifier">length</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">other_array</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&amp;&amp;</span>
16
+ <span class="ruby-identifier">contains?</span>(<span class="ruby-identifier">other_array</span>)
17
+ <span class="ruby-keyword kw">end</span></pre>
18
+ </body>
19
+ </html>
@@ -55,8 +55,8 @@
55
55
  <tr class="top-aligned-row">
56
56
  <td><strong>In:</strong></td>
57
57
  <td>
58
- <a href="../files/test/unit/calculator_test_rb.html">
59
- test/unit/calculator_test.rb
58
+ <a href="../files/test/calculator_test_rb.html">
59
+ test/calculator_test.rb
60
60
  </a>
61
61
  <br />
62
62
  </td>
@@ -86,20 +86,20 @@
86
86
  <h3 class="section-bar">Methods</h3>
87
87
 
88
88
  <div class="name-list">
89
- <a href="#M000022">setup</a>&nbsp;&nbsp;
90
- <a href="#M000035">test_add_existing_unit</a>&nbsp;&nbsp;
91
- <a href="#M000034">test_add_unit</a>&nbsp;&nbsp;
92
- <a href="#M000024">test_calculator_expression_method</a>&nbsp;&nbsp;
93
- <a href="#M000026">test_complex_conver_to</a>&nbsp;&nbsp;
94
- <a href="#M000025">test_convert_to</a>&nbsp;&nbsp;
95
- <a href="#M000033">test_different_calculation_approaches</a>&nbsp;&nbsp;
96
- <a href="#M000023">test_quantity_creation</a>&nbsp;&nbsp;
97
- <a href="#M000027">test_reverse_unit_conversion</a>&nbsp;&nbsp;
98
- <a href="#M000031">test_simple_divide</a>&nbsp;&nbsp;
99
- <a href="#M000030">test_simple_multiply</a>&nbsp;&nbsp;
100
- <a href="#M000028">test_simple_same_base_add</a>&nbsp;&nbsp;
101
- <a href="#M000029">test_simple_same_base_subtract</a>&nbsp;&nbsp;
102
- <a href="#M000032">test_string_unit_spec</a>&nbsp;&nbsp;
89
+ <a href="#M000024">setup</a>&nbsp;&nbsp;
90
+ <a href="#M000037">test_add_existing_unit</a>&nbsp;&nbsp;
91
+ <a href="#M000036">test_add_unit</a>&nbsp;&nbsp;
92
+ <a href="#M000026">test_calculator_expression_method</a>&nbsp;&nbsp;
93
+ <a href="#M000028">test_complex_conver_to</a>&nbsp;&nbsp;
94
+ <a href="#M000027">test_convert_to</a>&nbsp;&nbsp;
95
+ <a href="#M000035">test_different_calculation_approaches</a>&nbsp;&nbsp;
96
+ <a href="#M000025">test_quantity_creation</a>&nbsp;&nbsp;
97
+ <a href="#M000029">test_reverse_unit_conversion</a>&nbsp;&nbsp;
98
+ <a href="#M000033">test_simple_divide</a>&nbsp;&nbsp;
99
+ <a href="#M000032">test_simple_multiply</a>&nbsp;&nbsp;
100
+ <a href="#M000030">test_simple_same_base_add</a>&nbsp;&nbsp;
101
+ <a href="#M000031">test_simple_same_base_subtract</a>&nbsp;&nbsp;
102
+ <a href="#M000034">test_string_unit_spec</a>&nbsp;&nbsp;
103
103
  </div>
104
104
  </div>
105
105
 
@@ -121,12 +121,12 @@
121
121
  <div id="methods">
122
122
  <h3 class="section-bar">Public Instance methods</h3>
123
123
 
124
- <div id="method-M000022" class="method-detail">
125
- <a name="M000022"></a>
124
+ <div id="method-M000024" class="method-detail">
125
+ <a name="M000024"></a>
126
126
 
127
127
  <div class="method-heading">
128
- <a href="CalculatorTest.src/M000022.html" target="Code" class="method-signature"
129
- onclick="popupCode('CalculatorTest.src/M000022.html');return false;">
128
+ <a href="CalculatorTest.src/M000024.html" target="Code" class="method-signature"
129
+ onclick="popupCode('CalculatorTest.src/M000024.html');return false;">
130
130
  <span class="method-name">setup</span><span class="method-args">()</span>
131
131
  </a>
132
132
  </div>
@@ -135,12 +135,12 @@
135
135
  </div>
136
136
  </div>
137
137
 
138
- <div id="method-M000035" class="method-detail">
139
- <a name="M000035"></a>
138
+ <div id="method-M000037" class="method-detail">
139
+ <a name="M000037"></a>
140
140
 
141
141
  <div class="method-heading">
142
- <a href="CalculatorTest.src/M000035.html" target="Code" class="method-signature"
143
- onclick="popupCode('CalculatorTest.src/M000035.html');return false;">
142
+ <a href="CalculatorTest.src/M000037.html" target="Code" class="method-signature"
143
+ onclick="popupCode('CalculatorTest.src/M000037.html');return false;">
144
144
  <span class="method-name">test_add_existing_unit</span><span class="method-args">()</span>
145
145
  </a>
146
146
  </div>
@@ -149,12 +149,12 @@
149
149
  </div>
150
150
  </div>
151
151
 
152
- <div id="method-M000034" class="method-detail">
153
- <a name="M000034"></a>
152
+ <div id="method-M000036" class="method-detail">
153
+ <a name="M000036"></a>
154
154
 
155
155
  <div class="method-heading">
156
- <a href="CalculatorTest.src/M000034.html" target="Code" class="method-signature"
157
- onclick="popupCode('CalculatorTest.src/M000034.html');return false;">
156
+ <a href="CalculatorTest.src/M000036.html" target="Code" class="method-signature"
157
+ onclick="popupCode('CalculatorTest.src/M000036.html');return false;">
158
158
  <span class="method-name">test_add_unit</span><span class="method-args">()</span>
159
159
  </a>
160
160
  </div>
@@ -163,12 +163,12 @@
163
163
  </div>
164
164
  </div>
165
165
 
166
- <div id="method-M000024" class="method-detail">
167
- <a name="M000024"></a>
166
+ <div id="method-M000026" class="method-detail">
167
+ <a name="M000026"></a>
168
168
 
169
169
  <div class="method-heading">
170
- <a href="CalculatorTest.src/M000024.html" target="Code" class="method-signature"
171
- onclick="popupCode('CalculatorTest.src/M000024.html');return false;">
170
+ <a href="CalculatorTest.src/M000026.html" target="Code" class="method-signature"
171
+ onclick="popupCode('CalculatorTest.src/M000026.html');return false;">
172
172
  <span class="method-name">test_calculator_expression_method</span><span class="method-args">()</span>
173
173
  </a>
174
174
  </div>
@@ -177,12 +177,12 @@
177
177
  </div>
178
178
  </div>
179
179
 
180
- <div id="method-M000026" class="method-detail">
181
- <a name="M000026"></a>
180
+ <div id="method-M000028" class="method-detail">
181
+ <a name="M000028"></a>
182
182
 
183
183
  <div class="method-heading">
184
- <a href="CalculatorTest.src/M000026.html" target="Code" class="method-signature"
185
- onclick="popupCode('CalculatorTest.src/M000026.html');return false;">
184
+ <a href="CalculatorTest.src/M000028.html" target="Code" class="method-signature"
185
+ onclick="popupCode('CalculatorTest.src/M000028.html');return false;">
186
186
  <span class="method-name">test_complex_conver_to</span><span class="method-args">()</span>
187
187
  </a>
188
188
  </div>
@@ -191,12 +191,12 @@
191
191
  </div>
192
192
  </div>
193
193
 
194
- <div id="method-M000025" class="method-detail">
195
- <a name="M000025"></a>
194
+ <div id="method-M000027" class="method-detail">
195
+ <a name="M000027"></a>
196
196
 
197
197
  <div class="method-heading">
198
- <a href="CalculatorTest.src/M000025.html" target="Code" class="method-signature"
199
- onclick="popupCode('CalculatorTest.src/M000025.html');return false;">
198
+ <a href="CalculatorTest.src/M000027.html" target="Code" class="method-signature"
199
+ onclick="popupCode('CalculatorTest.src/M000027.html');return false;">
200
200
  <span class="method-name">test_convert_to</span><span class="method-args">()</span>
201
201
  </a>
202
202
  </div>
@@ -205,12 +205,12 @@
205
205
  </div>
206
206
  </div>
207
207
 
208
- <div id="method-M000033" class="method-detail">
209
- <a name="M000033"></a>
208
+ <div id="method-M000035" class="method-detail">
209
+ <a name="M000035"></a>
210
210
 
211
211
  <div class="method-heading">
212
- <a href="CalculatorTest.src/M000033.html" target="Code" class="method-signature"
213
- onclick="popupCode('CalculatorTest.src/M000033.html');return false;">
212
+ <a href="CalculatorTest.src/M000035.html" target="Code" class="method-signature"
213
+ onclick="popupCode('CalculatorTest.src/M000035.html');return false;">
214
214
  <span class="method-name">test_different_calculation_approaches</span><span class="method-args">()</span>
215
215
  </a>
216
216
  </div>
@@ -219,12 +219,12 @@
219
219
  </div>
220
220
  </div>
221
221
 
222
- <div id="method-M000023" class="method-detail">
223
- <a name="M000023"></a>
222
+ <div id="method-M000025" class="method-detail">
223
+ <a name="M000025"></a>
224
224
 
225
225
  <div class="method-heading">
226
- <a href="CalculatorTest.src/M000023.html" target="Code" class="method-signature"
227
- onclick="popupCode('CalculatorTest.src/M000023.html');return false;">
226
+ <a href="CalculatorTest.src/M000025.html" target="Code" class="method-signature"
227
+ onclick="popupCode('CalculatorTest.src/M000025.html');return false;">
228
228
  <span class="method-name">test_quantity_creation</span><span class="method-args">()</span>
229
229
  </a>
230
230
  </div>
@@ -233,12 +233,12 @@
233
233
  </div>
234
234
  </div>
235
235
 
236
- <div id="method-M000027" class="method-detail">
237
- <a name="M000027"></a>
236
+ <div id="method-M000029" class="method-detail">
237
+ <a name="M000029"></a>
238
238
 
239
239
  <div class="method-heading">
240
- <a href="CalculatorTest.src/M000027.html" target="Code" class="method-signature"
241
- onclick="popupCode('CalculatorTest.src/M000027.html');return false;">
240
+ <a href="CalculatorTest.src/M000029.html" target="Code" class="method-signature"
241
+ onclick="popupCode('CalculatorTest.src/M000029.html');return false;">
242
242
  <span class="method-name">test_reverse_unit_conversion</span><span class="method-args">()</span>
243
243
  </a>
244
244
  </div>
@@ -247,12 +247,12 @@
247
247
  </div>
248
248
  </div>
249
249
 
250
- <div id="method-M000031" class="method-detail">
251
- <a name="M000031"></a>
250
+ <div id="method-M000033" class="method-detail">
251
+ <a name="M000033"></a>
252
252
 
253
253
  <div class="method-heading">
254
- <a href="CalculatorTest.src/M000031.html" target="Code" class="method-signature"
255
- onclick="popupCode('CalculatorTest.src/M000031.html');return false;">
254
+ <a href="CalculatorTest.src/M000033.html" target="Code" class="method-signature"
255
+ onclick="popupCode('CalculatorTest.src/M000033.html');return false;">
256
256
  <span class="method-name">test_simple_divide</span><span class="method-args">()</span>
257
257
  </a>
258
258
  </div>
@@ -261,12 +261,12 @@
261
261
  </div>
262
262
  </div>
263
263
 
264
- <div id="method-M000030" class="method-detail">
265
- <a name="M000030"></a>
264
+ <div id="method-M000032" class="method-detail">
265
+ <a name="M000032"></a>
266
266
 
267
267
  <div class="method-heading">
268
- <a href="CalculatorTest.src/M000030.html" target="Code" class="method-signature"
269
- onclick="popupCode('CalculatorTest.src/M000030.html');return false;">
268
+ <a href="CalculatorTest.src/M000032.html" target="Code" class="method-signature"
269
+ onclick="popupCode('CalculatorTest.src/M000032.html');return false;">
270
270
  <span class="method-name">test_simple_multiply</span><span class="method-args">()</span>
271
271
  </a>
272
272
  </div>
@@ -275,12 +275,12 @@
275
275
  </div>
276
276
  </div>
277
277
 
278
- <div id="method-M000028" class="method-detail">
279
- <a name="M000028"></a>
278
+ <div id="method-M000030" class="method-detail">
279
+ <a name="M000030"></a>
280
280
 
281
281
  <div class="method-heading">
282
- <a href="CalculatorTest.src/M000028.html" target="Code" class="method-signature"
283
- onclick="popupCode('CalculatorTest.src/M000028.html');return false;">
282
+ <a href="CalculatorTest.src/M000030.html" target="Code" class="method-signature"
283
+ onclick="popupCode('CalculatorTest.src/M000030.html');return false;">
284
284
  <span class="method-name">test_simple_same_base_add</span><span class="method-args">()</span>
285
285
  </a>
286
286
  </div>
@@ -289,12 +289,12 @@
289
289
  </div>
290
290
  </div>
291
291
 
292
- <div id="method-M000029" class="method-detail">
293
- <a name="M000029"></a>
292
+ <div id="method-M000031" class="method-detail">
293
+ <a name="M000031"></a>
294
294
 
295
295
  <div class="method-heading">
296
- <a href="CalculatorTest.src/M000029.html" target="Code" class="method-signature"
297
- onclick="popupCode('CalculatorTest.src/M000029.html');return false;">
296
+ <a href="CalculatorTest.src/M000031.html" target="Code" class="method-signature"
297
+ onclick="popupCode('CalculatorTest.src/M000031.html');return false;">
298
298
  <span class="method-name">test_simple_same_base_subtract</span><span class="method-args">()</span>
299
299
  </a>
300
300
  </div>
@@ -303,12 +303,12 @@
303
303
  </div>
304
304
  </div>
305
305
 
306
- <div id="method-M000032" class="method-detail">
307
- <a name="M000032"></a>
306
+ <div id="method-M000034" class="method-detail">
307
+ <a name="M000034"></a>
308
308
 
309
309
  <div class="method-heading">
310
- <a href="CalculatorTest.src/M000032.html" target="Code" class="method-signature"
311
- onclick="popupCode('CalculatorTest.src/M000032.html');return false;">
310
+ <a href="CalculatorTest.src/M000034.html" target="Code" class="method-signature"
311
+ onclick="popupCode('CalculatorTest.src/M000034.html');return false;">
312
312
  <span class="method-name">test_string_unit_spec</span><span class="method-args">()</span>
313
313
  </a>
314
314
  </div>
@@ -5,21 +5,29 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>test_calculator_expression_method (CalculatorTest)</title>
8
+ <title>setup (CalculatorTest)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File test/unit/calculator_test.rb, line 42</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_calculator_expression_method</span>
15
- <span class="ruby-identifier">qty</span> = <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">exp</span> {<span class="ruby-value">5</span>.<span class="ruby-identifier">lb</span>}
16
- <span class="ruby-identifier">assert</span>(<span class="ruby-identifier">qty</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Quantity</span>))
17
-
18
- <span class="ruby-identifier">qty</span> = <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">exp</span> {<span class="ruby-value">12</span>.<span class="ruby-identifier">mm</span> <span class="ruby-operator">+</span> <span class="ruby-value">34.7</span>.<span class="ruby-identifier">cm</span>}
19
- <span class="ruby-identifier">assert</span>(<span class="ruby-identifier">qty</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Quantity</span>))
13
+ <pre><span class="ruby-comment cmt"># File test/calculator_test.rb, line 8</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">setup</span>
15
+
16
+ <span class="ruby-ivar">@units</span> = {}
17
+ <span class="ruby-ivar">@units</span>[<span class="ruby-identifier">:mm</span>] = <span class="ruby-constant">SimpleUnit</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:mm</span>)
18
+ <span class="ruby-ivar">@units</span>[<span class="ruby-identifier">:cm</span>] = <span class="ruby-constant">SimpleUnit</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:cm</span>, <span class="ruby-identifier">:based_on</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@units</span>[<span class="ruby-identifier">:mm</span>], <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">10</span>)
19
+ <span class="ruby-ivar">@units</span>[<span class="ruby-identifier">:m</span>] = <span class="ruby-constant">SimpleUnit</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:m</span>, <span class="ruby-identifier">:based_on</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@units</span>[<span class="ruby-identifier">:cm</span>], <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">100</span>)
20
+
21
+ <span class="ruby-ivar">@units</span>[<span class="ruby-identifier">:g</span>] = <span class="ruby-constant">SimpleUnit</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:g</span>)
22
+ <span class="ruby-ivar">@units</span>[<span class="ruby-identifier">:kg</span>] = <span class="ruby-constant">SimpleUnit</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:kg</span>, <span class="ruby-identifier">:based_on</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@units</span>[<span class="ruby-identifier">:g</span>], <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">1000.0</span>)
23
+ <span class="ruby-ivar">@units</span>[<span class="ruby-identifier">:oz</span>] = <span class="ruby-constant">SimpleUnit</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:oz</span>, <span class="ruby-identifier">:based_on</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@units</span>[<span class="ruby-identifier">:g</span>], <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">28.349523125</span>)
24
+ <span class="ruby-ivar">@units</span>[<span class="ruby-identifier">:lb</span>] = <span class="ruby-constant">SimpleUnit</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:lb</span>, <span class="ruby-identifier">:based_on</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@units</span>[<span class="ruby-identifier">:oz</span>], <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">16</span>)
25
+ <span class="ruby-ivar">@units</span>[<span class="ruby-identifier">:mg</span>] = <span class="ruby-constant">SimpleUnit</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:mg</span>, <span class="ruby-identifier">:based_on</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@units</span>[<span class="ruby-identifier">:g</span>], <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span><span class="ruby-value">.001</span>)
26
+
27
+ <span class="ruby-ivar">@units</span>[<span class="ruby-identifier">:sec</span>] = <span class="ruby-constant">SimpleUnit</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:sec</span>)
20
28
 
21
- <span class="ruby-identifier">qty</span> = <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">quantity</span>(<span class="ruby-value">45</span>, <span class="ruby-identifier">:cm</span>)
22
- <span class="ruby-identifier">assert_equal</span>(<span class="ruby-identifier">qty</span>, <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">exp</span>(<span class="ruby-identifier">:cm</span>) {<span class="ruby-identifier">qty</span>})
29
+ <span class="ruby-ivar">@calc</span> = <span class="ruby-constant">Calculator</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@units</span>)
30
+
23
31
  <span class="ruby-keyword kw">end</span></pre>
24
32
  </body>
25
33
  </html>
@@ -5,30 +5,24 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>test_convert_to (CalculatorTest)</title>
8
+ <title>test_quantity_creation (CalculatorTest)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File test/unit/calculator_test.rb, line 53</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_convert_to</span>
15
-
16
- <span class="ruby-identifier">qty</span> = <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">quantity</span>(<span class="ruby-value">45</span>, <span class="ruby-identifier">:cm</span>)
17
-
18
- <span class="ruby-identifier">base</span> = <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">exp</span>(<span class="ruby-value">1</span>.<span class="ruby-identifier">mm</span>) {<span class="ruby-identifier">qty</span>}
19
-
20
- <span class="ruby-identifier">assert_in_delta</span>(<span class="ruby-value">450.0</span>, <span class="ruby-identifier">base</span>.<span class="ruby-identifier">value</span>, <span class="ruby-value">0</span><span class="ruby-value">.0001</span>)
21
- <span class="ruby-identifier">assert_equal</span>([<span class="ruby-identifier">:mm</span>], <span class="ruby-identifier">base</span>[<span class="ruby-identifier">:dividends</span>])
22
-
23
- <span class="ruby-identifier">base</span> = <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">exp</span>(<span class="ruby-identifier">:mm</span>) {<span class="ruby-identifier">qty</span>}
13
+ <pre><span class="ruby-comment cmt"># File test/calculator_test.rb, line 28</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_quantity_creation</span>
15
+ <span class="ruby-identifier">qty</span> = <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">quantity</span>(<span class="ruby-value">45.897</span>, <span class="ruby-identifier">:mm</span>)
24
16
 
25
- <span class="ruby-identifier">assert_in_delta</span>(<span class="ruby-value">450.0</span>, <span class="ruby-identifier">base</span>.<span class="ruby-identifier">value</span>, <span class="ruby-value">0</span><span class="ruby-value">.0001</span>)
26
- <span class="ruby-identifier">assert_equal</span>([<span class="ruby-identifier">:mm</span>], <span class="ruby-identifier">base</span>[<span class="ruby-identifier">:dividends</span>])
17
+ <span class="ruby-identifier">assert_in_delta</span>(<span class="ruby-value">45.897</span>, <span class="ruby-identifier">qty</span>.<span class="ruby-identifier">value</span>, <span class="ruby-value">0</span><span class="ruby-value">.0001</span>)
18
+ <span class="ruby-identifier">assert_equal</span>([<span class="ruby-identifier">:mm</span>], <span class="ruby-identifier">qty</span>[<span class="ruby-identifier">:dividends</span>])
19
+ <span class="ruby-identifier">assert_equal</span>([], <span class="ruby-identifier">qty</span>[<span class="ruby-identifier">:divisors</span>])
27
20
 
28
- <span class="ruby-identifier">base</span> = <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">exp</span>(<span class="ruby-value str">&quot;mm&quot;</span>) {<span class="ruby-identifier">qty</span>}
29
21
 
30
- <span class="ruby-identifier">assert_in_delta</span>(<span class="ruby-value">450.0</span>, <span class="ruby-identifier">base</span>.<span class="ruby-identifier">value</span>, <span class="ruby-value">0</span><span class="ruby-value">.0001</span>)
31
- <span class="ruby-identifier">assert_equal</span>([<span class="ruby-identifier">:mm</span>], <span class="ruby-identifier">base</span>[<span class="ruby-identifier">:dividends</span>])
22
+ <span class="ruby-identifier">qty</span> = <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">quantity</span>(<span class="ruby-value">57.345</span>, <span class="ruby-value str">&quot;mm/lb&quot;</span>)
23
+ <span class="ruby-identifier">assert_in_delta</span>(<span class="ruby-value">57.345</span>, <span class="ruby-identifier">qty</span>.<span class="ruby-identifier">value</span>, <span class="ruby-value">0</span><span class="ruby-value">.0001</span>)
24
+ <span class="ruby-identifier">assert_equal</span>([<span class="ruby-identifier">:mm</span>], <span class="ruby-identifier">qty</span>[<span class="ruby-identifier">:dividends</span>])
25
+ <span class="ruby-identifier">assert_equal</span>([<span class="ruby-identifier">:lb</span>], <span class="ruby-identifier">qty</span>[<span class="ruby-identifier">:divisors</span>])
32
26
  <span class="ruby-keyword kw">end</span></pre>
33
27
  </body>
34
28
  </html>
@@ -5,23 +5,21 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>test_complex_conver_to (CalculatorTest)</title>
8
+ <title>test_calculator_expression_method (CalculatorTest)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File test/unit/calculator_test.rb, line 73</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_complex_conver_to</span>
15
- <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">add_unit</span> <span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:km</span>, <span class="ruby-identifier">:based_on</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:m</span>, <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">1000</span>
16
- <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">add_unit</span> <span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:in</span>, <span class="ruby-identifier">:based_on</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:cm</span>, <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">2.54</span>
17
- <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">add_unit</span> <span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:ft</span>, <span class="ruby-identifier">:based_on</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:in</span>, <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">12</span>
18
- <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">add_unit</span> <span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:yd</span>, <span class="ruby-identifier">:based_on</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:ft</span>, <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">3</span>
19
- <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">add_unit</span> <span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:mi</span>, <span class="ruby-identifier">:based_on</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:yd</span>, <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">1760</span>
20
- <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">add_unit</span> <span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:min</span>, <span class="ruby-identifier">:based_on</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:sec</span>, <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">60</span>
21
- <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">add_unit</span> <span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:hour</span>, <span class="ruby-identifier">:based_on</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:min</span>, <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">60</span>
22
-
23
- <span class="ruby-identifier">qty</span> = <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">exp</span>(<span class="ruby-value">1</span>.<span class="ruby-identifier">km</span><span class="ruby-operator">/</span><span class="ruby-value">1</span>.<span class="ruby-identifier">hour</span>) {<span class="ruby-value">70</span>.<span class="ruby-identifier">mi</span> <span class="ruby-operator">/</span> <span class="ruby-value">1</span>.<span class="ruby-identifier">hour</span>}
24
- <span class="ruby-identifier">assert_in_delta</span>(<span class="ruby-value">112.654</span>, <span class="ruby-identifier">qty</span>.<span class="ruby-identifier">value</span>, <span class="ruby-value">0</span><span class="ruby-value">.0001</span>)
13
+ <pre><span class="ruby-comment cmt"># File test/calculator_test.rb, line 42</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_calculator_expression_method</span>
15
+ <span class="ruby-identifier">qty</span> = <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">exp</span> {<span class="ruby-value">5</span>.<span class="ruby-identifier">lb</span>}
16
+ <span class="ruby-identifier">assert</span>(<span class="ruby-identifier">qty</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Quantity</span>))
17
+
18
+ <span class="ruby-identifier">qty</span> = <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">exp</span> {<span class="ruby-value">12</span>.<span class="ruby-identifier">mm</span> <span class="ruby-operator">+</span> <span class="ruby-value">34.7</span>.<span class="ruby-identifier">cm</span>}
19
+ <span class="ruby-identifier">assert</span>(<span class="ruby-identifier">qty</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Quantity</span>))
20
+
21
+ <span class="ruby-identifier">qty</span> = <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">quantity</span>(<span class="ruby-value">45</span>, <span class="ruby-identifier">:cm</span>)
22
+ <span class="ruby-identifier">assert_equal</span>(<span class="ruby-identifier">qty</span>, <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">exp</span>(<span class="ruby-identifier">:cm</span>) {<span class="ruby-identifier">qty</span>})
25
23
  <span class="ruby-keyword kw">end</span></pre>
26
24
  </body>
27
25
  </html>
@@ -5,24 +5,30 @@
5
5
 
6
6
  <html>
7
7
  <head>
8
- <title>test_reverse_unit_conversion (CalculatorTest)</title>
8
+ <title>test_convert_to (CalculatorTest)</title>
9
9
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
10
  <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
11
  </head>
12
12
  <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File test/unit/calculator_test.rb, line 86</span>
14
- <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_reverse_unit_conversion</span>
15
- <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">add_unit</span> <span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:km</span>, <span class="ruby-identifier">:based_on</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:m</span>, <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">1000</span>
16
- <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">add_unit</span> <span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:L</span>
17
- <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">add_unit</span> <span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:gal</span>, <span class="ruby-identifier">:based_on</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:L</span>, <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">3.785332</span>
18
- <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">add_unit</span> <span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:in</span>, <span class="ruby-identifier">:based_on</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:cm</span>, <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">2.54</span>
19
- <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">add_unit</span> <span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:ft</span>, <span class="ruby-identifier">:based_on</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:in</span>, <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">12</span>
20
- <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">add_unit</span> <span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:yd</span>, <span class="ruby-identifier">:based_on</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:ft</span>, <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">3</span>
21
- <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">add_unit</span> <span class="ruby-identifier">:unit</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:mi</span>, <span class="ruby-identifier">:based_on</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:yd</span>, <span class="ruby-identifier">:coefficient</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value">1760</span>
22
-
23
- <span class="ruby-identifier">qty</span> = <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">exp</span>(<span class="ruby-value">1</span>.<span class="ruby-identifier">mi</span><span class="ruby-operator">/</span><span class="ruby-value">1</span>.<span class="ruby-identifier">gal</span>) {<span class="ruby-value">5.5</span>.<span class="ruby-constant">L</span><span class="ruby-operator">/</span><span class="ruby-value">100</span>.<span class="ruby-identifier">km</span>}
24
- <span class="ruby-identifier">assert_in_delta</span>(<span class="ruby-value">42.765</span>, <span class="ruby-identifier">qty</span>.<span class="ruby-identifier">value</span>, <span class="ruby-value">0</span><span class="ruby-value">.001</span>)
13
+ <pre><span class="ruby-comment cmt"># File test/calculator_test.rb, line 53</span>
14
+ <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">test_convert_to</span>
25
15
 
16
+ <span class="ruby-identifier">qty</span> = <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">quantity</span>(<span class="ruby-value">45</span>, <span class="ruby-identifier">:cm</span>)
17
+
18
+ <span class="ruby-identifier">base</span> = <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">exp</span>(<span class="ruby-value">1</span>.<span class="ruby-identifier">mm</span>) {<span class="ruby-identifier">qty</span>}
19
+
20
+ <span class="ruby-identifier">assert_in_delta</span>(<span class="ruby-value">450.0</span>, <span class="ruby-identifier">base</span>.<span class="ruby-identifier">value</span>, <span class="ruby-value">0</span><span class="ruby-value">.0001</span>)
21
+ <span class="ruby-identifier">assert_equal</span>([<span class="ruby-identifier">:mm</span>], <span class="ruby-identifier">base</span>[<span class="ruby-identifier">:dividends</span>])
22
+
23
+ <span class="ruby-identifier">base</span> = <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">exp</span>(<span class="ruby-identifier">:mm</span>) {<span class="ruby-identifier">qty</span>}
24
+
25
+ <span class="ruby-identifier">assert_in_delta</span>(<span class="ruby-value">450.0</span>, <span class="ruby-identifier">base</span>.<span class="ruby-identifier">value</span>, <span class="ruby-value">0</span><span class="ruby-value">.0001</span>)
26
+ <span class="ruby-identifier">assert_equal</span>([<span class="ruby-identifier">:mm</span>], <span class="ruby-identifier">base</span>[<span class="ruby-identifier">:dividends</span>])
27
+
28
+ <span class="ruby-identifier">base</span> = <span class="ruby-ivar">@calc</span>.<span class="ruby-identifier">exp</span>(<span class="ruby-value str">&quot;mm&quot;</span>) {<span class="ruby-identifier">qty</span>}
29
+
30
+ <span class="ruby-identifier">assert_in_delta</span>(<span class="ruby-value">450.0</span>, <span class="ruby-identifier">base</span>.<span class="ruby-identifier">value</span>, <span class="ruby-value">0</span><span class="ruby-value">.0001</span>)
31
+ <span class="ruby-identifier">assert_equal</span>([<span class="ruby-identifier">:mm</span>], <span class="ruby-identifier">base</span>[<span class="ruby-identifier">:dividends</span>])
26
32
  <span class="ruby-keyword kw">end</span></pre>
27
33
  </body>
28
34
  </html>