You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xmlbeans.apache.org by kk...@apache.org on 2005/03/03 01:25:53 UTC
svn commit: r155980 - in xmlbeans/trunk/test:
cases/xbean/scomp/contentType/UnionType.xsd
src/xmlobject/schematypes/checkin/EnumTests.java
Author: kkrouse
Date: Wed Mar 2 16:25:52 2005
New Revision: 155980
URL: http://svn.apache.org/viewcvs?view=rev&rev=155980
Log:
- The type 'GlobalSImpleT1' in UnionType.xsd was excluding "1" from it's
range. This caused UnionRestriction.xsd to fail to compile now that
enumerations are properly validated against the base type.
- Added test case to ensure string enumerations are validated against the base type
Modified:
xmlbeans/trunk/test/cases/xbean/scomp/contentType/UnionType.xsd
xmlbeans/trunk/test/src/xmlobject/schematypes/checkin/EnumTests.java
Modified: xmlbeans/trunk/test/cases/xbean/scomp/contentType/UnionType.xsd
URL: http://svn.apache.org/viewcvs/xmlbeans/trunk/test/cases/xbean/scomp/contentType/UnionType.xsd?view=diff&r1=155979&r2=155980
==============================================================================
--- xmlbeans/trunk/test/cases/xbean/scomp/contentType/UnionType.xsd (original)
+++ xmlbeans/trunk/test/cases/xbean/scomp/contentType/UnionType.xsd Wed Mar 2 16:25:52 2005
@@ -7,7 +7,7 @@
>
<xsd:simpleType name="GlobalSimpleT1">
<xsd:restriction base="xsd:integer">
- <xsd:minExclusive value="1"/>
+ <xsd:minInclusive value="1"/>
<xsd:maxInclusive value="3"/>
</xsd:restriction>
</xsd:simpleType>
@@ -56,4 +56,4 @@
<xsd:element name="UnionElt" type="UnionAnonGlobalT"/>
<xsd:element name="UnionOfUnions" type="UnionOfUnionsT"/>
<xsd:element name="UnionOfLists" type="UnionOfListsT"/>
-</xsd:schema>
\ No newline at end of file
+</xsd:schema>
Modified: xmlbeans/trunk/test/src/xmlobject/schematypes/checkin/EnumTests.java
URL: http://svn.apache.org/viewcvs/xmlbeans/trunk/test/src/xmlobject/schematypes/checkin/EnumTests.java?view=diff&r1=155979&r2=155980
==============================================================================
--- xmlbeans/trunk/test/src/xmlobject/schematypes/checkin/EnumTests.java (original)
+++ xmlbeans/trunk/test/src/xmlobject/schematypes/checkin/EnumTests.java Wed Mar 2 16:25:52 2005
@@ -19,6 +19,8 @@
import junit.framework.TestSuite;
import junit.framework.Assert;
import junit.framework.TestCase;
+import org.apache.xmlbeans.XmlBeans;
+import org.apache.xmlbeans.XmlException;
import org.apache.xmlbeans.XmlObject;
import com.enumtest.StatusreportDocument;
import com.enumtest.SalesreportDocument;
@@ -135,5 +137,44 @@
}
}
+ public static void testEnumRestriction() throws Exception
+ {
+ String schema =
+ "<xs:schema xmlns:xs=\"http://www.w3.org/2001/XMLSchema\"\n" +
+ " xmlns:tns=\"foo\" targetNamespace=\"foo\">\n" +
+ "\n" +
+ " <xs:simpleType name=\"parent\">\n" +
+ " <xs:restriction base=\"xs:string\">\n" +
+ " <xs:enumeration value=\"abc\"/>\n" +
+ " <xs:enumeration value=\"123\"/>\n" +
+ " </xs:restriction>\n" +
+ " </xs:simpleType>\n" +
+ "\n" +
+ " <xs:simpleType name=\"child\">\n" +
+ " <xs:restriction base=\"tns:parent\">\n" +
+ " <xs:enumeration value=\"abc\"/>\n" +
+ " <xs:enumeration value=\"123\"/>\n" +
+ // 'xyz' is an invalid enumeration value
+ " <xs:enumeration value=\"xyz\"/>\n" +
+ " </xs:restriction>\n" +
+ " </xs:simpleType>\n" +
+ "\n" +
+ "</xs:schema>\n";
+
+ XmlObject xobj = XmlObject.Factory.parse(schema);
+ //ArrayList errors = new ArrayList();
+ //XmlOptions opts = new XmlOptions().setErrorListener(errors);
+
+ try
+ {
+ XmlBeans.loadXsd(new XmlObject[]{xobj});
+ fail("Expected loadXsd() to throw an exception.");
+ }
+ catch (XmlException xe)
+ {
+ //
+ System.out.println("caught: " + xe);
+ }
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@xmlbeans.apache.org
For additional commands, e-mail: commits-help@xmlbeans.apache.org