diff options
Diffstat (limited to 'test/testcases/tests/level3/xpath/Text_Nodes.xml')
-rw-r--r-- | test/testcases/tests/level3/xpath/Text_Nodes.xml | 150 |
1 files changed, 150 insertions, 0 deletions
diff --git a/test/testcases/tests/level3/xpath/Text_Nodes.xml b/test/testcases/tests/level3/xpath/Text_Nodes.xml new file mode 100644 index 0000000..4897c12 --- /dev/null +++ b/test/testcases/tests/level3/xpath/Text_Nodes.xml @@ -0,0 +1,150 @@ +<?xml version="1.0" encoding="iso-8859-1"?> +<?xml-stylesheet href="test-to-html.xsl" type="text/xml"?> +<!-- + Copyright (c) 2003 World Wide Web Consortium, + + (Massachusetts Institute of Technology, European Research Consortium for + Informatics and Mathematics, Keio University). All Rights Reserved. This + work is distributed under the W3C(r) Software License [1] in the hope that + it will be useful, but WITHOUT ANY WARRANTY; without even the implied + warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + + [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 +--> + +<!DOCTYPE test SYSTEM "dom3.dtd" [ + <!ENTITY % entities SYSTEM "dom3xpathents.ent"> + %entities; +]> +<test xmlns="&level3;" name="Text_Nodes"> + <metadata> + <title>Text_Nodes</title> + <creator>Bob Clary</creator> + <description> + 1.2.4 Text Nodes - + Create ANY_TYPE XPathResult matching //text(), + check that each matching Node is a Text Node, and + that no pair of nodes in the result are siblings. + </description> + <date qualifier="created">2003-12-02</date> + <subject resource="&spec;#Mapping"/> + <subject resource="&spec;#XPathEvaluator"/> + <subject resource="&spec;#XPathEvaluator-createNSResolver"/> + <subject resource="&spec;#XPathEvaluator-evaluate"/> + <subject resource="&spec;#XPathNSResolver"/> + <subject resource="&spec;#XPathResult"/> + <subject resource="&spec;#XPathResult-iterateNext"/> + </metadata> + + <!-- Standard Variables --> + + <var name="ANY_TYPE" type="short" value="0"/> + <var name="NUMBER_TYPE" type="short" value="1"/> + <var name="STRING_TYPE" type="short" value="2"/> + <var name="BOOLEAN_TYPE" type="short" value="3"/> + <var name="UNORDERED_NODE_ITERATOR_TYPE" type="short" value="4"/> + <var name="ORDERED_NODE_ITERATOR_TYPE" type="short" value="5"/> + <var name="UNORDERED_NODE_SNAPSHOT_TYPE" type="short" value="6"/> + <var name="ORDERED_NODE_SNAPSHOT_TYPE" type="short" value="7"/> + <var name="ANY_UNORDERED_NODE_TYPE" type="short" value="8"/> + <var name="FIRST_ORDERED_NODE_TYPE" type="short" value="9"/> + + <var name="doc" type="Document" /> + <var name="resolver" type="XPathNSResolver" /> + <var name="evaluator" type="XPathEvaluator" /> + <var name="contextNode" type="Node" /> + <var name="inresult" type="XPathResult" isNull="true"/> + <var name="outresult" type="XPathResult" isNull="true"/> + + <!-- Inputs --> + + <var name="expression" type="DOMString" value=""//text()"" /> + <var name="xpathType" type="short" value="ANY_TYPE" /> + + <!-- Test Variables --> + + <var name="currNode" type="Node"/> + <var name="nextNode" type="Node"/> + <var name="currNodeNextSibling" type="Node"/> + <var name="nextNodePrevSibling" type="Node"/> + <var name="nodeType" type="int"/> + <var name="isTextNode" type="DOMString" /> + + <!-- Load Test Document --> + + <load var="doc" href="staff" willBeModified="true"/> + + <!-- Get XPathResult --> + + <createXPathEvaluator var="evaluator" document="doc" /> + <createNSResolver var="resolver" obj="evaluator" nodeResolver="doc" /> + + <assign var="contextNode" value="doc"/> + + <evaluate obj="evaluator" + var="outresult" + expression="expression" + contextNode="contextNode" + resolver="resolver" + type="xpathType" + result="inresult" + interface="XPathEvaluator" /> + + <!-- Test Body --> + + <iterateNext var="currNode" obj="outresult" /> + + <while> <notNull obj="currNode"/> + + <nodeType var="nodeType" obj="currNode" /> + + <assign var="isTextNode" value=""true""/> + <if> + <and> + <notEquals actual="nodeType" expected="3"/> + <notEquals actual="nodeType" expected="4"/> + </and> + + <assign var="isTextNode" value=""false""/> + </if> + <assertEquals id="S1.2.4-Text-Nodes-nodeType" + actual="isTextNode" + expected=""true"" + ignoreCase="true"/> + + <iterateNext var="nextNode" obj="outresult"/> + + <if> + <notNull obj="nextNode"/> + + <nextSibling var="currNodeNextSibling" + obj="currNode" interface="Node"/> + <if> + <same actual="currNodeNextSibling" expected="nextNode"/> + <comment>dummy statement</comment> + <else> + <assertTrue id="S1.2.4-Text-Nodes-Adjacent-Next" + actual="false" + /> + </else> + </if> + + <previousSibling var="nextNodePrevSibling" + obj="nextNode" interface="Node"/> + <if> + <same actual="currNode" expected="nextNodePrevSibling"/> + <comment>dummy statement</comment> + <else> + <assertTrue id="S1.2.4-Text-Nodes-Adjacent-Prev" + actual="false" + /> + </else> + </if> + + </if> + + <assign var="currNode" value="nextNode"/> + + </while> + +</test> |