You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xmlbeans.apache.org by ce...@apache.org on 2005/03/31 22:11:41 UTC
svn commit: r159634 - in xmlbeans/trunk/test:
cases/xbean/scomp/derivation/facets/ src/compile/scomp/som/common/
src/scomp/derivation/extension/detailed/
src/scomp/derivation/restriction/facets/detailed/
src/scomp/substGroup/restriction/detailed/
Author: cezar
Date: Thu Mar 31 12:11:39 2005
New Revision: 159634
URL: http://svn.apache.org/viewcvs?view=rev&rev=159634
Log:
Contributed by Rajiv Balachandran - implemented some scomp facet/restriction tests
Modified:
xmlbeans/trunk/test/cases/xbean/scomp/derivation/facets/FacetRestriction.xsd
xmlbeans/trunk/test/cases/xbean/scomp/derivation/facets/Facets.xsd
xmlbeans/trunk/test/src/compile/scomp/som/common/SomTestBase.java
xmlbeans/trunk/test/src/scomp/derivation/extension/detailed/ComplexContentExtensionTest.java
xmlbeans/trunk/test/src/scomp/derivation/restriction/facets/detailed/FacetRestrictionTest.java
xmlbeans/trunk/test/src/scomp/derivation/restriction/facets/detailed/FacetsTest.java
xmlbeans/trunk/test/src/scomp/substGroup/restriction/detailed/Final.java
Modified: xmlbeans/trunk/test/cases/xbean/scomp/derivation/facets/FacetRestriction.xsd
URL: http://svn.apache.org/viewcvs/xmlbeans/trunk/test/cases/xbean/scomp/derivation/facets/FacetRestriction.xsd?view=diff&r1=159633&r2=159634
==============================================================================
--- xmlbeans/trunk/test/cases/xbean/scomp/derivation/facets/FacetRestriction.xsd (original)
+++ xmlbeans/trunk/test/cases/xbean/scomp/derivation/facets/FacetRestriction.xsd Thu Mar 31 12:11:39 2005
@@ -57,12 +57,19 @@
</xs:restriction>
</xs:simpleType>
- <xs:simpleType name="WST">
- <xs:restriction base="base:WST">
+ <xs:simpleType name="WSTReplace">
+ <xs:restriction base="base:WSTPreserve">
<xs:whiteSpace value="replace"/>
</xs:restriction>
</xs:simpleType>
+ <xs:simpleType name="WSTCollapse">
+ <xs:restriction base="base:WSTPreserve">
+ <xs:whiteSpace value="collapse"/>
+ </xs:restriction>
+ </xs:simpleType>
+
+
<xs:simpleType name="EnumT">
<xs:restriction base="base:EnumT">
<xs:enumeration value="a"/>
@@ -82,7 +89,8 @@
<xs:element name="LengthElt" type="xs:integer"/>
<xs:element name="MinMaxLengthElt" type="MinMaxLengthT"/>
<xs:element name="DigitsElt" type="DigitsT"/>
- <xs:element name="WSElt" type="WST"/>
+ <xs:element name="WSReplaceElt" type="WSTReplace"/>
+ <xs:element name="WSCollapseElt" type="WSTCollapse" />
<xs:element name="EnumElt" type="EnumT"/>
<xs:element name="PatternElt" type="PatternT"/>
Modified: xmlbeans/trunk/test/cases/xbean/scomp/derivation/facets/Facets.xsd
URL: http://svn.apache.org/viewcvs/xmlbeans/trunk/test/cases/xbean/scomp/derivation/facets/Facets.xsd?view=diff&r1=159633&r2=159634
==============================================================================
--- xmlbeans/trunk/test/cases/xbean/scomp/derivation/facets/Facets.xsd (original)
+++ xmlbeans/trunk/test/cases/xbean/scomp/derivation/facets/Facets.xsd Thu Mar 31 12:11:39 2005
@@ -55,9 +55,9 @@
</xs:restriction>
</xs:simpleType>
- <xs:simpleType name="WST">
+ <xs:simpleType name="WSTPreserve">
<xs:restriction base="xs:string">
- <xs:whiteSpace value="replace"/>
+ <xs:whiteSpace value="preserve"/>
</xs:restriction>
</xs:simpleType>
@@ -82,7 +82,7 @@
<xs:element name="LengthElt" type="LengthT"/>
<xs:element name="MinMaxLengthElt" type="MinMaxLengthT"/>
<xs:element name="DigitsElt" type="DigitsT"/>
- <xs:element name="WSElt" type="WST"/>
+ <xs:element name="WSPreserveElt" type="WSTPreserve"/>
<xs:element name="EnumElt" type="EnumT"/>
<xs:element name="PatternElt" type="PatternT"/>
Modified: xmlbeans/trunk/test/src/compile/scomp/som/common/SomTestBase.java
URL: http://svn.apache.org/viewcvs/xmlbeans/trunk/test/src/compile/scomp/som/common/SomTestBase.java?view=diff&r1=159633&r2=159634
==============================================================================
--- xmlbeans/trunk/test/src/compile/scomp/som/common/SomTestBase.java (original)
+++ xmlbeans/trunk/test/src/compile/scomp/som/common/SomTestBase.java Thu Mar 31 12:11:39 2005
@@ -320,6 +320,10 @@
}
catch (IllegalStateException ise)
{
+ System.out.println("Msg is:");
+ ise.getMessage();
+ System.out.println("Msg is:");
+ ise.printStackTrace();
return false;
}
return true;
Modified: xmlbeans/trunk/test/src/scomp/derivation/extension/detailed/ComplexContentExtensionTest.java
URL: http://svn.apache.org/viewcvs/xmlbeans/trunk/test/src/scomp/derivation/extension/detailed/ComplexContentExtensionTest.java?view=diff&r1=159633&r2=159634
==============================================================================
--- xmlbeans/trunk/test/src/scomp/derivation/extension/detailed/ComplexContentExtensionTest.java (original)
+++ xmlbeans/trunk/test/src/scomp/derivation/extension/detailed/ComplexContentExtensionTest.java Thu Mar 31 12:11:39 2005
@@ -21,10 +21,9 @@
import xbean.scomp.derivation.complexExtension.SequenceExtensionT;
import java.math.BigInteger;
+import java.util.Iterator;
-import org.apache.xmlbeans.XmlInteger;
-import org.apache.xmlbeans.XmlString;
-import org.apache.xmlbeans.XmlErrorCodes;
+import org.apache.xmlbeans.*;
/**
*
@@ -144,9 +143,183 @@
}
- public void testAllExtension() {
- fail("Compile Time test");
+ /**
+ * The follwing are test for the 'final' attribute used in a base type that affects extenstion/restriction
+ * They are negative tests and test for #all, restriction, extenstion and 'extenstion restriction' values
+ */
+ public void testFinalAll() {
+ String inputXsd = " <xsd:schema xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">\n" +
+ " <xsd:complexType name=\"BaseProductTypeFinalAll\" final=\"#all\">\n" +
+ " <xsd:sequence>\n" +
+ " <xsd:element name=\"number\" type=\"xsd:integer\" />\n" +
+ " <xsd:element name=\"name\" type=\"xsd:string\" minOccurs=\"0\" />\n" +
+ " </xsd:sequence>\n" +
+ " </xsd:complexType>\n" +
+ "\n" +
+ " <xsd:complexType name=\"ProductTypeExtension\">\n" +
+ " <xsd:complexContent>\n" +
+ " <xsd:extension base=\"BaseProductTypeFinalAll\">\n" +
+ " <xsd:sequence>\n" +
+ " <xsd:element name=\"subcategory\" type=\"xsd:string\"/>\n" +
+ " </xsd:sequence>\n" +
+ " </xsd:extension>\n" +
+ " </xsd:complexContent>\n" +
+ " </xsd:complexType> \n" +
+ "\n" +
+ " <xsd:complexType name=\"ProductTypeRestriction\">\n" +
+ " <xsd:complexContent>\n" +
+ " <xsd:restriction base=\"BaseProductTypeFinalAll\">\n" +
+ " <xsd:sequence>\n" +
+ " <xsd:element name=\"number\" type=\"xsd:integer\"/>\n" +
+ " </xsd:sequence>\n" +
+ " </xsd:restriction>\n" +
+ " </xsd:complexContent>\n" +
+ " </xsd:complexType> \n" +
+ "\n" +
+ " </xsd:schema>";
+ try {
+ XmlObject xobj = XmlObject.Factory.parse(inputXsd);
+ XmlObject[] compInput = new XmlObject[]{xobj};
+ XmlBeans.compileXmlBeans(null, null, compInput, null, XmlBeans.getBuiltinTypeSystem(), null, null);
+ }
+ catch (XmlException xme) {
+ //assertEquals(2, xme.getErrors().size());
+
+ Iterator itr = xme.getErrors().iterator();
+ XmlError eacherr = (XmlError) itr.next();
+ System.out.println("Err:" + eacherr.getMessage());
+ assertNotNull(eacherr.getErrorCode());
+ assertEquals("cvc-3.4.6", eacherr.getErrorCode());
+
+ eacherr = (XmlError) itr.next();
+ System.out.println("Err:" + eacherr.getMessage());
+ assertNotNull(eacherr.getErrorCode());
+ assertEquals("cvc-3.4.6", eacherr.getErrorCode());
+
+ }
+ }
+
+ public void testFinalExtension() {
+ String inputXsd = " <xsd:schema xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">\n" +
+ " <xsd:complexType name=\"BaseProductTypeFinalExtension\" final=\"extension\">\n" +
+ " <xsd:sequence>\n" +
+ " <xsd:element name=\"number\" type=\"xsd:integer\" />\n" +
+ " <xsd:element name=\"name\" type=\"xsd:string\" minOccurs=\"0\" />\n" +
+ " </xsd:sequence>\n" +
+ " </xsd:complexType>\n" +
+ "\n" +
+ " <xsd:complexType name=\"ProductTypeExtension\">\n" +
+ " <xsd:complexContent>\n" +
+ " <xsd:extension base=\"BaseProductTypeFinalExtension\">\n" +
+ " <xsd:sequence>\n" +
+ " <xsd:element name=\"subcategory\" type=\"xsd:string\"/>\n" +
+ " </xsd:sequence>\n" +
+ " </xsd:extension>\n" +
+ " </xsd:complexContent>\n" +
+ " </xsd:complexType> \n" +
+ "\n" +
+ " </xsd:schema>";
+
+ try {
+ XmlObject xobj = XmlObject.Factory.parse(inputXsd);
+ XmlObject[] compInput = new XmlObject[]{xobj};
+ XmlBeans.compileXmlBeans(null, null, compInput, null, XmlBeans.getBuiltinTypeSystem(), null, null);
+ }
+ catch (XmlException xme) {
+ assertEquals(xme.getErrors().size(), 1);
+
+ XmlError eacherr = (XmlError) xme.getErrors().iterator().next();
+ System.out.println("error:" + eacherr.getErrorCode());
+ assertNotNull(eacherr.getErrorCode());
+ assertEquals("cvc-3.4.6", eacherr.getErrorCode());
+ }
+ }
+
+ public void testFinalRestriction() {
+ String inputXsd = " <xsd:schema xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">\n" +
+ " <xsd:complexType name=\"BaseProductTypeFinalRestriction\" final=\"restriction\">\n" +
+ " <xsd:sequence>\n" +
+ " <xsd:element name=\"number\" type=\"xsd:integer\" />\n" +
+ " <xsd:element name=\"name\" type=\"xsd:string\" />\n" +
+ " </xsd:sequence>\n" +
+ " </xsd:complexType>\n" +
+ "\n" +
+ " <xsd:complexType name=\"ProductTypeRestriction\">\n" +
+ " <xsd:complexContent>\n" +
+ " <xsd:restriction base=\"BaseProductTypeFinalRestriction\">\n" +
+ " <xsd:sequence>\n" +
+ " <xsd:element name=\"number\" type=\"xsd:integer\"/>\n" +
+ " </xsd:sequence>\n" +
+ " </xsd:restriction>\n" +
+ " </xsd:complexContent>\n" +
+ " </xsd:complexType> " +
+ " </xsd:schema>";
+
+ try {
+ XmlObject xobj = XmlObject.Factory.parse(inputXsd);
+ XmlObject[] compInput = new XmlObject[]{xobj};
+ XmlBeans.compileXmlBeans(null, null, compInput, null, XmlBeans.getBuiltinTypeSystem(), null, null);
+ }
+ catch (XmlException xme) {
+ assertEquals(1, xme.getErrors().size());
+
+ XmlError eacherr = (XmlError) xme.getErrors().iterator().next();
+ System.out.println("Err:" + eacherr.getMessage());
+ assertNotNull(eacherr.getErrorCode());
+ assertEquals("cvc-3.4.6", eacherr.getErrorCode());
+ }
+ }
+
+ public void testFinalRestrExt() {
+ String inputXsd = " <xsd:schema xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">\n" +
+ " <xsd:complexType name=\"BaseProductTypeFinalAll\" final=\"restriction extension\">\n" +
+ " <xsd:sequence>\n" +
+ " <xsd:element name=\"number\" type=\"xsd:integer\" />\n" +
+ " <xsd:element name=\"name\" type=\"xsd:string\" minOccurs=\"0\" />\n" +
+ " </xsd:sequence>\n" +
+ " </xsd:complexType>\n" +
+ "\n" +
+ " <xsd:complexType name=\"ProductTypeExtension\">\n" +
+ " <xsd:complexContent>\n" +
+ " <xsd:extension base=\"BaseProductTypeFinalAll\">\n" +
+ " <xsd:sequence>\n" +
+ " <xsd:element name=\"subcategory\" type=\"xsd:string\"/>\n" +
+ " </xsd:sequence>\n" +
+ " </xsd:extension>\n" +
+ " </xsd:complexContent>\n" +
+ " </xsd:complexType> \n" +
+ "\n" +
+ " <xsd:complexType name=\"ProductTypeRestriction\">\n" +
+ " <xsd:complexContent>\n" +
+ " <xsd:restriction base=\"BaseProductTypeFinalAll\">\n" +
+ " <xsd:sequence>\n" +
+ " <xsd:element name=\"number\" type=\"xsd:integer\"/>\n" +
+ " </xsd:sequence>\n" +
+ " </xsd:restriction>\n" +
+ " </xsd:complexContent>\n" +
+ " </xsd:complexType> \n" +
+ "\n" +
+ " </xsd:schema>";
+
+ try {
+ XmlObject xobj = XmlObject.Factory.parse(inputXsd);
+ XmlObject[] compInput = new XmlObject[]{xobj};
+ XmlBeans.compileXmlBeans(null, null, compInput, null, XmlBeans.getBuiltinTypeSystem(), null, null);
+ }
+ catch (XmlException xme) {
+ assertEquals(2, xme.getErrors().size());
+
+ Iterator itr = xme.getErrors().iterator();
+ XmlError eacherr = (XmlError) itr.next();
+ System.out.println("Err:" + eacherr.getMessage());
+ assertNotNull(eacherr.getErrorCode());
+ assertEquals("cvc-3.4.6", eacherr.getErrorCode());
+
+ eacherr = (XmlError) itr.next();
+ System.out.println("Err:" + eacherr.getMessage());
+ assertNotNull(eacherr.getErrorCode());
+ assertEquals("cvc-3.4.6", eacherr.getErrorCode());
+ }
}
-
}
Modified: xmlbeans/trunk/test/src/scomp/derivation/restriction/facets/detailed/FacetRestrictionTest.java
URL: http://svn.apache.org/viewcvs/xmlbeans/trunk/test/src/scomp/derivation/restriction/facets/detailed/FacetRestrictionTest.java?view=diff&r1=159633&r2=159634
==============================================================================
--- xmlbeans/trunk/test/src/scomp/derivation/restriction/facets/detailed/FacetRestrictionTest.java (original)
+++ xmlbeans/trunk/test/src/scomp/derivation/restriction/facets/detailed/FacetRestrictionTest.java Thu Mar 31 12:11:39 2005
@@ -204,8 +204,35 @@
}
- public void testWSElt() throws Throwable {
- fail("do this test");
+ public void testWSElt() throws Throwable {
+
+ // whiteSpace="replace" case
+ WSReplaceEltDocument doc = WSReplaceEltDocument.Factory.parse("<WSReplaceElt " +
+ "xmlns=\"http://xbean/scomp/derivation/facets/FacetRestriction\">" +
+ " This is a test.\nThe resulting string should convert tabs \t, line feeds \n and carriage returns into a single space \n" +
+ "</WSReplaceElt>");
+
+ // whiteSpace="collapse " case
+ WSCollapseEltDocument doc2 = WSCollapseEltDocument.Factory.parse("<WSCollapseElt " +
+ "xmlns=\"http://xbean/scomp/derivation/facets/FacetRestriction\">" +
+ " This is a test.\nThe resulting string should convert tabs \t, line feeds \n and carriage returns into a single space \n" +
+ "</WSCollapseElt>");
+
+ try {
+ assertTrue(doc.validate(validateOptions));
+ assertTrue(doc2.validate(validateOptions));
+ }
+ catch (Throwable t) {
+ showErrors();
+ throw t;
+ }
+
+ String replaceExpected = " This is a test. The resulting string should convert tabs , line feeds and carriage returns into a single space ";
+ assertEquals(replaceExpected, doc.getWSReplaceElt());
+
+ String collapseExpected = "This is a test. The resulting string should convert tabs , line feeds and carriage returns into a single space";
+ assertEquals(collapseExpected, doc2.getWSCollapseElt());
+
}
public void testEnumElt() throws Throwable {
Modified: xmlbeans/trunk/test/src/scomp/derivation/restriction/facets/detailed/FacetsTest.java
URL: http://svn.apache.org/viewcvs/xmlbeans/trunk/test/src/scomp/derivation/restriction/facets/detailed/FacetsTest.java?view=diff&r1=159633&r2=159634
==============================================================================
--- xmlbeans/trunk/test/src/scomp/derivation/restriction/facets/detailed/FacetsTest.java (original)
+++ xmlbeans/trunk/test/src/scomp/derivation/restriction/facets/detailed/FacetsTest.java Thu Mar 31 12:11:39 2005
@@ -16,15 +16,23 @@
import scomp.common.BaseCase;
import xbean.scomp.derivation.facets.facets.*;
+import xbean.scomp.derivation.facets.facets.DigitsEltDocument;
+import xbean.scomp.derivation.facets.facets.EnumEltDocument;
+import xbean.scomp.derivation.facets.facets.EnumT;
+import xbean.scomp.derivation.facets.facets.LengthEltDocument;
+import xbean.scomp.derivation.facets.facets.MinMaxExclusiveDateEltDocument;
+import xbean.scomp.derivation.facets.facets.MinMaxExclusiveEltDocument;
+import xbean.scomp.derivation.facets.facets.MinMaxInclusiveDateEltDocument;
+import xbean.scomp.derivation.facets.facets.MinMaxInclusiveEltDocument;
+import xbean.scomp.derivation.facets.facets.MinMaxLengthEltDocument;
+import xbean.scomp.derivation.facets.facets.PatternEltDocument;
import java.math.BigDecimal;
import java.util.Calendar;
import java.util.GregorianCalendar;
-import java.util.Date;
import java.util.TimeZone;
import org.apache.xmlbeans.XmlErrorCodes;
-import org.apache.xmlbeans.XmlOptions;
/**
*/
@@ -210,7 +218,22 @@
}
public void testWSElt() throws Throwable {
- fail("do this test");
+ WSPreserveEltDocument doc = WSPreserveEltDocument.Factory.parse("<WSPreserveElt " +
+ "xmlns=\"http://xbean/scomp/derivation/facets/Facets\">" +
+ "This is a\ttest.\nThe resulting string should preserve all whitespace tabs and carriage returns as is\n" +
+ "</WSPreserveElt>");
+
+
+ try {
+ assertTrue(doc.validate(validateOptions));
+ }
+ catch (Throwable t) {
+ showErrors();
+ throw t;
+ }
+
+ String expected = "This is a\ttest.\nThe resulting string should preserve all whitespace tabs and carriage returns as is\n";
+ assertEquals(expected, doc.getWSPreserveElt());
}
public void testEnumElt() throws Throwable {
Modified: xmlbeans/trunk/test/src/scomp/substGroup/restriction/detailed/Final.java
URL: http://svn.apache.org/viewcvs/xmlbeans/trunk/test/src/scomp/substGroup/restriction/detailed/Final.java?view=diff&r1=159633&r2=159634
==============================================================================
--- xmlbeans/trunk/test/src/scomp/substGroup/restriction/detailed/Final.java (original)
+++ xmlbeans/trunk/test/src/scomp/substGroup/restriction/detailed/Final.java Thu Mar 31 12:11:39 2005
@@ -14,12 +14,145 @@
*/
package scomp.substGroup.restriction.detailed;
-import junit.framework.TestCase;
+import org.apache.xmlbeans.*;
+import scomp.common.BaseCase;
+
+import java.util.List;
+import java.util.Iterator;
+
/**
*/
-public class Final extends TestCase{
- public void testRun(){
- fail("Compile time test");
+public class Final extends BaseCase {
+
+ /**
+ * The follwing are test for the 'final' attribute used in a base in substitution groups
+ * They are negative tests and test for #all, restriction, extenstion and 'extenstion restriction' values
+ */
+ public void testFinalAll() {
+ String inputXsd = constructInputXsdString("#all");
+ try {
+ XmlObject xobj = XmlObject.Factory.parse(inputXsd);
+ XmlObject[] compInput = new XmlObject[]{xobj};
+ XmlBeans.compileXmlBeans(null, null, compInput, null, XmlBeans.getBuiltinTypeSystem(), null, null);
+ }
+ catch (XmlException xme) {
+ assertEquals(2, xme.getErrors().size());
+
+ Iterator itr = xme.getErrors().iterator();
+ XmlError eacherr = (XmlError) itr.next();
+ System.out.println("Err:" + eacherr.getMessage());
+ assertNotNull(eacherr.getErrorCode());
+ assertEquals("cvc-3.4.6", eacherr.getErrorCode());
+
+ eacherr = (XmlError) itr.next();
+ System.out.println("Err:" + eacherr.getMessage());
+ assertNotNull(eacherr.getErrorCode());
+ assertEquals("cvc-3.4.6", eacherr.getErrorCode());
+ }
+
+ }
+
+ public void testFinalExtRestr() {
+ String inputXsd = constructInputXsdString("extension restriction");
+ try {
+ XmlObject xobj = XmlObject.Factory.parse(inputXsd);
+ XmlObject[] compInput = new XmlObject[]{xobj};
+ XmlBeans.compileXmlBeans(null, null, compInput, null, XmlBeans.getBuiltinTypeSystem(), null, null);
+ }
+ catch (XmlException xme) {
+ assertEquals(2, xme.getErrors().size());
+
+ Iterator itr = xme.getErrors().iterator();
+ XmlError eacherr = (XmlError) itr.next();
+ System.out.println("Err:" + eacherr.getMessage());
+ assertNotNull(eacherr.getErrorCode());
+ assertEquals("cvc-3.4.6", eacherr.getErrorCode());
+
+ eacherr = (XmlError) itr.next();
+ System.out.println("Err:" + eacherr.getMessage());
+ assertNotNull(eacherr.getErrorCode());
+ assertEquals("cvc-3.4.6", eacherr.getErrorCode());
+ }
+
+ }
+
+ public void testFinalRestriction() {
+ String inputXsd = constructInputXsdString("restriction");
+ try {
+ XmlObject xobj = XmlObject.Factory.parse(inputXsd);
+ XmlObject[] compInput = new XmlObject[]{xobj};
+ XmlBeans.compileXmlBeans(null, null, compInput, null, XmlBeans.getBuiltinTypeSystem(), null, null);
+ }
+ catch (XmlException xme) {
+ assertEquals(1, xme.getErrors().size());
+
+ Iterator itr = xme.getErrors().iterator();
+ XmlError eacherr = (XmlError) itr.next();
+ System.out.println("Err:" + eacherr.getMessage());
+ assertNotNull(eacherr.getErrorCode());
+ assertEquals("cvc-3.4.6", eacherr.getErrorCode());
+ }
+ }
+
+ public void testFinalExtension() {
+ String inputXsd = constructInputXsdString("extension");
+ try {
+ XmlObject xobj = XmlObject.Factory.parse(inputXsd);
+ XmlObject[] compInput = new XmlObject[]{xobj};
+ XmlBeans.compileXmlBeans(null, null, compInput, null, XmlBeans.getBuiltinTypeSystem(), null, null);
+ }
+ catch (XmlException xme) {
+ assertEquals(1, xme.getErrors().size());
+
+ Iterator itr = xme.getErrors().iterator();
+ XmlError eacherr = (XmlError) itr.next();
+ System.out.println("Err:" + eacherr.getMessage());
+ assertNotNull(eacherr.getErrorCode());
+ assertEquals("cvc-3.4.6", eacherr.getErrorCode());
+
+ }
+ }
+
+
+ private String constructInputXsdString(String sFinalAttributeValue) {
+ return (" <xsd:schema xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">\n" +
+ "\n" +
+ " <xsd:element name=\"Product\" type=\"BaseProductType\" final=\"" + sFinalAttributeValue + "\"/>\n" +
+ "\n" +
+ " <xsd:complexType name=\"BaseProductType\">\n" +
+ " <xsd:sequence>\n" +
+ " <xsd:element name=\"number\" type=\"xsd:integer\" />\n" +
+ " <xsd:element name=\"name\" type=\"xsd:string\" minOccurs=\"0\" />\n" +
+ " <xsd:element name=\"size\" type=\"xsd:integer\" minOccurs=\"0\" />\n" +
+ " </xsd:sequence>\n" +
+ " </xsd:complexType>\n" +
+ "\n" +
+ " <xsd:element name=\"Shirt\" type=\"ShirtType\" substitutionGroup=\"Product\" />\n" +
+ "\n" +
+ " <xsd:complexType name=\"ShirtType\">\n" +
+ " <xsd:complexContent>\n" +
+ " <xsd:extension base=\"BaseProductType\">\n" +
+ " <xsd:sequence>\n" +
+ " <xsd:element name=\"color\" type=\"xsd:string\"/>\n" +
+ " </xsd:sequence>\n" +
+ " </xsd:extension>\n" +
+ " </xsd:complexContent>\n" +
+ " </xsd:complexType>\n" +
+ "\n" +
+ " <xsd:element name=\"Hat\" type=\"HatType\" substitutionGroup=\"Product\" />\n" +
+ "\n" +
+ " <xsd:complexType name=\"HatType\">\n" +
+ " <xsd:complexContent>\n" +
+ " <xsd:restriction base=\"BaseProductType\">\n" +
+ " <xsd:sequence>\n" +
+ " <xsd:element name=\"number\" type=\"xsd:integer\"/>\n" +
+ " </xsd:sequence>\n" +
+ " </xsd:restriction>\n" +
+ " </xsd:complexContent>\n" +
+ " </xsd:complexType>\n" +
+ "\n" +
+ " </xsd:schema>");
}
}
+
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@xmlbeans.apache.org
For additional commands, e-mail: commits-help@xmlbeans.apache.org