summaryrefslogtreecommitdiff
path: root/test/testcases/tests/level3/core/documentadoptnode16.xml
diff options
context:
space:
mode:
Diffstat (limited to 'test/testcases/tests/level3/core/documentadoptnode16.xml')
-rw-r--r--test/testcases/tests/level3/core/documentadoptnode16.xml88
1 files changed, 88 insertions, 0 deletions
diff --git a/test/testcases/tests/level3/core/documentadoptnode16.xml b/test/testcases/tests/level3/core/documentadoptnode16.xml
new file mode 100644
index 0000000..fd4b13e
--- /dev/null
+++ b/test/testcases/tests/level3/core/documentadoptnode16.xml
@@ -0,0 +1,88 @@
+<?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="documentadoptnode16">
+<metadata>
+<title>documentadoptnode16</title>
+<creator>IBM</creator>
+<description>
+Create a document fragment with an entity reference, adopt the node and check
+that the entity reference value comes from the adopting documents DTD.
+</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#Document3-adoptNode"/>
+</metadata>
+<var name="doc" type="Document"/>
+<var name="docFragment" type="DocumentFragment"/>
+<var name="childList" type="NodeList"/>
+<var name="parent" type="Element"/>
+<var name="child" type="Element"/>
+<var name="childsAttr" type="Attr"/>
+<var name="entRef" type="EntityReference"/>
+<var name="textNode" type="Text"/>
+<var name="adopted" type="Node"/>
+<var name="parentImp" type="Element"/>
+<var name="childImp" type="Element"/>
+<var name="attributes" type="NamedNodeMap"/>
+<var name="childAttrImp" type="Attr"/>
+<var name="nodeValue" type="DOMString"/>
+<var name="appendedChild" type="Node"/>
+<var name="attrNode" type="Attr"/>
+<var name="firstChild" type="Node"/>
+<var name="firstChildType" type="int"/>
+<var name="firstChildName" type="DOMString"/>
+<var name="firstChildValue" type="DOMString"/>
+<load var="doc" href="hc_staff" willBeModified="true"/>
+<createDocumentFragment var="docFragment" obj="doc"/>
+<createElement var="parent" obj="doc" tagName='"parent"'/>
+<createElement var="child" obj="doc" tagName='"child"'/>
+<createAttribute var="childsAttr" obj="doc" name='"state"'/>
+<createEntityReference var="entRef" obj="doc" name='"gamma"'/>
+<createTextNode var="textNode" obj="doc" data='"Test"'/>
+<appendChild obj="childsAttr" var="appendedChild" newChild="entRef"/>
+<setAttributeNode obj="child" var="attrNode" newAttr="childsAttr"/>
+<appendChild obj="child" var="appendedChild" newChild="textNode"/>
+<appendChild obj="parent" var="appendedChild" newChild="child"/>
+<appendChild obj="docFragment" var="appendedChild" newChild="parent"/>
+<adoptNode var="adopted" obj="doc" source="docFragment"/>
+<if><notNull obj="adopted"/>
+<firstChild var="parentImp" obj="adopted" interface="Node"/>
+<firstChild var="childImp" obj="parentImp" interface="Node"/>
+<attributes var="attributes" obj="childImp"/>
+<getNamedItem var="childAttrImp" obj="attributes" name='"state"'/>
+<firstChild var="firstChild" obj="childAttrImp" interface="Node"/>
+<assertNotNull actual="firstChild" id="firstChildNotNull"/>
+<nodeName var="firstChildName" obj="firstChild"/>
+<nodeValue var="firstChildValue" obj="firstChild"/>
+<nodeType var="firstChildType" obj="firstChild"/>
+<if>
+ <!-- if first child of the attribute is an
+ entity, then it should be for ent3 -->
+ <equals actual="firstChildType" expected="5"/>
+ <assertEquals actual="firstChildName" expected='"gamma"'
+ ignoreCase="false" id="firstChildEnt3Ref"/>
+ <else>
+ <!-- otherwise the value should be expanded as Texas -->
+ <assertEquals expected='"Texas"' actual="firstChildValue"
+ id="documentadoptnode16"
+ ignoreCase="false"/>
+ </else>
+</if>
+</if>
+</test>