Index: BeanUtilsTestCase.java
===================================================================
RCS file: /home/cvspublic/jakarta-commons/beanutils/src/test/org/apache/commons/beanutils/BeanUtilsTestCase.java,v
retrieving revision 1.10
diff -u -r1.10 BeanUtilsTestCase.java
--- BeanUtilsTestCase.java	5 Jun 2002 20:46:38 -0000	1.10
+++ BeanUtilsTestCase.java	15 Jun 2002 17:02:04 -0000
@@ -370,6 +370,49 @@
 
     }
 
+    /**
+     * Test populate() method on indexed array properties as a whole.
+     */
+    public void testPopulateIndexedArrayProperties() {
+
+        try {
+
+            HashMap map = new HashMap();
+            int intArrayIndexed[] = new int[] { 123, 456, 789 };
+            map.put("intArrayIndexed[0]", intArrayIndexed);
+            String stringArrayIndexed[] = new String[]
+                { "New String 0.0", "New String 0.1" };
+            map.put("stringArrayIndexed[0]", stringArrayIndexed);
+            Object objectArrayIndexed[] = new Object[]
+                { "New Object 0.0", "New Object 0.1" };
+            map.put("objectArrayIndexed[0]", objectArrayIndexed);
+
+            BeanUtils.populate(bean, map);
+
+            intArrayIndexed = bean.getIntArrayIndexed(0);
+            assertNotNull("intArrayIndexed is present", intArrayIndexed);
+            assertEquals("intArrayIndexed length", 3, intArrayIndexed.length);
+            assertEquals("intArrayIndexed[0]", 123, intArrayIndexed[0]);
+            assertEquals("intArrayIndexed[1]", 456, intArrayIndexed[1]);
+            assertEquals("intArrayIndexed[2]", 789, intArrayIndexed[2]);
+            stringArrayIndexed = bean.getStringArrayIndexed(0);
+            assertNotNull("stringArrayIndexed is present", stringArrayIndexed);
+            assertEquals("stringArrayIndexed length", 2, stringArrayIndexed.length);
+            assertEquals("stringArrayIndexed[0][0]", "New String 0.0", stringArrayIndexed[0]);
+            assertEquals("stringArrayIndexed[0][1]", "New String 0.1", stringArrayIndexed[1]);
+            objectArrayIndexed = bean.getObjectArrayIndexed(0);
+            assertNotNull("objectArrayIndexed is present", objectArrayIndexed);
+            assertEquals("objectArrayIndexed length", 2, objectArrayIndexed.length);
+            assertEquals("objectArrayIndexed[0][0]", "New Object 0.0", objectArrayIndexed[0]);
+            assertEquals("objectArrayIndexed[0][1]", "New Object 0.1", objectArrayIndexed[1]);
+
+        } catch (IllegalAccessException e) {
+            fail("IllegalAccessException");
+        } catch (InvocationTargetException e) {
+            fail("InvocationTargetException");
+        }
+
+    }
 
     /**
      * Test populate() on mapped properties.

