1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.commons.beanutils.converters;
19
20 import junit.framework.TestSuite;
21
22 import org.apache.commons.beanutils.Converter;
23
24
25 /***
26 * Test Case for the DoubleConverter class.
27 *
28 * @author Rodney Waldhoff
29 * @version $Revision: 471348 $ $Date: 2006-11-05 02:59:26 +0000 (Sun, 05 Nov 2006) $
30 */
31
32 public class DoubleConverterTestCase extends NumberConverterTestBase {
33
34 private Converter converter = null;
35
36
37
38 public DoubleConverterTestCase(String name) {
39 super(name);
40 }
41
42
43
44 public void setUp() throws Exception {
45 converter = makeConverter();
46 numbers[0] = new Double("-12");
47 numbers[1] = new Double("13");
48 numbers[2] = new Double("-22");
49 numbers[3] = new Double("23");
50 }
51
52 public static TestSuite suite() {
53 return new TestSuite(DoubleConverterTestCase.class);
54 }
55
56 public void tearDown() throws Exception {
57 converter = null;
58 }
59
60
61
62 protected NumberConverter makeConverter() {
63 return new DoubleConverter();
64 }
65
66 protected NumberConverter makeConverter(Object defaultValue) {
67 return new DoubleConverter(defaultValue);
68 }
69
70 protected Class getExpectedType() {
71 return Double.class;
72 }
73
74
75
76 public void testSimpleConversion() throws Exception {
77 String[] message= {
78 "from String",
79 "from String",
80 "from String",
81 "from String",
82 "from String",
83 "from String",
84 "from String",
85 "from Byte",
86 "from Short",
87 "from Integer",
88 "from Long",
89 "from Float",
90 "from Double"
91 };
92
93 Object[] input = {
94 String.valueOf(Double.MIN_VALUE),
95 "-17.2",
96 "-1.1",
97 "0.0",
98 "1.1",
99 "17.2",
100 String.valueOf(Double.MAX_VALUE),
101 new Byte((byte)7),
102 new Short((short)8),
103 new Integer(9),
104 new Long(10),
105 new Float(11.1),
106 new Double(12.2)
107 };
108
109 Double[] expected = {
110 new Double(Double.MIN_VALUE),
111 new Double(-17.2),
112 new Double(-1.1),
113 new Double(0.0),
114 new Double(1.1),
115 new Double(17.2),
116 new Double(Double.MAX_VALUE),
117 new Double(7),
118 new Double(8),
119 new Double(9),
120 new Double(10),
121 new Double(11.1),
122 new Double(12.2)
123 };
124
125 for(int i=0;i<expected.length;i++) {
126 assertEquals(
127 message[i] + " to Double",
128 expected[i].doubleValue(),
129 ((Double)(converter.convert(Double.class,input[i]))).doubleValue(),
130 0.00001D);
131 assertEquals(
132 message[i] + " to double",
133 expected[i].doubleValue(),
134 ((Double)(converter.convert(Double.TYPE,input[i]))).doubleValue(),
135 0.00001D);
136 assertEquals(
137 message[i] + " to null type",
138 expected[i].doubleValue(),
139 ((Double)(converter.convert(null,input[i]))).doubleValue(),
140 0.00001D);
141 }
142 }
143
144 }
145