summaryrefslogtreecommitdiff
path: root/test/testcases/tests/level3/core/noderemovechild31.xml
diff options
context:
space:
mode:
Diffstat (limited to 'test/testcases/tests/level3/core/noderemovechild31.xml')
-rw-r--r--test/testcases/tests/level3/core/noderemovechild31.xml84
1 files changed, 84 insertions, 0 deletions
diff --git a/test/testcases/tests/level3/core/noderemovechild31.xml b/test/testcases/tests/level3/core/noderemovechild31.xml
new file mode 100644
index 0000000..99e533d
--- /dev/null
+++ b/test/testcases/tests/level3/core/noderemovechild31.xml
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="test-to-html.xsl" type="text/xml"?>
+
+<!--
+
+Copyright (c) 2001-2004 World Wide Web Consortium,
+(Massachusetts Institute of Technology, Institut National de
+Recherche en Informatique et en Automatique, Keio University). All
+Rights Reserved. This program is distributed under the W3C's Software
+Intellectual Property License. This program is distributed 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.
+
+See W3C License http://www.w3.org/Consortium/Legal/ for more details.
+
+-->
+
+<!DOCTYPE test SYSTEM "dom3.dtd">
+<test xmlns="http://www.w3.org/2001/DOM-Test-Suite/Level-3" name="noderemovechild31">
+<metadata>
+<title>noderemovechild31</title>
+<creator>IBM</creator>
+<description>
+ Using removeChild on a default Attribute node attempt to remove its EntityReference child node and
+ and verify the name of the returned node that was removed. Now attempt the reverse
+ and verify if a NO_MODIFICATION_ALLOWED_ERR or NOT_FOUND_ERR is thrown.
+ Then remove an child of the entity reference and expect a NO_MODIFICATION_ALLOWED_ERR.
+</description>
+<contributor>Neil Delima</contributor>
+<date qualifier="created">2002-06-10</date>
+<subject resource="http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-1734834066"/>
+</metadata>
+<implementationAttribute name="expandEntityReferences" value="false"/>
+<var name="doc" type="Document"/>
+<var name="parentList" type="NodeList"/>
+<var name="attrsMap" type="NamedNodeMap"/>
+<var name="parent" type="Attr"/>
+<var name="child" type="EntityReference"/>
+<var name="entRef" type="EntityReference"/>
+<var name="elem" type="Element"/>
+<var name="removed" type="EntityReference"/>
+<var name="removedNode" type="Node"/>
+<var name="removedName" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="entRefChild" type="Node"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<getElementsByTagName var="parentList" obj="doc" tagname='"acronym"' interface="Document"/>
+<item var="elem" obj="parentList" index="3" interface="NodeList"/>
+<attributes var="attrsMap" obj="elem"/>
+<getNamedItem var="parent" obj="attrsMap" name='"class"'/>
+<createEntityReference var="entRef" obj="doc" name='"delta"'/>
+<appendChild obj="parent" var="appendedChild" newChild="entRef"/>
+<lastChild var="child" obj="parent" interface="Node"/>
+<removeChild var="removed" obj="parent" oldChild="child" />
+<nodeName obj="removed" var="removedName"/>
+<assertEquals actual="removedName" expected='"delta"' id="noderemovechild31" ignoreCase="false"/>
+<!--
+Remove a non-child from an entity reference
+Should throw either a NO_MODIFICATION_ALLOWED_ERR or a NOT_FOUND_ERR
+-->
+<try>
+ <removeChild obj="child" var="removedNode" oldChild="parent" />
+ <fail id="throw_DOMException"/>
+ <catch>
+ <DOMException code="NO_MODIFICATION_ALLOWED_ERR"/>
+ <DOMException code="NOT_FOUND_ERR"/>
+ </catch>
+</try>
+<!--
+Remove a child of the entity reference
+ Expect a NO_MODIFICATION_ALLOWED_ERR exception
+-->
+<firstChild var="entRefChild" obj="child" interface="Node"/>
+<if>
+ <!-- entity may not be resolved if validating is false -->
+ <notNull obj="entRefChild"/>
+ <assertDOMException id="throw_NO_MODIFICATION_ALLOWED_ERR">
+ <NO_MODIFICATION_ALLOWED_ERR>
+ <removeChild obj="child" var="removedNode" oldChild="entRefChild"/>
+ </NO_MODIFICATION_ALLOWED_ERR>
+ </assertDOMException>
+</if>
+
+</test>