beanutilstestcase.java
来自「这是一个有关common beanutils 的源码」· Java 代码 · 共 1,661 行 · 第 1/5 页
JAVA
1,661 行
fail("Threw exception: " + e);
}
// Validate the results for scalar properties
assertEquals("Copied boolean property",
false,
bean.getBooleanProperty());
assertEquals("Copied byte property",
(byte) 111,
bean.getByteProperty());
assertEquals("Copied double property",
333.33,
bean.getDoubleProperty(),
0.005);
assertEquals("Copied int property",
333,
bean.getIntProperty());
assertEquals("Copied long property",
3333,
bean.getLongProperty());
assertEquals("Copied short property",
(short) 33,
bean.getShortProperty());
assertEquals("Copied string property",
"Custom string",
bean.getStringProperty());
// Validate the results for array properties
String dupProperty[] = bean.getDupProperty();
assertNotNull("dupProperty present", dupProperty);
assertEquals("dupProperty length", 3, dupProperty.length);
assertEquals("dupProperty[0]", "New 0", dupProperty[0]);
assertEquals("dupProperty[1]", "New 1", dupProperty[1]);
assertEquals("dupProperty[2]", "New 2", dupProperty[2]);
int intArray[] = bean.getIntArray();
assertNotNull("intArray present", intArray);
assertEquals("intArray length", 3, intArray.length);
assertEquals("intArray[0]", 100, intArray[0]);
assertEquals("intArray[1]", 200, intArray[1]);
assertEquals("intArray[2]", 300, intArray[2]);
String stringArray[] = bean.getStringArray();
assertNotNull("stringArray present", stringArray);
assertEquals("stringArray length", 2, stringArray.length);
assertEquals("stringArray[0]", "New 0", stringArray[0]);
assertEquals("stringArray[1]", "New 1", stringArray[1]);
}
/**
* Test the describe() method.
*/
public void testDescribe() {
Map map = null;
try {
map = BeanUtils.describe(bean);
} catch (Exception e) {
fail("Threw exception " + e);
}
// Verify existence of all the properties that should be present
for (int i = 0; i < describes.length; i++) {
assertTrue("Property '" + describes[i] + "' is present",
map.containsKey(describes[i]));
}
assertTrue("Property 'writeOnlyProperty' is not present",
!map.containsKey("writeOnlyProperty"));
// Verify the values of scalar properties
assertEquals("Value of 'booleanProperty'",
"true",
(String) map.get("booleanProperty"));
assertEquals("Value of 'byteProperty'",
"121",
(String) map.get("byteProperty"));
assertEquals("Value of 'doubleProperty'",
"321.0",
(String) map.get("doubleProperty"));
assertEquals("Value of 'floatProperty'",
"123.0",
(String) map.get("floatProperty"));
assertEquals("Value of 'intProperty'",
"123",
(String) map.get("intProperty"));
assertEquals("Value of 'longProperty'",
"321",
(String) map.get("longProperty"));
assertEquals("Value of 'shortProperty'",
"987",
(String) map.get("shortProperty"));
assertEquals("Value of 'stringProperty'",
"This is a string",
(String) map.get("stringProperty"));
}
/**
* tests the string and int arrays of TestBean
*/
public void testGetArrayProperty() {
try {
String arr[] = BeanUtils.getArrayProperty(bean, "stringArray");
String comp[] = bean.getStringArray();
assertTrue("String array length = " + comp.length,
(comp.length == arr.length));
arr = BeanUtils.getArrayProperty(bean, "intArray");
int iarr[] = bean.getIntArray();
assertTrue("String array length = " + iarr.length,
(iarr.length == arr.length));
// Test property which isn't array or collection
arr = BeanUtils.getArrayProperty(bean, "shortProperty");
String shortAsString = "" + bean.getShortProperty();
assertEquals("Short List Test lth", 1, arr.length);
assertEquals("Short Test value", shortAsString, arr[0]);
// Test comma delimited list
String value1 = "ABC";
bean.setStringProperty("ABC");
arr = BeanUtils.getArrayProperty(bean, "stringProperty");
assertEquals("Delimited List Test lth", 1, arr.length);
assertEquals("Delimited List Test value1", "ABC", arr[0]);
} catch (IllegalAccessException e) {
fail("IllegalAccessException");
} catch (InvocationTargetException e) {
fail("InvocationTargetException");
} catch (NoSuchMethodException e) {
fail("NoSuchMethodException");
}
}
/**
* Test <code>getArrayProperty()</code> converting to a String.
*/
public void testGetArrayPropertyDate() {
String[] value = null;
try {
bean.setDateArrayProperty(new java.util.Date[] {testUtilDate});
value = BeanUtils.getArrayProperty(bean, "dateArrayProperty");
} catch (Throwable t) {
fail("Threw " + t);
}
assertEquals("java.util.Date[] --> String[] length", 1, value.length);
assertEquals("java.util.Date[] --> String[] value ", testUtilDate.toString(), value[0]);
}
/**
* tests getting an indexed property
*/
public void testGetIndexedProperty1() {
try {
String val = BeanUtils.getIndexedProperty(bean, "intIndexed[3]");
String comp = String.valueOf(bean.getIntIndexed(3));
assertTrue("intIndexed[3] == " + comp, val.equals(comp));
val = BeanUtils.getIndexedProperty(bean, "stringIndexed[3]");
comp = bean.getStringIndexed(3);
assertTrue("stringIndexed[3] == " + comp, val.equals(comp));
} catch (IllegalAccessException e) {
fail("IllegalAccessException");
} catch (InvocationTargetException e) {
fail("InvocationTargetException");
} catch (NoSuchMethodException e) {
fail("NoSuchMethodException");
}
}
/**
* Test <code>getArrayProperty()</code> converting to a String.
*/
public void testGetIndexedPropertyDate() {
String value = null;
try {
bean.setDateArrayProperty(new java.util.Date[] {testUtilDate});
value = BeanUtils.getIndexedProperty(bean, "dateArrayProperty[0]");
} catch (Throwable t) {
fail("Threw " + t);
}
assertEquals("java.util.Date[0] --> String", testUtilDate.toString(), value);
}
/**
* tests getting an indexed property
*/
public void testGetIndexedProperty2() {
try {
String val = BeanUtils.getIndexedProperty(bean, "intIndexed", 3);
String comp = String.valueOf(bean.getIntIndexed(3));
assertTrue("intIndexed,3 == " + comp, val.equals(comp));
val = BeanUtils.getIndexedProperty(bean, "stringIndexed", 3);
comp = bean.getStringIndexed(3);
assertTrue("stringIndexed,3 == " + comp, val.equals(comp));
} catch (IllegalAccessException e) {
fail("IllegalAccessException");
} catch (InvocationTargetException e) {
fail("InvocationTargetException");
} catch (NoSuchMethodException e) {
fail("NoSuchMethodException");
}
}
/**
* tests getting a nested property
*/
public void testGetNestedProperty() {
try {
String val = BeanUtils.getNestedProperty(bean, "nested.stringProperty");
String comp = bean.getNested().getStringProperty();
assertTrue("nested.StringProperty == " + comp,
val.equals(comp));
} catch (IllegalAccessException e) {
fail("IllegalAccessException");
} catch (InvocationTargetException e) {
fail("InvocationTargetException");
} catch (NoSuchMethodException e) {
fail("NoSuchMethodException");
}
}
/**
* tests getting a 'whatever' property
*/
public void testGetGeneralProperty() {
try {
String val = BeanUtils.getProperty(bean, "nested.intIndexed[2]");
String comp = String.valueOf(bean.getIntIndexed(2));
assertTrue("nested.intIndexed[2] == " + comp,
val.equals(comp));
} catch (IllegalAccessException e) {
fail("IllegalAccessException");
} catch (InvocationTargetException e) {
fail("InvocationTargetException");
} catch (NoSuchMethodException e) {
fail("NoSuchMethodException");
}
}
/**
* tests getting a 'whatever' property
*/
public void testGetSimpleProperty() {
try {
String val = BeanUtils.getSimpleProperty(bean, "shortProperty");
String comp = String.valueOf(bean.getShortProperty());
assertTrue("shortProperty == " + comp,
val.equals(comp));
} catch (IllegalAccessException e) {
fail("IllegalAccessException");
} catch (InvocationTargetException e) {
fail("InvocationTargetException");
} catch (NoSuchMethodException e) {
fail("NoSuchMethodException");
}
}
/**
* Test <code>getSimpleProperty()</code> converting to a String.
*/
public void testGetSimplePropertyDate() {
String value = null;
try {
bean.setDateProperty(testUtilDate);
value = BeanUtils.getSimpleProperty(bean, "dateProperty");
} catch (Throwable t) {
fail("Threw " + t);
}
assertEquals("java.util.Date --> String", testUtilDate.toString(), value);
}
/**
* Test populate() method on individual array elements.
*/
public void testPopulateArrayElements() {
try {
HashMap map = new HashMap();
map.put("intIndexed[0]", "100");
map.put("intIndexed[2]", "120");
map.put("intIndexed[4]", "140");
BeanUtils.populate(bean, map);
assertEquals("intIndexed[0] is 100",
100, bean.getIntIndexed(0));
assertEquals("intIndexed[1] is 10",
10, bean.getIntIndexed(1));
assertEquals("intIndexed[2] is 120",
120, bean.getIntIndexed(2));
assertEquals("intIndexed[3] is 30",
30, bean.getIntIndexed(3));
assertEquals("intIndexed[4] is 140",
140, bean.getIntIndexed(4));
map.clear();
map.put("stringIndexed[1]", "New String 1");
map.put("stringIndexed[3]", "New String 3");
BeanUtils.populate(bean, map);
assertEquals("stringIndexed[0] is \"String 0\"",
"String 0", bean.getStringIndexed(0));
assertEquals("stringIndexed[1] is \"New String 1\"",
"New String 1", bean.getStringIndexed(1));
assertEquals("stringIndexed[2] is \"String 2\"",
"String 2", bean.getStringIndexed(2));
assertEquals("stringIndexed[3] is \"New String 3\"",
"New String 3", bean.getStringIndexed(3));
assertEquals("stringIndexed[4] is \"String 4\"",
"String 4", bean.getStringIndexed(4));
} catch (IllegalAccessException e) {
fail("IllegalAccessException");
} catch (InvocationTargetException e) {
fail("InvocationTargetException");
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?