commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From nia...@apache.org
Subject svn commit: r541397 - /jakarta/commons/proper/beanutils/trunk/src/test/org/apache/commons/beanutils/PropertyUtilsTestCase.java
Date Thu, 24 May 2007 19:22:07 GMT
Author: niallp
Date: Thu May 24 12:22:03 2007
New Revision: 541397

URL: http://svn.apache.org/viewvc?view=rev&rev=541397
Log:
Adding a test case for BEANUTILS-33 to PropertyUtilsTestCase. This incosistency (can't use
"dot" in mapped properties for setProperty or getPropertyDescriptor) has already been fixed
by the changes for BEANUTILS-259 (Plugable Property Name Expression Resolver)

Modified:
    jakarta/commons/proper/beanutils/trunk/src/test/org/apache/commons/beanutils/PropertyUtilsTestCase.java

Modified: jakarta/commons/proper/beanutils/trunk/src/test/org/apache/commons/beanutils/PropertyUtilsTestCase.java
URL: http://svn.apache.org/viewvc/jakarta/commons/proper/beanutils/trunk/src/test/org/apache/commons/beanutils/PropertyUtilsTestCase.java?view=diff&rev=541397&r1=541396&r2=541397
==============================================================================
--- jakarta/commons/proper/beanutils/trunk/src/test/org/apache/commons/beanutils/PropertyUtilsTestCase.java
(original)
+++ jakarta/commons/proper/beanutils/trunk/src/test/org/apache/commons/beanutils/PropertyUtilsTestCase.java
Thu May 24 12:22:03 2007
@@ -439,6 +439,45 @@
 
     }
 
+    /**
+     * Test getting mapped descriptor with periods in the key.
+     */
+    public void testGetDescriptorMappedPeriods() {
+
+        bean.getMappedIntProperty("xyz"); // initializes mappedIntProperty
+
+        PropertyDescriptor desc;
+        Integer testIntegerValue = new Integer(1234);
+
+        bean.setMappedIntProperty("key.with.a.dot", testIntegerValue.intValue());
+        assertEquals("Can retrieve directly",
+                     testIntegerValue,
+                     new Integer(bean.getMappedIntProperty("key.with.a.dot")));
+        try {
+            desc = PropertyUtils.getPropertyDescriptor
+                         (bean, "mappedIntProperty(key.with.a.dot)");
+            assertEquals("Check descriptor type (A)",
+                         Integer.TYPE,
+                         ((MappedPropertyDescriptor)desc).getMappedPropertyType());
+        } catch (Exception e) {
+            fail("Threw exception (A): " + e);
+        }
+
+        bean.setMappedObjects("nested.property", new TestBean(testIntegerValue.intValue()));
+        assertEquals("Can retrieve directly",
+                      testIntegerValue,
+                      new Integer(((TestBean)bean.getMappedObjects("nested.property")).getIntProperty()));
+        try {
+            desc = PropertyUtils.getPropertyDescriptor
+                         (bean, "mappedObjects(nested.property).intProperty");
+            assertEquals("Check descriptor type (B)",
+                         Integer.TYPE,
+                         desc.getPropertyType());
+        } catch (Exception e) {
+            fail("Threw exception (B): " + e);
+        }
+    }
+
 
     /**
      * Positive getPropertyDescriptor on property
@@ -2774,7 +2813,77 @@
 
     }
 
+    /**
+     * Test setting mapped values with periods in the key.
+     */
+    public void testSetMappedPeriods() {
+
+
+        // -------- PropertyUtils.setMappedProperty()--------
+        bean.setMappedProperty("key.with.a.dot", "Special Value");
+        assertEquals("Can retrieve directly (A)",
+                     "Special Value",
+                     bean.getMappedProperty("key.with.a.dot"));
+
+        try {
+            PropertyUtils.setMappedProperty(bean, "mappedProperty", "key.with.a.dot", "Updated
Special Value");
+            assertEquals("Check set via setMappedProperty",
+                         "Updated Special Value",
+                          bean.getMappedProperty("key.with.a.dot"));
+        } catch (Exception e) {
+            fail("Thew exception: " + e);
+        }
+
+        // -------- PropertyUtils.setNestedProperty() --------
+        bean.setMappedProperty("key.with.a.dot", "Special Value");
+        assertEquals("Can retrieve directly (B)",
+                     "Special Value",
+                     bean.getMappedProperty("key.with.a.dot"));
+        try {
+            PropertyUtils.setNestedProperty(bean, "mappedProperty(key.with.a.dot)", "Updated
Special Value");
+            assertEquals("Check set via setNestedProperty (B)",
+                         "Updated Special Value",
+                         bean.getMappedProperty("key.with.a.dot"));
+        } catch (Exception e) {
+            fail("Thew exception: " + e);
+        }
+
+
+        // -------- PropertyUtils.setNestedProperty() --------
+        TestBean testBean = new TestBean();
+        bean.setMappedObjects("nested.property", testBean);
+        assertEquals("Can retrieve directly (C)",
+                     "This is a string",
+                     testBean.getStringProperty()); 
+        try {
+            PropertyUtils.setNestedProperty(bean, "mappedObjects(nested.property).stringProperty",
+                                                  "Updated String Value");
+            assertEquals("Check set via setNestedProperty (C)",
+                         "Updated String Value",
+                         testBean.getStringProperty()); 
+        } catch (Exception e) {
+            fail("Thew exception: " + e);
+        }
+
+        // -------- PropertyUtils.setNestedProperty() --------
+        bean.getNested().setMappedProperty("Mapped Key", "Nested Mapped Value"); 
+        try {
+            assertEquals("Can retrieve via getNestedProperty (D)",
+                         "Nested Mapped Value",
+                         PropertyUtils.getNestedProperty(
+                             bean,"nested.mappedProperty(Mapped Key)"));
+            PropertyUtils.setNestedProperty(bean, "nested.mappedProperty(Mapped Key)",
+                                                  "Updated Nested Mapped Value");
+            assertEquals("Check set via setNestedProperty (D)",
+                         "Updated Nested Mapped Value",
+                         PropertyUtils.getNestedProperty(
+                             bean,"nested.mappedProperty(Mapped Key)"));
+        } catch (Exception e) {
+            fail("Thew exception: " + e);
+        } 
+    }
 
+    
     /**
      * Corner cases on setNestedProperty invalid arguments.
      */



---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org


Mime
View raw message