[jboss-cvs] JBossAS SVN: r60000 - in projects/microcontainer/trunk/kernel/src: tests/org/jboss/test/kernel/config/test and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Jan 25 09:19:35 EST 2007


Author: alesj
Date: 2007-01-25 09:19:35 -0500 (Thu, 25 Jan 2007)
New Revision: 60000

Modified:
   projects/microcontainer/trunk/kernel/src/resources/xml-test/org/jboss/test/kernel/config/test/testPropertyWithIgnoreReplace.xml
   projects/microcontainer/trunk/kernel/src/resources/xml-test/org/jboss/test/kernel/config/test/testPropertyWithPropertyValue.xml
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/PropertyTestCase.java
   projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/PropertyXMLTestCase.java
Log:
Optional string replacement - additional support for plain value. Still todo for parameter.

Modified: projects/microcontainer/trunk/kernel/src/resources/xml-test/org/jboss/test/kernel/config/test/testPropertyWithIgnoreReplace.xml
===================================================================
--- projects/microcontainer/trunk/kernel/src/resources/xml-test/org/jboss/test/kernel/config/test/testPropertyWithIgnoreReplace.xml	2007-01-25 14:09:21 UTC (rev 59999)
+++ projects/microcontainer/trunk/kernel/src/resources/xml-test/org/jboss/test/kernel/config/test/testPropertyWithIgnoreReplace.xml	2007-01-25 14:19:35 UTC (rev 60000)
@@ -3,8 +3,20 @@
 <deployment xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="urn:jboss:bean-deployer:2.0 bean-deployer_2_0.xsd"
             xmlns="urn:jboss:bean-deployer:2.0">
-   <bean name="MyBean" class="org.jboss.test.kernel.config.support.MyObject">
+
+   <bean name="MyBeanProperty" class="org.jboss.test.kernel.config.support.MyObject">
       <property name="key" class="java.lang.String" replace="false">${test.property.value}</property>
    </bean>
+
+   <bean name="MyBeanParameter" class="org.jboss.test.kernel.config.support.MyObject">
+      <constructor>
+         <parameter replace="false">${test.property.value}</parameter>
+      </constructor>
+   </bean>
+
+   <bean name="MyBeanPlainValue" class="org.jboss.test.kernel.config.support.MyObject">
+      <property name="key"><value class="java.lang.String" replace="false">${test.property.value}</value></property>
+   </bean>
+   
 </deployment>
 

Modified: projects/microcontainer/trunk/kernel/src/resources/xml-test/org/jboss/test/kernel/config/test/testPropertyWithPropertyValue.xml
===================================================================
--- projects/microcontainer/trunk/kernel/src/resources/xml-test/org/jboss/test/kernel/config/test/testPropertyWithPropertyValue.xml	2007-01-25 14:09:21 UTC (rev 59999)
+++ projects/microcontainer/trunk/kernel/src/resources/xml-test/org/jboss/test/kernel/config/test/testPropertyWithPropertyValue.xml	2007-01-25 14:19:35 UTC (rev 60000)
@@ -3,7 +3,7 @@
 <deployment xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="urn:jboss:bean-deployer:2.0 bean-deployer_2_0.xsd"
             xmlns="urn:jboss:bean-deployer:2.0">
-   <bean name="MyBean" class="org.jboss.test.kernel.config.support.MyObject">
+   <bean name="MyBeanProperty" class="org.jboss.test.kernel.config.support.MyObject">
       <property name="key" class="java.lang.String">${test.property.value}</property>
    </bean>
 </deployment>

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/PropertyTestCase.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/PropertyTestCase.java	2007-01-25 14:09:21 UTC (rev 59999)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/PropertyTestCase.java	2007-01-25 14:19:35 UTC (rev 60000)
@@ -21,6 +21,9 @@
 */
 package org.jboss.test.kernel.config.test;
 
+import java.util.Collections;
+import java.util.List;
+
 import junit.framework.Test;
 import org.jboss.beans.metadata.plugins.AbstractPropertyMetaData;
 import org.jboss.beans.metadata.plugins.StringValueMetaData;
@@ -46,18 +49,35 @@
       return suite(PropertyTestCase.class);
    }
 
+   private List<ObjectCreator> singlePropertyCreator(final boolean replace)
+   {
+      ObjectCreator oc = new ObjectCreator()
+      {
+         public Object createObject() throws Throwable
+         {
+            return instantiateReplacePropertyValue(replace);
+         }
+      };
+      return Collections.singletonList(oc);
+   }
+
    public void testPropertyWithPropertyValue() throws Throwable
    {
-      doTestProperty(true);
+      doTestProperty(true, singlePropertyCreator(true));
    }
 
    public void testPropertyWithIgnoreReplace() throws Throwable
    {
-      doTestProperty(false);
+      doTestProperty(false, createCreators());
    }
 
-   private void doTestProperty(boolean replace) throws Throwable
+   protected List<ObjectCreator> createCreators()
    {
+      return singlePropertyCreator(false);
+   }
+
+   private void doTestProperty(boolean replace, List<ObjectCreator> ocs) throws Throwable
+   {
       SecurityManager sm = suspendSecurity();
       try
       {
@@ -65,12 +85,15 @@
          String PROP_NAME = "test.property.value";
          String CONST = "PropertyReplaceTestCase";
          System.setProperty(PROP_NAME, CONST);
-         // get property
-         Object value = instantiateReplacePropertyValue(replace);
-         assertNotNull(value);
-         assertEquals(String.class, value.getClass());
-         String checkValue = replace ? CONST : "${" + PROP_NAME + "}"; 
-         assertEquals(checkValue, value);
+         for(ObjectCreator oc : ocs)
+         {
+            // get property
+            Object value = oc.createObject();
+            assertNotNull(value);
+            assertEquals(String.class, value.getClass());
+            String checkValue = replace ? CONST : "${" + PROP_NAME + "}";
+            assertEquals(checkValue, value);
+         }
       }
       finally
       {
@@ -80,11 +103,16 @@
 
    protected Object instantiateReplacePropertyValue(boolean replace) throws Throwable
    {
-      PropertyMetaData property = new AbstractPropertyMetaData("test", "${test.property.value}", String.class.getName());
+      PropertyMetaData property = new AbstractPropertyMetaData("key", "${test.property.value}", String.class.getName());
       StringValueMetaData svmd = assertInstanceOf(property.getValue(), StringValueMetaData.class, false);
       svmd.setReplace(replace);
       svmd.setConfigurator(bootstrap().getConfigurator());
       return svmd.getValue(null, Thread.currentThread().getContextClassLoader());
    }
 
+   protected interface ObjectCreator
+   {
+      Object createObject() throws Throwable;
+   }
+
 }

Modified: projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/PropertyXMLTestCase.java
===================================================================
--- projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/PropertyXMLTestCase.java	2007-01-25 14:09:21 UTC (rev 59999)
+++ projects/microcontainer/trunk/kernel/src/tests/org/jboss/test/kernel/config/test/PropertyXMLTestCase.java	2007-01-25 14:19:35 UTC (rev 60000)
@@ -21,6 +21,9 @@
 */
 package org.jboss.test.kernel.config.test;
 
+import java.util.ArrayList;
+import java.util.List;
+
 import junit.framework.Test;
 import org.jboss.test.kernel.config.support.MyObject;
 import org.jboss.test.kernel.config.support.XMLUtil;
@@ -45,11 +48,59 @@
       return suite(PropertyXMLTestCase.class);
    }
 
-   protected Object instantiateReplacePropertyValue(boolean replace) throws Throwable
+   protected Object instantiateValue(String type) throws Throwable
    {
       XMLUtil util = bootstrapXML(true);
-      MyObject mybean = (MyObject)util.getBean("MyBean");
+      MyObject mybean = (MyObject)util.getBean("MyBean" + type);
       return mybean.getKey();
    }
 
+   protected Object instantiateProperty() throws Throwable
+   {
+      return instantiateValue("Property");
+   }
+
+   protected Object instantiateConstructorParameter() throws Throwable
+   {
+      return instantiateValue("Parameter");
+   }
+
+   protected Object instantiatePlainValue() throws Throwable
+   {
+      return instantiateValue("PlainValue");
+   }
+
+   protected List<ObjectCreator> createCreators()
+   {
+      List<ObjectCreator> result = new ArrayList<ObjectCreator>();
+      ObjectCreator property = new ObjectCreator()
+      {
+         public Object createObject() throws Throwable
+         {
+            return instantiateProperty();
+         }
+      };
+      result.add(property);
+/*
+      TODO
+      ObjectCreator parameter = new ObjectCreator()
+      {
+         public Object createObject() throws Throwable
+         {
+            return instantiateConstructorParameter();
+         }
+      };
+      result.add(parameter);
+*/
+      ObjectCreator plainValue = new ObjectCreator()
+      {
+         public Object createObject() throws Throwable
+         {
+            return instantiatePlainValue();
+         }
+      };
+      result.add(plainValue);
+      return result;
+   }
+
 }




More information about the jboss-cvs-commits mailing list