📄 beanutilstestcase.java
字号:
assertEquals("doubleProperty is 432.0", (double) 432.0, bean.getNested().getDoubleProperty(), (double) 0.005); assertEquals("floatProperty is 123.0", (float) 123.0, bean.getNested().getFloatProperty(), (float) 0.005); assertEquals("intProperty is 543", 543, bean.getNested().getIntProperty()); assertEquals("longProperty is 321", (long) 321, bean.getNested().getLongProperty()); assertEquals("shortProperty is 654", (short) 654, bean.getNested().getShortProperty()); assertEquals("stringProperty is \"This is a string\"", "This is a string", bean.getNested().getStringProperty()); assertEquals("writeOnlyProperty is \"New writeOnlyProperty value\"", "New writeOnlyProperty value", bean.getNested().getWriteOnlyPropertyValue()); } catch (IllegalAccessException e) { fail("IllegalAccessException"); } catch (InvocationTargetException e) { fail("InvocationTargetException"); } } /** * Test populate() method on scalar properties. */ public void testPopulateScalar() { try { bean.setNullProperty("Non-null value"); HashMap map = new HashMap(); map.put("booleanProperty", "false"); // booleanSecond is left at true map.put("byteProperty", "111"); map.put("doubleProperty", "432.0"); // floatProperty is left at 123.0 map.put("intProperty", "543"); map.put("longProperty", ""); map.put("nullProperty", null); map.put("shortProperty", "654"); // stringProperty is left at "This is a string" map.put("writeOnlyProperty", "New writeOnlyProperty value"); map.put("readOnlyProperty", "New readOnlyProperty value"); BeanUtils.populate(bean, map); assertTrue("booleanProperty is false", !bean.getBooleanProperty()); assertTrue("booleanSecond is true", bean.isBooleanSecond()); assertEquals("byteProperty is 111", (byte) 111, bean.getByteProperty()); assertEquals("doubleProperty is 432.0", (double) 432.0, bean.getDoubleProperty(), (double) 0.005); assertEquals("floatProperty is 123.0", (float) 123.0, bean.getFloatProperty(), (float) 0.005); assertEquals("intProperty is 543", 543, bean.getIntProperty()); assertEquals("longProperty is 0", (long) 0, bean.getLongProperty()); assertNull("nullProperty is null", bean.getNullProperty()); assertEquals("shortProperty is 654", (short) 654, bean.getShortProperty()); assertEquals("stringProperty is \"This is a string\"", "This is a string", bean.getStringProperty()); assertEquals("writeOnlyProperty is \"New writeOnlyProperty value\"", "New writeOnlyProperty value", bean.getWriteOnlyPropertyValue()); assertEquals("readOnlyProperty is \"Read Only String Property\"", "Read Only String Property", bean.getReadOnlyProperty()); } catch (IllegalAccessException e) { fail("IllegalAccessException"); } catch (InvocationTargetException e) { fail("InvocationTargetException"); } } /** * Test calling setProperty() with null property values. */ public void testSetPropertyNullValues() throws Exception { Object oldValue = null; Object newValue = null; // Scalar value into array oldValue = PropertyUtils.getSimpleProperty(bean, "stringArray"); BeanUtils.setProperty(bean, "stringArray", (String) null); newValue = PropertyUtils.getSimpleProperty(bean, "stringArray"); assertNotNull("stringArray is not null", newValue); assertTrue("stringArray of correct type", newValue instanceof String[]); assertEquals("stringArray length", 1, ((String[]) newValue).length); assertTrue("stringArray[0] is null", ((String[]) newValue)[0] == null); PropertyUtils.setProperty(bean, "stringArray", oldValue); // Indexed value into array oldValue = PropertyUtils.getSimpleProperty(bean, "stringArray"); BeanUtils.setProperty(bean, "stringArray[2]", (String) null); newValue = PropertyUtils.getSimpleProperty(bean, "stringArray"); assertNotNull("stringArray is not null", newValue); assertTrue("stringArray of correct type", newValue instanceof String[]); assertEquals("stringArray length", 5, ((String[]) newValue).length); assertTrue("stringArray[2] is null", ((String[]) newValue)[2] == null); PropertyUtils.setProperty(bean, "stringArray", oldValue); // Value into scalar BeanUtils.setProperty(bean, "stringProperty", null); assertTrue("stringProperty is now null", BeanUtils.getProperty(bean, "stringProperty") == null); } /** * Test converting to and from primitive wrapper types. */ public void testSetPropertyOnPrimitiveWrappers() throws Exception { BeanUtils.setProperty(bean,"intProperty", new Integer(1)); assertEquals(1,bean.getIntProperty()); BeanUtils.setProperty(bean,"stringProperty", new Integer(1)); assertEquals(1, Integer.parseInt(bean.getStringProperty())); } /** * Test narrowing and widening conversions on byte. */ public void testSetPropertyByte() throws Exception { BeanUtils.setProperty(bean, "byteProperty", new Byte((byte) 123)); assertEquals((byte) 123, bean.getByteProperty());/* BeanUtils.setProperty(bean, "byteProperty", new Double((double) 123)); assertEquals((byte) 123, bean.getByteProperty()); BeanUtils.setProperty(bean, "byteProperty", new Float((float) 123)); assertEquals((byte) 123, bean.getByteProperty());*/ BeanUtils.setProperty(bean, "byteProperty", new Integer((int) 123)); assertEquals((byte) 123, bean.getByteProperty()); BeanUtils.setProperty(bean, "byteProperty", new Long((long) 123)); assertEquals((byte) 123, bean.getByteProperty()); BeanUtils.setProperty(bean, "byteProperty", new Short((short) 123)); assertEquals((byte) 123, bean.getByteProperty()); } /** * Test narrowing and widening conversions on double. */ public void testSetPropertyDouble() throws Exception { BeanUtils.setProperty(bean, "doubleProperty", new Byte((byte) 123)); assertEquals((double) 123, bean.getDoubleProperty(), 0.005); BeanUtils.setProperty(bean, "doubleProperty", new Double((double) 123)); assertEquals((double) 123, bean.getDoubleProperty(), 0.005); BeanUtils.setProperty(bean, "doubleProperty", new Float((float) 123)); assertEquals((double) 123, bean.getDoubleProperty(), 0.005); BeanUtils.setProperty(bean, "doubleProperty", new Integer((int) 123)); assertEquals((double) 123, bean.getDoubleProperty(), 0.005); BeanUtils.setProperty(bean, "doubleProperty", new Long((long) 123)); assertEquals((double) 123, bean.getDoubleProperty(), 0.005); BeanUtils.setProperty(bean, "doubleProperty", new Short((short) 123)); assertEquals((double) 123, bean.getDoubleProperty(), 0.005); } /** * Test narrowing and widening conversions on float. */ public void testSetPropertyFloat() throws Exception { BeanUtils.setProperty(bean, "floatProperty", new Byte((byte) 123)); assertEquals((float) 123, bean.getFloatProperty(), 0.005); BeanUtils.setProperty(bean, "floatProperty", new Double((double) 123)); assertEquals((float) 123, bean.getFloatProperty(), 0.005); BeanUtils.setProperty(bean, "floatProperty", new Float((float) 123)); assertEquals((float) 123, bean.getFloatProperty(), 0.005); BeanUtils.setProperty(bean, "floatProperty", new Integer((int) 123)); assertEquals((float) 123, bean.getFloatProperty(), 0.005); BeanUtils.setProperty(bean, "floatProperty", new Long((long) 123)); assertEquals((float) 123, bean.getFloatProperty(), 0.005); BeanUtils.setProperty(bean, "floatProperty", new Short((short) 123)); assertEquals((float) 123, bean.getFloatProperty(), 0.005); } /** * Test narrowing and widening conversions on int. */ public void testSetPropertyInteger() throws Exception { BeanUtils.setProperty(bean, "longProperty", new Byte((byte) 123)); assertEquals((int) 123, bean.getIntProperty());/* BeanUtils.setProperty(bean, "longProperty", new Double((double) 123)); assertEquals((int) 123, bean.getIntProperty()); BeanUtils.setProperty(bean, "longProperty", new Float((float) 123)); assertEquals((int) 123, bean.getIntProperty());*/ BeanUtils.setProperty(bean, "longProperty", new Integer((int) 123)); assertEquals((int) 123, bean.getIntProperty()); BeanUtils.setProperty(bean, "longProperty", new Long((long) 123)); assertEquals((int) 123, bean.getIntProperty()); BeanUtils.setProperty(bean, "longProperty", new Short((short) 123)); assertEquals((int) 123, bean.getIntProperty()); } /** * Test narrowing and widening conversions on long. */ public void testSetPropertyLong() throws Exception { BeanUtils.setProperty(bean, "longProperty", new Byte((byte) 123)); assertEquals((long) 123, bean.getLongProperty());/* BeanUtils.setProperty(bean, "longProperty", new Double((double) 123)); assertEquals((long) 123, bean.getLongProperty()); BeanUtils.setProperty(bean, "longProperty", new Float((float) 123)); assertEquals((long) 123, bean.getLongProperty());*/ BeanUtils.setProperty(bean, "longProperty", new Integer((int) 123)); assertEquals((long) 123, bean.getLongProperty()); BeanUtils.setProperty(bean, "longProperty", new Long((long) 123)); assertEquals((long) 123, bean.getLongProperty()); BeanUtils.setProperty(bean, "longProperty", new Short((short) 123)); assertEquals((long) 123, bean.getLongProperty()); } /** * Test setting a null property value. */ public void testSetPropertyNull() throws Exception { bean.setNullProperty("non-null value"); BeanUtils.setProperty(bean, "nullProperty", null); assertNull("nullProperty is null", bean.getNullProperty()); } /** * Test narrowing and widening conversions on short. */ public void testSetPropertyShort() throws Exception { BeanUtils.setProperty(bean, "shortProperty", new Byte((byte) 123)); assertEquals((short) 123, bean.getShortProperty());/* BeanUtils.setProperty(bean, "shortProperty", new Double((double) 123)); assertEquals((short) 123, bean.getShortProperty()); BeanUtils.setProperty(bean, "shortProperty", new Float((float) 123)); assertEquals((short) 123, bean.getShortProperty());*/ BeanUtils.setProperty(bean, "shortProperty", new Integer((int) 123)); assertEquals((short) 123, bean.getShortProperty()); BeanUtils.setProperty(bean, "shortProperty", new Long((long) 123)); assertEquals((short) 123, bean.getShortProperty()); BeanUtils.setProperty(bean, "shortProperty", new Short((short) 123)); assertEquals((short) 123, bean.getShortProperty()); } /** * Test narrowing and widening conversions on byte. */ public void testCopyPropertyByte() throws Exception { BeanUtils.copyProperty(bean, "byteProperty", new Byte((byte) 123)); assertEquals((byte) 123, bean.getByteProperty()); BeanUtils.copyProperty(bean, "byteProperty", new Double((double) 123)); assertEquals((byte) 123, bean.getByteProperty()); BeanUtils.copyProperty(bean, "byteProperty", new Float((float) 123)); assertEquals((byte) 123, bean.getByteProperty()); BeanUtils.copyProperty(bean, "byteProperty", new Integer((int) 123)); assertEquals((byte) 123, bean.getByteProperty()); BeanUtils.copyProperty(bean, "byteProperty", new Long((long) 123)); assertEquals((byte) 123, bean.getByteProperty()); BeanUtils.copyProperty(bean, "byteProperty", new Short((short) 123)); assertEquals((byte) 123, bean.getByteProperty()); } /** * Test narrowing and widening conversions on double. */ public void testCopyPropertyDouble() throws Exception { BeanUtils.copyProperty(bean, "doubleProperty", new Byte((byte) 123)); assertEquals((double) 123, bean.getDoubleProperty(), 0.005); BeanUtils.copyProperty(bean, "doubleProperty", new Double((double) 123)); assertEquals((double) 123, bean.getDoubleProperty(), 0.005); BeanUtils.copyProperty(bean, "doubleProperty", new Float((float) 123)); assertEquals((double) 123, bean.getDoubleProperty(), 0.005); BeanUtils.copyProperty(bean, "doubleProperty", new Integer((int) 123)); assertEquals((double) 123, bean.getDoubleProperty(), 0.005); BeanUtils.copyProperty(bean, "doubleProperty", new Long((long) 123)); assertEquals((double) 123, bean.getDoubleProperty(), 0.005); BeanUtils.copyProperty(bean, "doubleProperty", new Short((short) 123)); assertEquals((double) 123, bean.getDoubleProperty(), 0.005); } /** * Test narrowing and widening conversions on float.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -