ifstream fs(path.c_str());\r
DOMDocument* doc=XMLToolingConfig::getConfig().getParser().parse(fs);\r
TS_ASSERT(doc!=NULL);\r
+ XercesJanitor<DOMDocument> janitor(doc);\r
\r
const XMLObjectBuilder* b = XMLObjectBuilder::getBuilder(doc->getDocumentElement());\r
TS_ASSERT(b!=NULL);\r
\r
auto_ptr<ElementProxy> wcObject(\r
- dynamic_cast<ElementProxy*>(b->buildFromDocument(doc))\r
+ dynamic_cast<ElementProxy*>(b->buildFromDocument(doc, false))\r
);\r
TS_ASSERT(wcObject.get()!=NULL);\r
\r
ListOf(XMLObject)::const_iterator it=wc2->getXMLObjects().begin();\r
++it; ++it;\r
TSM_ASSERT_EQUALS("Element QName unexpected", it->getElementQName(),q);\r
+\r
+ DOMElement* rebuilt = wcObject->marshall(XMLToolingConfig::getConfig().getParser().newDocument());\r
+ wcObject->setDocument(rebuilt->getOwnerDocument());\r
+ TS_ASSERT(rebuilt->isEqualNode(doc->getDocumentElement()));\r
}\r
\r
};\r