1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.commons.beanutils2.converters;
19
20 import java.math.BigDecimal;
21
22 import org.apache.commons.beanutils2.locale.converters.BigDecimalLocaleConverter;
23 import org.junit.jupiter.api.BeforeEach;
24 import org.junit.jupiter.api.Test;
25
26
27
28
29 public class BigDecimalLocaleConverterTest extends AbstractLocaleConverterTest<BigDecimal> {
30
31
32
33
34 @Override
35 @BeforeEach
36 public void setUp() throws Exception {
37 super.setUp();
38 defaultValue = new BigDecimal("9.99");
39 expectedValue = new BigDecimal(expectedDecimalValue);
40 }
41
42
43
44
45
46
47 @Test
48 public void testConstructor_2() {
49
50
51 converter = BigDecimalLocaleConverter.builder().get();
52
53
54 convertValueNoPattern(converter, defaultDecimalValue, expectedValue);
55 convertValueWithPattern(converter, defaultDecimalValue, defaultDecimalPattern, expectedValue);
56 convertInvalid(converter, null);
57 convertNull(converter, null);
58
59 }
60
61
62
63
64
65
66 @Test
67 public void testConstructor_3() {
68
69
70 converter = BigDecimalLocaleConverter.builder().setLocalizedPattern(true).get();
71
72
73 convertValueNoPattern(converter, defaultDecimalValue, expectedValue);
74 convertValueWithPattern(converter, defaultDecimalValue, defaultDecimalPattern, expectedValue);
75 convertInvalid(converter, null);
76 convertNull(converter, null);
77
78 }
79
80
81
82
83 @Test
84 public void testConstructor_4() {
85
86
87 converter = BigDecimalLocaleConverter.builder().setLocale(localizedLocale).get();
88
89
90 convertValueNoPattern(converter, localizedDecimalValue, expectedValue);
91 convertValueWithPattern(converter, localizedDecimalValue, defaultDecimalPattern, expectedValue);
92 convertInvalid(converter, null);
93 convertNull(converter, null);
94
95 }
96
97
98
99
100 @Test
101 public void testConstructor_5() {
102
103
104 converter = BigDecimalLocaleConverter.builder().setLocale(localizedLocale).setLocalizedPattern(true).get();
105
106
107 convertValueNoPattern(converter, localizedDecimalValue, expectedValue);
108 convertValueWithPattern(converter, localizedDecimalValue, localizedDecimalPattern, expectedValue);
109 convertInvalid(converter, null);
110 convertNull(converter, null);
111
112 }
113
114
115
116
117 @Test
118 public void testConstructor_6() {
119
120
121 converter = BigDecimalLocaleConverter.builder().setLocale(localizedLocale).setPattern(defaultDecimalPattern).get();
122
123
124 convertValueNoPattern(converter, localizedDecimalValue, expectedValue);
125 convertValueWithPattern(converter, localizedDecimalValue, defaultDecimalPattern, expectedValue);
126 convertInvalid(converter, null);
127 convertNull(converter, null);
128
129 }
130
131
132
133
134 @Test
135 public void testConstructor_7() {
136
137
138 converter = BigDecimalLocaleConverter.builder().setLocale(localizedLocale).setPattern(localizedDecimalPattern).setLocalizedPattern(true).get();
139
140
141 convertValueNoPattern(converter, localizedDecimalValue, expectedValue);
142 convertValueWithPattern(converter, localizedDecimalValue, localizedDecimalPattern, expectedValue);
143 convertInvalid(converter, null);
144 convertNull(converter, null);
145
146 }
147
148
149
150
151 @Test
152 public void testConstructor_8() {
153
154
155 converter = BigDecimalLocaleConverter.builder().setDefault(defaultValue).get();
156
157
158 convertValueNoPattern(converter, defaultDecimalValue, expectedValue);
159 convertValueWithPattern(converter, defaultDecimalValue, defaultDecimalPattern, expectedValue);
160 convertInvalid(converter, defaultValue);
161 convertNull(converter, defaultValue);
162
163 }
164
165
166
167
168 @Test
169 public void testConstructor_9() {
170
171
172 converter = BigDecimalLocaleConverter.builder().setDefault(defaultValue).setLocalizedPattern(true).get();
173
174
175 convertValueNoPattern(converter, defaultDecimalValue, expectedValue);
176 convertValueWithPattern(converter, defaultDecimalValue, defaultDecimalPattern, expectedValue);
177 convertInvalid(converter, defaultValue);
178 convertNull(converter, defaultValue);
179
180 }
181
182
183
184
185 @Test
186 public void testConstructorMain() {
187
188
189 converter = BigDecimalLocaleConverter.builder().setDefault(defaultValue).setLocale(localizedLocale).setPattern(localizedDecimalPattern)
190 .setLocalizedPattern(true).get();
191
192 convertValueNoPattern(converter, "(A)", localizedDecimalValue, expectedValue);
193 convertValueWithPattern(converter, "(A)", localizedDecimalValue, localizedDecimalPattern, expectedValue);
194 convertInvalid(converter, "(A)", defaultValue);
195 convertNull(converter, "(A)", defaultValue);
196
197
198
199
200
201 convertValueNoPattern(converter, "(B)", defaultDecimalValue, new BigDecimal("1.234"));
202
203
204
205
206
207
208 convertValueWithPattern(converter, "(B)", localizedDecimalValue, defaultDecimalPattern, defaultValue);
209
210
211
212
213
214
215
216
217
218 converter = BigDecimalLocaleConverter.builder().setDefault(defaultValue).setLocale(localizedLocale).setPattern(defaultDecimalPattern)
219 .setLocalizedPattern(false).get();
220
221 convertValueNoPattern(converter, "(C)", localizedDecimalValue, expectedValue);
222 convertValueWithPattern(converter, "(C)", localizedDecimalValue, defaultDecimalPattern, expectedValue);
223 convertInvalid(converter, "(C)", defaultValue);
224 convertNull(converter, "(C)", defaultValue);
225
226 }
227
228 }