1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.beanutils;
18
19 import junit.framework.Test;
20 import junit.framework.TestSuite;
21
22 /***
23 * Test Case for the {@link BeanUtilsBean2}.
24 *
25 * @version $Revision: 552381 $
26 */
27 public class BeanUtils2TestCase extends BeanUtilsTestCase {
28
29
30
31 /***
32 * Construct a new instance of this test case.
33 *
34 * @param name Name of the test case
35 */
36 public BeanUtils2TestCase(String name) {
37 super(name);
38 }
39
40
41
42
43
44 /***
45 * Set up instance variables required by this test case.
46 */
47 public void setUp() {
48 ConvertUtils.deregister();
49 BeanUtilsBean.setInstance(new BeanUtilsBean2());
50 setUpShared();
51 }
52
53
54 /***
55 * Return the tests included in this test suite.
56 */
57 public static Test suite() {
58 return (new TestSuite(BeanUtils2TestCase.class));
59 }
60
61 /***
62 * Tear down instance variables required by this test case.
63 */
64 public void tearDown() {
65 bean = null;
66 }
67
68 /***
69 * Test <code>copyProperty()</code> converting to a String.
70 */
71 public void testCopyPropertyConvertToString() {
72 try {
73 BeanUtils.copyProperty(bean, "stringProperty", testUtilDate);
74 } catch (Throwable t) {
75 fail("Threw " + t);
76 }
77 assertEquals("java.util.Date --> String", testStringDate, bean.getStringProperty());
78 }
79
80 /***
81 * Test <code>copyProperty()</code> converting to a String.
82 */
83 public void testCopyPropertyConvertToStringArray() {
84 try {
85 bean.setStringArray(null);
86 BeanUtils.copyProperty(bean, "stringArray", new java.util.Date[] {testUtilDate});
87 } catch (Throwable t) {
88 fail("Threw " + t);
89 }
90 assertEquals("java.util.Date[] --> String[] length", 1, bean.getStringArray().length);
91 assertEquals("java.util.Date[] --> String[] value ", testStringDate, bean.getStringArray()[0]);
92 }
93
94 /***
95 * Test <code>copyProperty()</code> converting to a String on indexed property
96 */
97 public void testCopyPropertyConvertToStringIndexed() {
98 try {
99 bean.setStringArray(new String[1]);
100 BeanUtils.copyProperty(bean, "stringArray[0]", testUtilDate);
101 } catch (Throwable t) {
102 fail("Threw " + t);
103 }
104 assertEquals("java.util.Date[] --> String[] length", 1, bean.getStringArray().length);
105 assertEquals("java.util.Date[] --> String[] value ", testStringDate, bean.getStringArray()[0]);
106 }
107
108 /***
109 * Test <code>getArrayProperty()</code> converting to a String.
110 */
111 public void testGetArrayPropertyDate() {
112 String[] value = null;
113 try {
114 bean.setDateArrayProperty(new java.util.Date[] {testUtilDate});
115 value = BeanUtils.getArrayProperty(bean, "dateArrayProperty");
116 } catch (Throwable t) {
117 fail("Threw " + t);
118 }
119 assertEquals("java.util.Date[] --> String[] length", 1, value.length);
120 assertEquals("java.util.Date[] --> String[] value ", testStringDate, value[0]);
121 }
122
123 /***
124 * Test <code>getArrayProperty()</code> converting to a String.
125 */
126 public void testGetIndexedPropertyDate() {
127 String value = null;
128 try {
129 bean.setDateArrayProperty(new java.util.Date[] {testUtilDate});
130 value = BeanUtils.getIndexedProperty(bean, "dateArrayProperty[0]");
131 } catch (Throwable t) {
132 fail("Threw " + t);
133 }
134 assertEquals("java.util.Date[0] --> String", testStringDate, value);
135 }
136
137 /***
138 * Test <code>getSimpleProperty()</code> converting to a String.
139 */
140 public void testGetSimplePropertyDate() {
141 String value = null;
142 try {
143 bean.setDateProperty(testUtilDate);
144 value = BeanUtils.getSimpleProperty(bean, "dateProperty");
145 } catch (Throwable t) {
146 fail("Threw " + t);
147 }
148 assertEquals("java.util.Date --> String", testStringDate, value);
149 }
150
151 /***
152 * Test <code>setProperty()</code> converting to a String.
153 */
154 public void testSetPropertyConvertToString() {
155 try {
156 BeanUtils.setProperty(bean, "stringProperty", testUtilDate);
157 } catch (Throwable t) {
158 fail("Threw " + t);
159 }
160 assertEquals("java.util.Date --> String", testStringDate, bean.getStringProperty());
161 }
162
163 /***
164 * Test <code>setProperty()</code> converting to a String array.
165 */
166 public void testSetPropertyConvertToStringArray() {
167 try {
168 bean.setStringArray(null);
169 BeanUtils.setProperty(bean, "stringArray", new java.util.Date[] {testUtilDate});
170 } catch (Throwable t) {
171 fail("Threw " + t);
172 }
173 assertEquals("java.util.Date[] --> String[] length", 1, bean.getStringArray().length);
174 assertEquals("java.util.Date[] --> String[] value ", testStringDate, bean.getStringArray()[0]);
175 }
176
177 /***
178 * Test <code>setProperty()</code> converting to a String on indexed property
179 */
180 public void testSetPropertyConvertToStringIndexed() {
181 try {
182 bean.setStringArray(new String[1]);
183 BeanUtils.setProperty(bean, "stringArray[0]", testUtilDate);
184 } catch (Throwable t) {
185 fail("Threw " + t);
186 }
187 assertEquals("java.util.Date --> String[]", testStringDate, bean.getStringArray()[0]);
188 }
189
190 }