You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by am...@apache.org on 2004/09/20 17:07:20 UTC
cvs commit: xml-xerces/c/tests/DOM/TypeInfo TypeInfo.cpp
amassari 2004/09/20 08:07:20
Modified: c/tests/DOM/TypeInfo TypeInfo.cpp
Log:
Updated DOMTestInfo to reflect some DOML3 changes
Revision Changes Path
1.11 +61 -44 xml-xerces/c/tests/DOM/TypeInfo/TypeInfo.cpp
Index: TypeInfo.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/tests/DOM/TypeInfo/TypeInfo.cpp,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- TypeInfo.cpp 8 Sep 2004 13:57:04 -0000 1.10
+++ TypeInfo.cpp 20 Sep 2004 15:07:20 -0000 1.11
@@ -34,7 +34,18 @@
#define DOMTYPEINFOTEST(info, type, uri, line) \
tmp = XMLString::equals(info->getName(), type) && XMLString::equals(info->getNamespace(), uri);\
if(!tmp) { \
- XERCES_STD_QUALIFIER cerr << "DOMTypeInfo test failed at line, " << line << "\nExpected values : typename '" << XMLString::transcode(type) << "', uri '" << XMLString::transcode(uri) << "'\nActual values : typename '" << XMLString::transcode(info->getName()) << "', uri '" << XMLString::transcode(info->getNamespace()) << "'\n" << XERCES_STD_QUALIFIER endl; \
+ XERCES_STD_QUALIFIER cerr << "DOMTypeInfo test failed at line, " << line << "\nExpected values : typename '" << XMLString::transcode((XMLCh*)type) << "', uri '" << XMLString::transcode((XMLCh*)uri); \
+ XERCES_STD_QUALIFIER cerr << "'\nActual values : typename '"; \
+ if(info->getName()) \
+ XERCES_STD_QUALIFIER cerr << XMLString::transcode(info->getName()); \
+ else \
+ XERCES_STD_QUALIFIER cerr << "(null)"; \
+ XERCES_STD_QUALIFIER cerr << "', uri '"; \
+ if(info->getNamespace()) \
+ XERCES_STD_QUALIFIER cerr << XMLString::transcode(info->getNamespace()); \
+ else \
+ XERCES_STD_QUALIFIER cerr << "(null)"; \
+ XERCES_STD_QUALIFIER cerr << "'\n" << XERCES_STD_QUALIFIER endl; \
passed = false; \
}
@@ -530,19 +541,19 @@
//element anonymousTest
DOMElement *testEle = findElement(X("anonymousTest"));
- DOMTYPEINFOTEST(testEle->getTypeInfo(), X(""), X(""), __LINE__);
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), X("C1"), X(""), __LINE__);
testAttr = testEle->getAttributeNodeNS(X(""), X("partNum"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), X(""), X(""), __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("S7"), X(""), __LINE__);
testEle = (DOMElement *)testEle->getFirstChild()->getNextSibling();
- DOMTYPEINFOTEST(testEle->getTypeInfo(), X(""), X(""), __LINE__);
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), X("S2"), X(""), __LINE__);
testEle = (DOMElement *)testEle->getNextSibling()->getNextSibling();
- DOMTYPEINFOTEST(testEle->getTypeInfo(), X(""), X(""), __LINE__);
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), X("S4"), X(""), __LINE__);
testEle = (DOMElement *)testEle->getNextSibling()->getNextSibling();
- DOMTYPEINFOTEST(testEle->getTypeInfo(), X(""), X(""), __LINE__);
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), X("S6"), X(""), __LINE__);
return passed;
}
@@ -590,16 +601,16 @@
DOMElement *back = testEle;
testAttr = testEle->getAttributeNodeNS(X("http://www.w3.org/1999/xhtml"), X("attr2"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), SchemaSymbols::fgDT_ANYSIMPLETYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), 0, 0, __LINE__);
DOMTYPEINFOTEST(testEle->getTypeInfo(), X("anyTestPartialType"), X(""), __LINE__);
testEle = (DOMElement *)testEle->getFirstChild()->getNextSibling();
- DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgATTVAL_ANYTYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), 0, 0, __LINE__);
testEle = (DOMElement *)testEle->getNextSibling()->getNextSibling();
- DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgATTVAL_ANYTYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), 0, 0, __LINE__);
testEle = (DOMElement *)testEle->getNextSibling()->getNextSibling();
DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgDT_STRING, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
@@ -621,7 +632,7 @@
testAttr = testEle->getAttributeNodeNS(X("http://www.secondSchema"), X("attr4"));
DOMTYPEINFOTEST(testAttr->getTypeInfo(), SchemaSymbols::fgDT_INTEGER, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
- DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgATTVAL_ANYTYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), X("anyTestType"), X(""), __LINE__);
testEle = (DOMElement *)testEle->getFirstChild()->getNextSibling();
DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgDT_STRING, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
@@ -630,26 +641,26 @@
DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgDT_STRING, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
testEle = (DOMElement *)testEle->getNextSibling()->getNextSibling();
- DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgATTVAL_ANYTYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), 0, 0, __LINE__);
//anyTestAttr1
testEle = (DOMElement *)back->getNextSibling()->getNextSibling();
back = testEle;
testAttr = testEle->getAttributeNodeNS(X("http://www.secondSchema"), X("attr5"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), SchemaSymbols::fgDT_ANYSIMPLETYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), 0, 0, __LINE__);
//anyTestAttr2
testEle = (DOMElement *)back->getNextSibling()->getNextSibling();
back = testEle;
testAttr = testEle->getAttributeNodeNS(X("http://www.secondSchema"), X("attr5"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), SchemaSymbols::fgDT_ANYSIMPLETYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), 0, 0, __LINE__);
//anyTestMissing
testEle = (DOMElement *)back->getNextSibling()->getNextSibling();
back = testEle;
- DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgATTVAL_ANYTYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), X("anyTestType"), X(""), __LINE__);
return passed;
}
@@ -662,46 +673,47 @@
DOMAttr *testAttr;
- DOMTYPEINFOTEST(((DOMElement *)docEle)->getTypeInfo(), SchemaSymbols::fgATTVAL_ANYTYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(((DOMElement *)docEle)->getTypeInfo(), X("rootType"), X(""), __LINE__);
//element invalidTest
DOMElement *testEle = findElement(X("invalidTest"));
testAttr = testEle->getAttributeNodeNS(X(""), X("simple"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), SchemaSymbols::fgDT_ANYSIMPLETYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("stringDerivedType"), X(""), __LINE__);
testAttr = testEle->getAttributeNodeNS(X(""), X("invalid"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), SchemaSymbols::fgDT_ANYSIMPLETYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), 0, 0, __LINE__);
testEle = (DOMElement *)testEle->getFirstChild()->getNextSibling();
- DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgDT_ANYSIMPLETYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), X("stringDerivedType"), X(""), __LINE__);
testEle = (DOMElement *)testEle->getNextSibling()->getNextSibling();
- DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgATTVAL_ANYTYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), X("baseComplex"), X(""), __LINE__);
testEle = (DOMElement *)testEle->getNextSibling()->getNextSibling();
- DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgDT_ANYSIMPLETYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ // this is a "number" of type "base" but it has a xsi:type="stringDerivedType"
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), X("stringDerivedType"), X(""), __LINE__);
testEle = (DOMElement *)testEle->getNextSibling()->getNextSibling();
- DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgATTVAL_ANYTYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), X("baseComplex"), X(""), __LINE__);
testEle = (DOMElement *)testEle->getNextSibling()->getNextSibling();
- DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgDT_ANYSIMPLETYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), X("uType"), X(""), __LINE__);
//an undeclared element does not have anon value. Test this here
testEle = (DOMElement *)testEle->getNextSibling()->getNextSibling();
- DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgATTVAL_ANYTYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), 0, 0, __LINE__);
DOMElement *testEle2 = (DOMElement *)testEle->getFirstChild()->getNextSibling();
- DOMTYPEINFOTEST(testEle2->getTypeInfo(), SchemaSymbols::fgATTVAL_ANYTYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testEle2->getTypeInfo(), 0, 0, __LINE__);
testEle = (DOMElement *)testEle->getNextSibling()->getNextSibling();
- DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgATTVAL_ANYTYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), X("attrOnlyType"), X(""), __LINE__);
testEle = (DOMElement *)testEle->getNextSibling()->getNextSibling();
- DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgATTVAL_ANYTYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), X("attrOnlyType"), X(""), __LINE__);
testEle = (DOMElement *)testEle->getNextSibling()->getNextSibling();
- DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgATTVAL_ANYTYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), X("prohibitedAttrType"), X(""), __LINE__);
return passed;
}
@@ -721,46 +733,46 @@
DOMTYPEINFOTEST(testEle->getTypeInfo(), X(""), X(""), __LINE__);
testAttr = testEle->getAttributeNodeNS(X(""), X("cdata"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("CDATA"), X(""), __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("CDATA"), X("http://www.w3.org/TR/REC-xml"), __LINE__);
testAttr = testEle->getAttributeNodeNS(X(""), X("enum"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("ENUMERATION"), X(""), __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("ENUMERATION"), X("http://www.w3.org/TR/REC-xml"), __LINE__);
testAttr = testEle->getAttributeNodeNS(X(""), X("id"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("ID"), X(""), __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("ID"), X("http://www.w3.org/TR/REC-xml"), __LINE__);
testAttr = testEle->getAttributeNodeNS(X(""), X("idRef"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("IDREF"), X(""), __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("IDREF"), X("http://www.w3.org/TR/REC-xml"), __LINE__);
testAttr = testEle->getAttributeNodeNS(X(""), X("idRefs"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("IDREFS"), X(""), __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("IDREFS"), X("http://www.w3.org/TR/REC-xml"), __LINE__);
testAttr = testEle->getAttributeNodeNS(X(""), X("nmToken"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("NMTOKEN"), X(""), __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("NMTOKEN"), X("http://www.w3.org/TR/REC-xml"), __LINE__);
testAttr = testEle->getAttributeNodeNS(X(""), X("nmTokenDefault"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("NMTOKEN"), X(""), __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("NMTOKEN"), X("http://www.w3.org/TR/REC-xml"), __LINE__);
testAttr = testEle->getAttributeNodeNS(X(""), X("nmTokenDefault2"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("NMTOKEN"), X(""), __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("NMTOKEN"), X("http://www.w3.org/TR/REC-xml"), __LINE__);
testAttr = testEle->getAttributeNodeNS(X(""), X("nmTokens"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("NMTOKENS"), X(""), __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("NMTOKENS"), X("http://www.w3.org/TR/REC-xml"), __LINE__);
testAttr = testEle->getAttributeNodeNS(X(""), X("entity"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("ENTITY"), X(""), __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("ENTITY"), X("http://www.w3.org/TR/REC-xml"), __LINE__);
testAttr = testEle->getAttributeNodeNS(X(""), X("entities"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("ENTITIES"), X(""), __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("ENTITIES"), X("http://www.w3.org/TR/REC-xml"), __LINE__);
testAttr = testEle->getAttributeNodeNS(X(""), X("notation"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("NOTATION"), X(""), __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("NOTATION"), X("http://www.w3.org/TR/REC-xml"), __LINE__);
testAttr = testEle->getAttributeNodeNS(X(""), X("noDecl"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("CDATA"), X(""), __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("CDATA"), X("http://www.w3.org/TR/REC-xml"), __LINE__);
testAttr = testEle->getAttributeNode(X("xmlns:foo"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("CDATA"), X(""), __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), X("CDATA"), X("http://www.w3.org/TR/REC-xml"), __LINE__);
return passed;
@@ -772,7 +784,7 @@
DOMAttr *testAttr;
DOMElement *testEle = doc->getDocumentElement();
- DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgATTVAL_ANYTYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), X("rootType"), X(""), __LINE__);
testAttr = testEle->getAttributeNodeNS(X(""), X("attBoth"));
DOMTYPEINFOTEST(testAttr->getTypeInfo(), SchemaSymbols::fgDT_STRING, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
@@ -781,13 +793,13 @@
DOMTYPEINFOTEST(testAttr->getTypeInfo(), SchemaSymbols::fgDT_STRING, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
testAttr = testEle->getAttributeNodeNS(X(""), X("attDTD"));
- DOMTYPEINFOTEST(testAttr->getTypeInfo(), SchemaSymbols::fgDT_ANYSIMPLETYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testAttr->getTypeInfo(), 0, 0, __LINE__);
testEle = (DOMElement *)testEle->getFirstChild()->getNextSibling();
DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgDT_STRING, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
testEle = (DOMElement *)testEle->getNextSibling()->getNextSibling();
- DOMTYPEINFOTEST(testEle->getTypeInfo(), SchemaSymbols::fgATTVAL_ANYTYPE, SchemaSymbols::fgURI_SCHEMAFORSCHEMA, __LINE__);
+ DOMTYPEINFOTEST(testEle->getTypeInfo(), 0, 0, __LINE__);
return passed;
}
@@ -814,6 +826,7 @@
//first the combined DTD/Schema scanner
ti.parser = new XercesDOMParser;
ti.parser->setValidationScheme(XercesDOMParser::Val_Auto);
+ ti.parser->setCreateSchemaInfo(true);
ti.parser->setDoNamespaces(true);
ti.parser->setDoSchema(true);
ti.parser->parse("data/TypeInfo.xml");
@@ -846,6 +859,7 @@
try {
ti.parser = new XercesDOMParser;
ti.parser->setValidationScheme(XercesDOMParser::Val_Auto);
+ ti.parser->setCreateSchemaInfo(true);
ti.parser->setDoNamespaces(true);
ti.parser->setDoSchema(true);
ti.parser->useScanner(X("SGXMLScanner"));
@@ -880,6 +894,7 @@
try {
ti.parser = new XercesDOMParser;
ti.parser->setValidationScheme(XercesDOMParser::Val_Auto);
+ ti.parser->setCreateSchemaInfo(true);
ti.parser->parse("data/TypeInfoJustDTD.xml");
ti.doc = ti.parser->getDocument();
}
@@ -903,6 +918,7 @@
try {
ti.parser = new XercesDOMParser;
ti.parser->setValidationScheme(XercesDOMParser::Val_Auto);
+ ti.parser->setCreateSchemaInfo(true);
ti.parser->useScanner(X("DGXMLScanner"));
ti.parser->parse("data/TypeInfoJustDTD.xml");
ti.doc = ti.parser->getDocument();
@@ -925,6 +941,7 @@
try {
ti.parser = new XercesDOMParser;
ti.parser->setValidationScheme(XercesDOMParser::Val_Auto);
+ ti.parser->setCreateSchemaInfo(true);
ti.parser->setDoNamespaces(true);
ti.parser->setDoSchema(true);
ti.parser->parse("data/combined.xml");
---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-cvs-help@xml.apache.org