You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by tn...@apache.org on 2002/05/21 20:51:37 UTC

cvs commit: xml-xerces/c/tests/DOM/Traversal Traversal.cpp

tng         02/05/21 11:51:37

  Modified:    c/tests/DOM/Traversal Traversal.cpp
  Log:
  Test case update: this is the original tests/IDom/ITraversal/ITraversal.cpp
  
  Revision  Changes    Path
  1.7       +282 -266  xml-xerces/c/tests/DOM/Traversal/Traversal.cpp
  
  Index: Traversal.cpp
  ===================================================================
  RCS file: /home/cvs/xml-xerces/c/tests/DOM/Traversal/Traversal.cpp,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- Traversal.cpp	7 Mar 2002 21:42:14 -0000	1.6
  +++ Traversal.cpp	21 May 2002 18:51:37 -0000	1.7
  @@ -1,7 +1,7 @@
   /*
    * The Apache Software License, Version 1.1
    *
  - * Copyright (c) 1999-2002 The Apache Software Foundation.  All rights
  + * Copyright (c) 2001 The Apache Software Foundation.  All rights
    * reserved.
    *
    * Redistribution and use in source and binary forms, with or without
  @@ -48,14 +48,14 @@
    *
    * This software consists of voluntary contributions made by many
    * individuals on behalf of the Apache Software Foundation, and was
  - * originally based on software copyright (c) 1999, International
  + * originally based on software copyright (c) 2001, International
    * Business Machines, Inc., http://www.ibm.com .  For more information
    * on the Apache Software Foundation, please see
    * <http://www.apache.org/>.
    */
   
   //
  -//  Various DOM tests.
  +//  Various IDOM tests.
   //     Contents include
   //       1.  NodeIterator tests
   //       2.  Tree Walker tests
  @@ -66,43 +66,44 @@
   
   /**
    * $Log: Traversal.cpp,v $
  - * Revision 1.6  2002/03/07 21:42:14  peiyongz
  + * Revision 1.7  2002/05/21 18:51:37  tng
  + * Test case update: this is the original tests/IDom/ITraversal/ITraversal.cpp
  + *
  + * Revision 1.8  2002/03/07 21:41:58  peiyongz
    * Call Terminate() to avoid memory tools reporting memory leak
    *
  - * Revision 1.5  2002/02/04 20:12:43  tng
  - * Test DOM Level missing functions:
  - * 1. NodeIterator::getRoot
  - * 2. TreeWalker::getRoot
  + * Revision 1.7  2002/02/04 21:56:57  tng
  + * Test DOM Level 2 function getRoot.
  + *
  + * Revision 1.6  2002/02/04 19:02:37  tng
  + * Memory leak fix in samples / test cases.
    *
  - * Revision 1.4  2002/02/01 22:43:48  peiyongz
  + * Revision 1.5  2002/02/01 22:44:51  peiyongz
    * sane_include
    *
  - * Revision 1.3  2001/11/23 16:18:54  tng
  + * Revision 1.4  2001/11/23 16:18:54  tng
    * Elimiate compiler warning: Warning: String literal converted to char* in formal argument file in call to tassert(bool, char*, int).
    *
  - * Revision 1.2  2000/03/11 03:19:57  chchou
  - * Fix bug # 19, add const keyword to API.
  - * As a result, update test case.
  + * Revision 1.3  2001/07/19 20:45:16  tng
  + * Add some test cases in the tests folder to sanityTest.pl
    *
  - * Revision 1.1  2000/02/18 23:01:01  abagchi
  - * Initial checkin
  + * Revision 1.2  2001/06/05 11:58:31  tng
  + * Delete the document at the end for clearing the memory.
    *
  - * Revision 1.2  2000/02/15 00:59:58  aruna1
  - * Previous node iterator related changes in.
  + * Revision 1.1  2001/06/04 20:11:55  tng
  + * IDOM: Complete IDNodeIterator, IDTreeWalker, IDNodeFilter.
    *
  - * Revision 1.1  2000/02/08 02:08:58  aruna1
  - * DOM NodeIterator and TreeWalker tests initial check in
    *
   
    */
   
   #include <stdio.h>
   #include <string.h>
  -#include <xercesc/dom/DOM.hpp>
  -#include <xercesc/dom/DomMemDebug.hpp>
  +#include <xercesc/idom/IDOM.hpp>
   #include <xercesc/util/PlatformUtils.hpp>
   #include <xercesc/util/XMLException.hpp>
   #include <xercesc/util/XMLString.hpp>
  +#include <xercesc/util/XMLUniDefs.hpp>
   
   
   #define TASSERT(c) tassert((c), __FILE__, __LINE__)
  @@ -114,22 +115,13 @@
   };
   
   
  -#define TESTPROLOG entryMemState = DomMemDebug();
  -
  -#define TESTEPILOG    exitMemState = DomMemDebug(); \
  -    if (entryMemState != exitMemState) { \
  -        printf(" Memory leak at line %d, file %s:  ", __LINE__, __FILE__);  \
  -        exitMemState.printDifference(entryMemState); \
  -    }
  -
  -
   #define EXCEPTION_TEST(operation, expected_exception)               \
   {                                                                   \
       try {                                                           \
       operation;                                                      \
       printf(" Error: no exception thrown at line %d\n", __LINE__);   \
   }                                                                   \
  -    catch (DOM_DOMException &e) {                                       \
  +    catch (IDOM_DOMException &e) {                                       \
       if (e.code != expected_exception)                       \
       printf(" Wrong exception code: %d at line %d\n", e.code, __LINE__); \
   }                                                                 \
  @@ -138,11 +130,11 @@
   }                                                                   \
   }
   
  -class  MyFilter : public DOM_NodeFilter {
  +class  MyFilter : public IDOM_NodeFilter {
   public:
   
  -  MyFilter(short nodeType, bool reject=false) : DOM_NodeFilter(), fNodeType(nodeType), fReject(reject) {};
  -  virtual short acceptNode(const DOM_Node &node) const;
  +  MyFilter(short nodeType, bool reject=false) : IDOM_NodeFilter(), fNodeType(nodeType), fReject(reject) {};
  +  virtual short acceptNode(const IDOM_Node* node) const;
   private:
       short fNodeType;
       bool fReject;
  @@ -162,13 +154,13 @@
           DOCUMENT_FRAGMENT_NODE = 11,
           NOTATION_NODE        = 12
   */
  -short  MyFilter::acceptNode(const DOM_Node &node) const {
  +short  MyFilter::acceptNode(const IDOM_Node* node) const {
       if (fNodeType == 0)
  -        return  DOM_NodeFilter::FILTER_ACCEPT;
  -	if (node.getNodeType() ==  fNodeType) {
  -       	return  DOM_NodeFilter::FILTER_ACCEPT;
  +        return  IDOM_NodeFilter::FILTER_ACCEPT;
  +	if (node->getNodeType() ==  fNodeType) {
  +       	return  IDOM_NodeFilter::FILTER_ACCEPT;
   	} else {
  -	    return  fReject ? DOM_NodeFilter::FILTER_REJECT : DOM_NodeFilter::FILTER_SKIP;
  +	    return  fReject ? IDOM_NodeFilter::FILTER_REJECT : IDOM_NodeFilter::FILTER_SKIP;
   	}
   }
   
  @@ -176,8 +168,6 @@
   
   int  main()
   {
  -    DomMemDebug     entryMemState, exitMemState;
  -
   	try {
   		XMLPlatformUtils::Initialize();
   	}
  @@ -189,6 +179,9 @@
           return -1;
       }
   
  +    // Create a XMLCh buffer for string manipulation
  +    XMLCh tempStr[4000];
  +
   
       //
       //  Doc - Create a small document tree
  @@ -209,50 +202,77 @@
                         - comment
            */
   
  -        DOM_Document    doc = DOM_Document::createDocument();
  -        //Creating a root element
  -        DOM_Element     root = doc.createElement("RootElement");
  -        doc.appendChild(root);
  -        //Creating the siblings of root
  -        DOM_Element     E11 = doc.createElement("FirstSibling");
  -        root.appendChild(E11);
  -        DOM_Element     E12 = doc.createElement("SecondSibling");
  -        root.appendChild(E12);
  -        DOM_Element     E13 = doc.createElement("ThirdSibling");
  -        root.appendChild(E13);
  -        //Attaching texts to few siblings
  -        DOM_Text        textNode1 = doc.createTextNode("Text1");
  -        E11.appendChild(textNode1);
  -        DOM_Text        textNode2 = doc.createTextNode("Text2");
  -        E12.appendChild(textNode2);
  -        //creating child of siblings
  -        DOM_Element     E111 = doc.createElement("FirstSiblingChild1");
  -        E11.appendChild(E111);
  -        DOM_Attr        attr01  = doc.createAttribute("Attr01");
  -        E11.setAttributeNode(attr01);
  -
  -        DOM_Element     E112 = doc.createElement("FirstSiblingChild2");
  -        E11.appendChild(E112);
  +        IDOM_DOMImplementation* impl = IDOM_DOMImplementation::getImplementation();
  +        IDOM_Document* doc = impl->createDocument();
   
  -        DOM_Element     E121 = doc.createElement("SecondSiblingChild1");
  -        E12.appendChild(E121);
  -        DOM_Attr attr02 = doc.createAttribute("Attr01");
  -        E12.setAttributeNode(attr02);
  -
  -        DOM_Element     E122 = doc.createElement("SecondSiblingChild2");
  -        E12.appendChild(E122);
  -
  -        DOM_Element     E131 = doc.createElement("ThirdSiblingChild1");
  -        E13.appendChild(E131);
  +        //Creating a root element
  +        XMLString::transcode("RootElement", tempStr, 3999);
  +        IDOM_Element*     root = doc->createElement(tempStr);
  +        doc->appendChild(root);
   
  -        DOM_Comment comment = doc.createComment("DocComment");
  -        root.appendChild(comment);
  +        //Creating the siblings of root
  +        XMLString::transcode("FirstSibling", tempStr, 3999);
  +        IDOM_Element*     E11 = doc->createElement(tempStr);
  +        root->appendChild(E11);
  +
  +        XMLString::transcode("SecondSibling", tempStr, 3999);
  +        IDOM_Element*     E12 = doc->createElement(tempStr);
  +        root->appendChild(E12);
  +
  +        XMLString::transcode("ThirdSibling", tempStr, 3999);
  +        IDOM_Element*     E13 = doc->createElement(tempStr);
  +        root->appendChild(E13);
   
  -        DOM_CDATASection  cdataSec = doc.createCDATASection("DocCDataSection");
  -        E11.appendChild(cdataSec);
  +        //Attaching texts to few siblings
  +        XMLString::transcode("Text1", tempStr, 3999);
  +        IDOM_Text*        textNode1 = doc->createTextNode(tempStr);
  +        E11->appendChild(textNode1);
  +
  +        XMLString::transcode("Text2", tempStr, 3999);
  +        IDOM_Text*        textNode2 = doc->createTextNode(tempStr);
  +        E12->appendChild(textNode2);
   
  -        DOM_ProcessingInstruction  docPI = doc.createProcessingInstruction("DocPI", "DocTarget");
  -        E13.appendChild(docPI);
  +        //creating child of siblings
  +        XMLString::transcode("FirstSiblingChild1", tempStr, 3999);
  +        IDOM_Element*     E111 = doc->createElement(tempStr);
  +        E11->appendChild(E111);
  +
  +        XMLString::transcode("Attr01", tempStr, 3999);
  +        IDOM_Attr*        attr01  = doc->createAttribute(tempStr);
  +        E11->setAttributeNode(attr01);
  +
  +        XMLString::transcode("FirstSiblingChild2", tempStr, 3999);
  +        IDOM_Element*     E112 = doc->createElement(tempStr);
  +        E11->appendChild(E112);
  +
  +        XMLString::transcode("SecondSiblingChild1", tempStr, 3999);
  +        IDOM_Element*     E121 = doc->createElement(tempStr);
  +        E12->appendChild(E121);
  +
  +        XMLString::transcode("Attr01", tempStr, 3999);
  +        IDOM_Attr* attr02 = doc->createAttribute(tempStr);
  +        E12->setAttributeNode(attr02);
  +
  +        XMLString::transcode("SecondSiblingChild2", tempStr, 3999);
  +        IDOM_Element*     E122 = doc->createElement(tempStr);
  +        E12->appendChild(E122);
  +
  +        XMLString::transcode("ThirdSiblingChild1", tempStr, 3999);
  +        IDOM_Element*     E131 = doc->createElement(tempStr);
  +        E13->appendChild(E131);
  +
  +        XMLString::transcode("DocComment", tempStr, 3999);
  +        IDOM_Comment* comment = doc->createComment(tempStr);
  +        root->appendChild(comment);
  +
  +        XMLString::transcode("DocCDataSection", tempStr, 3999);
  +        IDOM_CDATASection*  cdataSec = doc->createCDATASection(tempStr);
  +        E11->appendChild(cdataSec);
  +
  +        XMLString::transcode("DocPI", tempStr, 3999);
  +        XMLCh piStr[] = {chLatin_D, chLatin_o, chLatin_c, chLatin_P, chLatin_I, chNull};
  +        IDOM_ProcessingInstruction*  docPI = doc->createProcessingInstruction(piStr, tempStr);
  +        E13->appendChild(docPI);
   
   
           /*
  @@ -274,307 +294,303 @@
   
           ////////// NodeIterator Test Cases ////////////////
   
  -        TESTPROLOG;
  +
           {
               // all node iterating test
   
  -            DOM_Node    node = doc.getFirstChild();
  -            unsigned long       whatToShow = DOM_NodeFilter::SHOW_ALL;
  +            IDOM_Node*    node = doc->getFirstChild();
  +            unsigned long       whatToShow = IDOM_NodeFilter::SHOW_ALL;
               MyFilter* filter = new MyFilter(0);
   
  -            DOM_NodeIterator  iter = doc.createNodeIterator(root, whatToShow,  filter, true);
  -            TASSERT(iter.getWhatToShow() == 65535);
  -            TASSERT(iter.getExpandEntityReferences() == 1);
  +            IDOM_NodeIterator*  iter = doc->createNodeIterator(root, whatToShow,  filter, true);
  +            TASSERT(iter->getWhatToShow() == 65535);
  +            TASSERT(iter->getExpandEntityReferences() == 1);
   
  -            DOM_Node  nd;
  -            nd = iter.nextNode();
  +            IDOM_Node*  nd;
  +            nd = iter->nextNode();
               TASSERT (nd ==root);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT (nd ==E11);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == textNode1);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == E111);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == E112);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == cdataSec);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == E12);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == textNode2);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == E121);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == E122);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == E13);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == E131);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == docPI);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == comment);
  -            nd = iter.previousNode();
  +            nd = iter->previousNode();
               TASSERT(nd == comment);
  -            nd = iter.previousNode();
  +            nd = iter->previousNode();
               TASSERT(nd == docPI);
  -            nd = iter.previousNode();
  +            nd = iter->previousNode();
               TASSERT(nd == E131);
   
               //test getRoot
  -            TASSERT(iter.getRoot() == root);
  -            TASSERT(iter.getRoot() != doc);
  +            TASSERT(iter->getRoot() == root);
  +            TASSERT(iter->getRoot() != doc);
  +
  +            delete filter;
   
  -			delete filter;
           }
  -        TESTEPILOG;
   
  -        TESTPROLOG;
  +
  +
           {
               //element node iterating test
   
  -            DOM_Node    node = doc.getFirstChild();
  -            unsigned long       whatToShow = DOM_NodeFilter::SHOW_ELEMENT;
  -            MyFilter* filter = new MyFilter(DOM_Node::ELEMENT_NODE);
  -
  -            DOM_NodeIterator  iter = doc.createNodeIterator(root, whatToShow,  filter, true);
  -            TASSERT(iter.getWhatToShow() == 1);
  -            TASSERT(iter.getExpandEntityReferences() == 1);
  +            IDOM_Node*    node = doc->getFirstChild();
  +            unsigned long       whatToShow = IDOM_NodeFilter::SHOW_ELEMENT;
  +            MyFilter* filter = new MyFilter(IDOM_Node::ELEMENT_NODE);
  +
  +            IDOM_NodeIterator*  iter = doc->createNodeIterator(root, whatToShow,  filter, true);
  +            TASSERT(iter->getWhatToShow() == 1);
  +            TASSERT(iter->getExpandEntityReferences() == 1);
   
  -            DOM_Node  nd;
  -            nd = iter.nextNode();
  +            IDOM_Node*  nd;
  +            nd = iter->nextNode();
               TASSERT (nd ==root);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT (nd ==E11);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == E111);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == E112);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == E12);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == E121);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == E122);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == E13);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == E131);
  -            nd = iter.previousNode();
  +            nd = iter->previousNode();
               TASSERT(nd == E131);
  -            nd = iter.previousNode();
  +            nd = iter->previousNode();
               TASSERT(nd == E13);
  -            nd = iter.previousNode();
  +            nd = iter->previousNode();
               TASSERT(nd == E122);
   
  -			delete filter;
  +            delete filter;
           }
  -        TESTEPILOG;
   
   
   
  -        TESTPROLOG;
  +
  +
           {
               // Text node iterating test
   
  -            DOM_Node    node = doc.getFirstChild();
  -            unsigned long       whatToShow = DOM_NodeFilter::SHOW_TEXT;
  -            MyFilter* filter = new MyFilter(DOM_Node::TEXT_NODE);
  +            IDOM_Node*    node = doc->getFirstChild();
  +            unsigned long       whatToShow = IDOM_NodeFilter::SHOW_TEXT;
  +            MyFilter* filter = new MyFilter(IDOM_Node::TEXT_NODE);
   
  -            DOM_NodeIterator  iter = doc.createNodeIterator(root, whatToShow,  filter, true);
  +            IDOM_NodeIterator*  iter = doc->createNodeIterator(root, whatToShow,  filter, true);
   
  -            TASSERT(iter.getWhatToShow() == 4);
  -            TASSERT(iter.getExpandEntityReferences() == 1);
  +            TASSERT(iter->getWhatToShow() == 4);
  +            TASSERT(iter->getExpandEntityReferences() == 1);
   
  -            DOM_Node  nd;
  -            nd = iter.nextNode();
  +            IDOM_Node*  nd;
  +            nd = iter->nextNode();
               TASSERT (nd ==textNode1);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT (nd ==textNode2);
  -            nd = iter.previousNode();
  +            nd = iter->previousNode();
               TASSERT(nd == textNode2);
   
  -			delete filter;
  +            delete filter;
           }
  -        TESTEPILOG;
  -        TESTPROLOG;
  +
  +
           {
               //CDataSection node itearating test
   
  -            DOM_Node    node = doc.getFirstChild();
  -            unsigned long       whatToShow = DOM_NodeFilter::SHOW_CDATA_SECTION;
  -            MyFilter* filter = new MyFilter(DOM_Node::CDATA_SECTION_NODE);
  -
  -            DOM_NodeIterator  iter = doc.createNodeIterator(root, whatToShow,  filter, true);
  -            TASSERT(iter.getWhatToShow() == 8);
  -            TASSERT(iter.getExpandEntityReferences() == 1);
  +            IDOM_Node*    node = doc->getFirstChild();
  +            unsigned long       whatToShow = IDOM_NodeFilter::SHOW_CDATA_SECTION;
  +            MyFilter* filter = new MyFilter(IDOM_Node::CDATA_SECTION_NODE);
  +
  +            IDOM_NodeIterator*  iter = doc->createNodeIterator(root, whatToShow,  filter, true);
  +            TASSERT(iter->getWhatToShow() == 8);
  +            TASSERT(iter->getExpandEntityReferences() == 1);
   
  -            DOM_Node  nd;
  -            nd = iter.nextNode();
  +            IDOM_Node*  nd;
  +            nd = iter->nextNode();
               TASSERT(nd == cdataSec);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == 0);
   
  -			delete filter;
  +            delete filter;
           }
  -        TESTEPILOG;
  -        TESTPROLOG;
  +
  +
           {
               // PI nodes iterating test
   
  -            DOM_Node    node = doc.getFirstChild();
  -            unsigned long       whatToShow = DOM_NodeFilter::SHOW_PROCESSING_INSTRUCTION;
  -            MyFilter* filter = new MyFilter(DOM_Node::PROCESSING_INSTRUCTION_NODE);
  -
  -            DOM_NodeIterator  iter = doc.createNodeIterator(root, whatToShow,  filter, true);
  -            TASSERT(iter.getWhatToShow() == 64);
  -            TASSERT(iter.getExpandEntityReferences() == 1);
  +            IDOM_Node*    node = doc->getFirstChild();
  +            unsigned long       whatToShow = IDOM_NodeFilter::SHOW_PROCESSING_INSTRUCTION;
  +            MyFilter* filter = new MyFilter(IDOM_Node::PROCESSING_INSTRUCTION_NODE);
  +
  +            IDOM_NodeIterator*  iter = doc->createNodeIterator(root, whatToShow,  filter, true);
  +            TASSERT(iter->getWhatToShow() == 64);
  +            TASSERT(iter->getExpandEntityReferences() == 1);
   
  -            DOM_Node  nd;
  -            nd = iter.nextNode();
  +            IDOM_Node*  nd;
  +            nd = iter->nextNode();
               TASSERT(nd == docPI);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == 0);
   
  -			delete filter;
  -
  +            delete filter;
           }
  -        TESTEPILOG;
   
  -        TESTPROLOG;
  +
  +
           {
  -            DOM_Node    node = doc.getFirstChild();
  -            unsigned long       whatToShow = DOM_NodeFilter::SHOW_COMMENT;
  -            MyFilter* filter = new MyFilter(DOM_Node::COMMENT_NODE);
  +            IDOM_Node*    node = doc->getFirstChild();
  +            unsigned long       whatToShow = IDOM_NodeFilter::SHOW_COMMENT;
  +            MyFilter* filter = new MyFilter(IDOM_Node::COMMENT_NODE);
   
  -            DOM_NodeIterator  iter = doc.createNodeIterator(root, whatToShow,  filter, true);
  -            TASSERT(iter.getWhatToShow() == 128);
  -            TASSERT(iter.getExpandEntityReferences() == 1);
  +            IDOM_NodeIterator*  iter = doc->createNodeIterator(root, whatToShow,  filter, true);
  +            TASSERT(iter->getWhatToShow() == 128);
  +            TASSERT(iter->getExpandEntityReferences() == 1);
   
  -            DOM_Node  nd;
  -            nd = iter.nextNode();
  +            IDOM_Node*  nd;
  +            nd = iter->nextNode();
               TASSERT(nd == comment);
  -            nd = iter.nextNode();
  +            nd = iter->nextNode();
               TASSERT(nd == 0);
   
  -			delete filter;
  +            delete filter;
           }
  -        TESTEPILOG;
  +
   
   
   
           ////////// TreeWalker Test Cases ////////////////
   
   
  -        TESTPROLOG;
  +
           {
  -            unsigned long whatToShow = DOM_NodeFilter::SHOW_ALL;
  -            DOM_TreeWalker tw = doc.createTreeWalker(doc, whatToShow, 0, true);
  +            unsigned long whatToShow = IDOM_NodeFilter::SHOW_ALL;
  +            IDOM_TreeWalker* tw = doc->createTreeWalker(doc, whatToShow, 0, true);
  +
  +            TASSERT(tw->getCurrentNode() == doc);
  +            TASSERT(tw->firstChild() == root);
  +            TASSERT(tw->nextSibling() == 0);
  +            TASSERT(tw->lastChild() == comment);
  +            TASSERT(tw->firstChild() == 0);
  +            TASSERT(tw->lastChild() == 0);
  +            TASSERT(tw->nextSibling() == 0);
  +            TASSERT(tw->nextNode() == 0);
  +            TASSERT(tw->previousSibling() == E13);
  +            TASSERT(tw->previousNode() == E122);
  +            TASSERT(tw->parentNode() == E12);
  +            TASSERT(tw->firstChild() == textNode2);
  +            TASSERT(tw->previousSibling() == 0);
  +            TASSERT(tw->nextSibling() == E121);
  +            TASSERT(tw->nextNode() == E122);
  +            TASSERT(tw->parentNode() == E12);
  +            TASSERT(tw->previousSibling() == E11);
  +            TASSERT(tw->previousNode() == root);
  +            TASSERT(tw->previousNode() == doc);
  +            TASSERT(tw->previousNode() == 0);
  +            TASSERT(tw->parentNode() == 0);
  +            TASSERT(tw->getCurrentNode() == doc);
  +        }
   
  -            TASSERT(tw.getCurrentNode() == doc);
  -            TASSERT(tw.firstChild() == root);
  -            TASSERT(tw.nextSibling() == 0);
  -            TASSERT(tw.lastChild() == comment);
  -            TASSERT(tw.firstChild() == 0);
  -            TASSERT(tw.lastChild() == 0);
  -            TASSERT(tw.nextSibling() == 0);
  -            TASSERT(tw.nextNode() == 0);
  -            TASSERT(tw.previousSibling() == E13);
  -            TASSERT(tw.previousNode() == E122);
  -            TASSERT(tw.parentNode() == E12);
  -            TASSERT(tw.firstChild() == textNode2);
  -            TASSERT(tw.previousSibling() == 0);
  -            TASSERT(tw.nextSibling() == E121);
  -            TASSERT(tw.nextNode() == E122);
  -            TASSERT(tw.parentNode() == E12);
  -            TASSERT(tw.previousSibling() == E11);
  -            TASSERT(tw.previousNode() == root);
  -            TASSERT(tw.previousNode() == doc);
  -            TASSERT(tw.previousNode() == 0);
  -            TASSERT(tw.parentNode() == 0);
  -            TASSERT(tw.getCurrentNode() == doc);
  -        }
  -        TESTEPILOG;
  -
  -        TESTPROLOG;
  -        {
  -            MyFilter mf(DOM_Node::ELEMENT_NODE);
  -            unsigned long whatToShow = DOM_NodeFilter::SHOW_ALL;
  -            DOM_TreeWalker tw = doc.createTreeWalker(root, whatToShow, &mf, true);
  -
  -            TASSERT(tw.getCurrentNode() == root);
  -            TASSERT(tw.parentNode() == 0);  //should not change currentNode
  -            TASSERT(tw.getCurrentNode() == root);
  -            TASSERT(tw.nextNode() == E11);
  -            TASSERT(tw.nextNode() == E111);
  -            tw.setCurrentNode(E12);
  +
  +
  +        {
  +            MyFilter mf(IDOM_Node::ELEMENT_NODE);
  +            unsigned long whatToShow = IDOM_NodeFilter::SHOW_ALL;
  +            IDOM_TreeWalker* tw = doc->createTreeWalker(root, whatToShow, &mf, true);
  +
  +            TASSERT(tw->getCurrentNode() == root);
  +            TASSERT(tw->parentNode() == 0);  //should not change currentNode
  +            TASSERT(tw->getCurrentNode() == root);
  +            TASSERT(tw->nextNode() == E11);
  +            TASSERT(tw->nextNode() == E111);
  +            tw->setCurrentNode(E12);
               //when first is not visible, should it go to its sibling?
  -            TASSERT(tw.firstChild() == E121);   //first visible child
  -            TASSERT(tw.previousSibling() == 0);
  +            TASSERT(tw->firstChild() == E121);   //first visible child
  +            TASSERT(tw->previousSibling() == 0);
           }
  -        TESTEPILOG;
   
  -        TESTPROLOG;
  +
  +
           {
  -            MyFilter mf(DOM_Node::ELEMENT_NODE, true);
  -            unsigned long whatToShow = DOM_NodeFilter::SHOW_ELEMENT;
  -            DOM_TreeWalker tw = doc.createTreeWalker(root, whatToShow, &mf, true);
  +            MyFilter mf(IDOM_Node::ELEMENT_NODE, true);
  +            unsigned long whatToShow = IDOM_NodeFilter::SHOW_ELEMENT;
  +            IDOM_TreeWalker* tw = doc->createTreeWalker(root, whatToShow, &mf, true);
   
  -            tw.setCurrentNode(E12);
  -            TASSERT(tw.firstChild() == E121);   //still first visible child
  +            tw->setCurrentNode(E12);
  +            TASSERT(tw->firstChild() == E121);   //still first visible child
           }
  -        TESTEPILOG;
   
  -        TESTPROLOG;
  +
  +
           {
  -            MyFilter mf(DOM_Node::TEXT_NODE);
  -            unsigned long whatToShow = DOM_NodeFilter::SHOW_TEXT;
  -            DOM_TreeWalker tw = doc.createTreeWalker(root, whatToShow, &mf, true);
  +            MyFilter mf(IDOM_Node::TEXT_NODE);
  +            unsigned long whatToShow = IDOM_NodeFilter::SHOW_TEXT;
  +            IDOM_TreeWalker* tw = doc->createTreeWalker(root, whatToShow, &mf, true);
   
               //when first is not visible, should it go to its descendent?
  -            TASSERT(tw.firstChild() == textNode1);   //E11 skipped
  -            TASSERT(tw.firstChild() == 0);
  -            TASSERT(tw.nextNode() == textNode2);
  -            TASSERT(tw.nextSibling() == 0);
  -            TASSERT(tw.parentNode() == 0);  //no visible ancestor
  -            TASSERT(tw.getCurrentNode() == textNode2);
  -            tw.setCurrentNode(root);
  +            TASSERT(tw->firstChild() == textNode1);   //E11 skipped
  +            TASSERT(tw->firstChild() == 0);
  +            TASSERT(tw->nextNode() == textNode2);
  +            TASSERT(tw->nextSibling() == 0);
  +            TASSERT(tw->parentNode() == 0);  //no visible ancestor
  +            TASSERT(tw->getCurrentNode() == textNode2);
  +            tw->setCurrentNode(root);
               //when last is not visible, should it go to its sibling & descendent?
  -            TASSERT(tw.lastChild() == textNode2);   //last visible child
  -            tw.setCurrentNode(E12);
  +            TASSERT(tw->lastChild() == textNode2);   //last visible child
  +            tw->setCurrentNode(E12);
               //when next sibling is not visible, should it go to its descendent?
  -            TASSERT(tw.nextSibling() == 0);
  +            TASSERT(tw->nextSibling() == 0);
           }
  -        TESTEPILOG;
   
  -        TESTPROLOG;
  +
  +
           {
  -            MyFilter mf(DOM_Node::TEXT_NODE, true);
  -            unsigned long whatToShow = DOM_NodeFilter::SHOW_TEXT;
  -            DOM_TreeWalker tw = doc.createTreeWalker(root, whatToShow, &mf, true);
  +            MyFilter mf(IDOM_Node::TEXT_NODE, true);
  +            unsigned long whatToShow = IDOM_NodeFilter::SHOW_TEXT;
  +            IDOM_TreeWalker* tw = doc->createTreeWalker(root, whatToShow, &mf, true);
   
  -            TASSERT(tw.firstChild() == 0);   //E11 rejected and no children is TEXT
  -            TASSERT(tw.getCurrentNode() == root);
  -            TASSERT(tw.nextNode() == 0);    //E11 rejected so can't get to textNode1
  +            TASSERT(tw->firstChild() == 0);   //E11 rejected and no children is TEXT
  +            TASSERT(tw->getCurrentNode() == root);
  +            TASSERT(tw->nextNode() == 0);    //E11 rejected so can't get to textNode1
   
               //test getRoot
  -            TASSERT(tw.getRoot() == root);
  -            TASSERT(tw.getRoot() != doc);
  +            TASSERT(tw->getRoot() == root);
  +            TASSERT(tw->getRoot() != doc);
           }
  -        TESTEPILOG;
   
  -    };
  +        delete doc;
   
  -
  -    //
  -    //  Print Final allocation stats for full test
  -    //
  -    DomMemDebug().print();
  +    };
   
       // And call the termination method
       XMLPlatformUtils::Terminate();
   
  +    printf("Test Run Successfully\n");
       return 0;
  -    };
  +};
   
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-cvs-help@xml.apache.org