summaryrefslogtreecommitdiff
path: root/test/testcases/tests/level3/xpath/XPathResult_iterateNext_INVALID_STATE_ERR.xml
diff options
context:
space:
mode:
Diffstat (limited to 'test/testcases/tests/level3/xpath/XPathResult_iterateNext_INVALID_STATE_ERR.xml')
-rw-r--r--test/testcases/tests/level3/xpath/XPathResult_iterateNext_INVALID_STATE_ERR.xml113
1 files changed, 113 insertions, 0 deletions
diff --git a/test/testcases/tests/level3/xpath/XPathResult_iterateNext_INVALID_STATE_ERR.xml b/test/testcases/tests/level3/xpath/XPathResult_iterateNext_INVALID_STATE_ERR.xml
new file mode 100644
index 0000000..cfec132
--- /dev/null
+++ b/test/testcases/tests/level3/xpath/XPathResult_iterateNext_INVALID_STATE_ERR.xml
@@ -0,0 +1,113 @@
+<?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="XPathResult_iterateNext_INVALID_STATE_ERR">
+ <metadata>
+ <title>XPathResult_iterateNext_INVALID_STATE_ERR</title>
+ <creator>Bob Clary</creator>
+ <description>
+ Create a ANY_TYPE XPathResult matching /staff/employee,
+ modify the Document, then check that XPathResults.iterateNext
+ throws DOMException INVALID_STATE_ERR.
+ </description>
+ <date qualifier="created">2003-12-02</date>
+ <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="&quot;/staff/employee&quot;"/>
+ <var name="xpathType" type="short" value="ANY_TYPE" />
+
+ <!-- Test Variables -->
+
+ <var name="outNode" type="Node"/>
+ <var name="nodeType" type="int"/>
+ <var name="parent" type="Node"/>
+ <var name="owner" type="Node"/>
+ <var name="ownerType" type="int"/>
+ <var name="employee" type="Node"/>
+ <var name="docElement" type="Node"/>
+
+ <!-- Load Test Document -->
+
+ <load var="doc" href="staff" willBeModified="true"/>
+
+ <!-- Get XPathResult -->
+
+ <createXPathEvaluator var="evaluator" document="doc"/>
+
+ <createNSResolver obj="evaluator" var="resolver" 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 -->
+
+ <documentElement obj="doc"
+ var="docElement"/>
+
+ <createElement obj="doc"
+ var="employee"
+ tagName="&quot;employee&quot;"/>
+
+ <appendChild obj="docElement"
+ newChild="employee"
+ var="employee"/>
+
+ <assertDOMException id="throw_INVALID_STATE_ERR">
+ <INVALID_STATE_ERR>
+ <iterateNext var="outNode" obj="outresult"/>
+ </INVALID_STATE_ERR>
+ </assertDOMException>
+
+</test>