[jboss-cvs] JBossAS SVN: r108523 - in projects/jboss-cl/trunk/classloading/src: test/java/org/jboss/test/classloading/metadata/xml/test and 1 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Oct 12 12:35:56 EDT 2010
Author: alesj
Date: 2010-10-12 12:35:56 -0400 (Tue, 12 Oct 2010)
New Revision: 108523
Added:
projects/jboss-cl/trunk/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ParentPolicyWithFilters.xml
projects/jboss-cl/trunk/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ParentPolicyWithJavaBean.xml
projects/jboss-cl/trunk/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ParentPolicyWithName.xml
Modified:
projects/jboss-cl/trunk/classloading/src/main/java/org/jboss/classloading/spi/metadata/FilterMetaData.java
projects/jboss-cl/trunk/classloading/src/test/java/org/jboss/test/classloading/metadata/xml/test/ClassLoadingMetaDataXmlUnitTestCase.java
Log:
[JBCL-176]; add tests.
Modified: projects/jboss-cl/trunk/classloading/src/main/java/org/jboss/classloading/spi/metadata/FilterMetaData.java
===================================================================
--- projects/jboss-cl/trunk/classloading/src/main/java/org/jboss/classloading/spi/metadata/FilterMetaData.java 2010-10-12 16:26:12 UTC (rev 108522)
+++ projects/jboss-cl/trunk/classloading/src/main/java/org/jboss/classloading/spi/metadata/FilterMetaData.java 2010-10-12 16:35:56 UTC (rev 108523)
@@ -24,6 +24,7 @@
import javax.xml.bind.annotation.XmlAnyElement;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlValue;
import java.io.Serializable;
import java.lang.reflect.Constructor;
@@ -91,11 +92,22 @@
@XmlAnyElement
@ManagementProperty(ignored = true)
- public void setValue(Object value)
+ public void setValueObject(Object value)
{
- this.value = value;
+ if (value instanceof String)
+ setValueString((String) value);
+ else
+ this.value = value;
}
+ @XmlValue
+ @ManagementProperty(ignored = true)
+ public void setValueString(String value)
+ {
+ if (value != null)
+ this.value = value.split(",");
+ }
+
public int hashCode()
{
return 3 * filterClassName.hashCode() + 7 * (value != null ? value.hashCode() : 0);
Modified: projects/jboss-cl/trunk/classloading/src/test/java/org/jboss/test/classloading/metadata/xml/test/ClassLoadingMetaDataXmlUnitTestCase.java
===================================================================
--- projects/jboss-cl/trunk/classloading/src/test/java/org/jboss/test/classloading/metadata/xml/test/ClassLoadingMetaDataXmlUnitTestCase.java 2010-10-12 16:26:12 UTC (rev 108522)
+++ projects/jboss-cl/trunk/classloading/src/test/java/org/jboss/test/classloading/metadata/xml/test/ClassLoadingMetaDataXmlUnitTestCase.java 2010-10-12 16:35:56 UTC (rev 108523)
@@ -24,14 +24,10 @@
import java.util.ArrayList;
import java.util.List;
-import org.jboss.classloading.spi.metadata.Capability;
-import org.jboss.classloading.spi.metadata.ClassLoadingMetaData;
-import org.jboss.classloading.spi.metadata.ClassLoadingMetaData10;
-import org.jboss.classloading.spi.metadata.ClassLoadingMetaDataFactory;
-import org.jboss.classloading.spi.metadata.ExportAll;
-import org.jboss.classloading.spi.metadata.Requirement;
+import org.jboss.classloading.spi.metadata.*;
import org.jboss.classloading.spi.version.Version;
import org.jboss.classloading.spi.version.VersionRange;
+import org.jboss.javabean.plugins.jaxb.JavaBean20;
import org.jboss.test.classloading.metadata.xml.AbstractJBossXBTest;
import org.jboss.test.classloading.metadata.xml.support.TestCapability;
import org.jboss.test.classloading.metadata.xml.support.TestRequirement;
@@ -42,6 +38,7 @@
* ClassLoadingMetaDataXmlUnitTestCase.
*
* @author <a href="adrian at jboss.com">Adrian Brock</a>
+ * @author <a href="ales.justin at jboss.org">Ales Justin</a>
* @version $Revision: 1.1 $
*/
public class ClassLoadingMetaDataXmlUnitTestCase extends AbstractJBossXBTest
@@ -318,6 +315,43 @@
assertRequirements(result, factory.createUsesPackage("test1", new VersionRange("1.0.0")));
}
+ public void testParentPolicyWithName() throws Exception
+ {
+ ClassLoadingMetaData result = unmarshal();
+ ParentPolicyMetaData ppmd = result.getParentPolicy();
+ assertNotNull(ppmd);
+ assertEquals("EVERYTHING", ppmd.getName());
+ }
+
+ public void testParentPolicyWithFilters() throws Exception
+ {
+ ClassLoadingMetaData result = unmarshal();
+ ParentPolicyMetaData ppmd = result.getParentPolicy();
+ assertNotNull(ppmd);
+ assertNull(ppmd.getName());
+ FilterMetaData before = ppmd.getBeforeFilter();
+ assertNotNull(before);
+ assertEqualStrings(new String[]{"org.jboss.acme", "com.redhat.acme"}, before.getValue());
+ FilterMetaData after = ppmd.getAfterFilter();
+ assertNotNull(after);
+ assertEqualStrings(new String[]{"org.jboss.foobar", "com.redhat.foobar"}, after.getValue());
+ assertEquals("Qwert", ppmd.getDescription());
+ // actual PP and CF instantiation
+ assertNotNull(ppmd.createParentPolicy());
+ }
+
+ public void testParentPolicyWithJavaBean() throws Exception
+ {
+ ClassLoadingMetaData result = unmarshal(JavaBean20.class);
+ ParentPolicyMetaData ppmd = result.getParentPolicy();
+ assertNotNull(ppmd);
+ assertNull(ppmd.getName());
+ FilterMetaData before = ppmd.getBeforeFilter();
+ assertNotNull(before);
+ // actual PP and CF instantiation
+ assertNotNull(ppmd.createParentPolicy());
+ }
+
public void assertCapabilities(ClassLoadingMetaData metadata, Capability... expected)
{
List<Capability> temp = new ArrayList<Capability>();
@@ -333,7 +367,18 @@
temp.add(requirement);
assertEquals(temp, metadata.getRequirements().getRequirements());
}
-
+
+ public void assertEqualStrings(String[] expected, Object result)
+ {
+ assertNotNull(expected);
+ assertNotNull(result);
+ assertTrue(result instanceof String[]);
+ String[] strings = (String[]) result;
+ assertEquals(expected.length, strings.length);
+ for (int i = 0; i < expected.length; i++)
+ assertEquals(expected[i], strings[i]);
+ }
+
protected ClassLoadingMetaData unmarshal(Class<?>... extra) throws Exception
{
return unmarshalObject(ClassLoadingMetaData10.class, ClassLoadingMetaData10.class, extra);
Added: projects/jboss-cl/trunk/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ParentPolicyWithFilters.xml
===================================================================
--- projects/jboss-cl/trunk/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ParentPolicyWithFilters.xml (rev 0)
+++ projects/jboss-cl/trunk/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ParentPolicyWithFilters.xml 2010-10-12 16:35:56 UTC (rev 108523)
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<classloading xmlns="urn:jboss:classloading:1.0" name="test">
+ <parent-policy>
+ <before-filter>org.jboss.acme,com.redhat.acme</before-filter>
+ <after-filter>org.jboss.foobar,com.redhat.foobar</after-filter>
+ <description>Qwert</description>
+ </parent-policy>
+</classloading>
Added: projects/jboss-cl/trunk/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ParentPolicyWithJavaBean.xml
===================================================================
--- projects/jboss-cl/trunk/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ParentPolicyWithJavaBean.xml (rev 0)
+++ projects/jboss-cl/trunk/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ParentPolicyWithJavaBean.xml 2010-10-12 16:35:56 UTC (rev 108523)
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<classloading xmlns="urn:jboss:classloading:1.0" name="test">
+ <parent-policy>
+ <before-filter>
+ <javabean xmlns="urn:jboss:javabean:2.0" class="org.jboss.classloader.plugins.filter.EverythingClassFilter"/>
+ </before-filter>
+ </parent-policy>
+</classloading>
Copied: projects/jboss-cl/trunk/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ParentPolicyWithName.xml (from rev 108068, projects/jboss-cl/trunk/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/UsesRequirement.xml)
===================================================================
--- projects/jboss-cl/trunk/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ParentPolicyWithName.xml (rev 0)
+++ projects/jboss-cl/trunk/classloading/src/test/resources/org/jboss/test/classloading/metadata/xml/test/ParentPolicyWithName.xml 2010-10-12 16:35:56 UTC (rev 108523)
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<classloading xmlns="urn:jboss:classloading:1.0" name="test">
+ <parent-policy name="EVERYTHING"/>
+</classloading>
More information about the jboss-cvs-commits
mailing list