| |
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd"> |
| |
2 <html> |
| |
3 <head> |
| |
4 <META http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| |
5 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| |
6 <title>http://www.w3.org/2001/DOM-Test-Suite/level1/core/nodegetownerdocument</title> |
| |
7 <link href="activity-home.css" rel="stylesheet" type="text/css"> |
| |
8 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"> |
| |
9 <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> |
| |
10 <script type="text/javascript" src="DOMTestCase.js"></script> |
| |
11 <script type="text/javascript" src="exclusions.js"></script> |
| |
12 <script type="text/javascript"> |
| |
13 // expose test function names |
| |
14 function exposeTestFunctionNames() |
| |
15 { |
| |
16 return ['nodegetownerdocument']; |
| |
17 } |
| |
18 |
| |
19 var docsLoaded = -1000000; |
| |
20 var builder = null; |
| |
21 |
| |
22 // |
| |
23 // This function is called by the testing framework before |
| |
24 // running the test suite. |
| |
25 // |
| |
26 // If there are no configuration exceptions, asynchronous |
| |
27 // document loading is started. Otherwise, the status |
| |
28 // is set to complete and the exception is immediately |
| |
29 // raised when entering the body of the test. |
| |
30 // |
| |
31 function setUpPage() { |
| |
32 setUpPageStatus = 'running'; |
| |
33 try { |
| |
34 // |
| |
35 // creates test document builder, may throw exception |
| |
36 // |
| |
37 builder = createConfiguredBuilder(); |
| |
38 |
| |
39 docsLoaded = 0; |
| |
40 |
| |
41 var docRef = null; |
| |
42 if (typeof(this.doc) != 'undefined') { |
| |
43 docRef = this.doc; |
| |
44 } |
| |
45 docsLoaded += preload(docRef, "doc", "staff"); |
| |
46 |
| |
47 if (docsLoaded == 1) { |
| |
48 setUpPage = 'complete'; |
| |
49 } |
| |
50 } catch(ex) { |
| |
51 catchInitializationError(builder, ex); |
| |
52 setUpPage = 'complete'; |
| |
53 } |
| |
54 } |
| |
55 |
| |
56 // |
| |
57 // This method is called on the completion of |
| |
58 // each asychronous load started in setUpTests. |
| |
59 // |
| |
60 // When every synchronous loaded document has completed, |
| |
61 // the page status is changed which allows the |
| |
62 // body of the test to be executed. |
| |
63 function loadComplete() { |
| |
64 if (++docsLoaded == 1) { |
| |
65 setUpPageStatus = 'complete'; |
| |
66 runJSUnitTests(); |
| |
67 markTodos(); |
| |
68 SimpleTest.finish(); |
| |
69 } |
| |
70 } |
| |
71 |
| |
72 var docName = 'nodegetownerdocument'; |
| |
73 |
| |
74 |
| |
75 |
| |
76 window.doc = window; |
| |
77 SimpleTest.waitForExplicitFinish(); |
| |
78 addLoadEvent(setUpPage); |
| |
79 |
| |
80 |
| |
81 /** |
| |
82 * |
| |
83 The "getOwnerDocument()" method returns the Document |
| |
84 object associated with this node. |
| |
85 |
| |
86 Retrieve the second employee and examine Document |
| |
87 returned by the "getOwnerDocument()" method. Invoke |
| |
88 the "getDocumentElement()" on the Document which will |
| |
89 return an Element that is equal to "staff". |
| |
90 |
| |
91 * @author NIST |
| |
92 * @author Mary Brady |
| |
93 * @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#node-ownerDoc |
| |
94 * @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=251 |
| |
95 */ |
| |
96 function nodegetownerdocument() { |
| |
97 var success; |
| |
98 if(checkInitialization(builder, "nodegetownerdocument") != null) return; |
| |
99 var doc; |
| |
100 var elementList; |
| |
101 var docNode; |
| |
102 var ownerDocument; |
| |
103 var docElement; |
| |
104 var elementName; |
| |
105 |
| |
106 var docRef = null; |
| |
107 if (typeof(this.doc) != 'undefined') { |
| |
108 docRef = this.doc; |
| |
109 } |
| |
110 doc = load(docRef, "doc", "staff"); |
| |
111 elementList = doc.getElementsByTagName("employee"); |
| |
112 docNode = elementList.item(1); |
| |
113 ownerDocument = docNode.ownerDocument; |
| |
114 |
| |
115 docElement = ownerDocument.documentElement; |
| |
116 |
| |
117 elementName = docElement.nodeName; |
| |
118 |
| |
119 |
| |
120 if( |
| |
121 |
| |
122 (builder.contentType == "image/svg+xml") |
| |
123 |
| |
124 ) { |
| |
125 assertEquals("svgTagName","svg",elementName); |
| |
126 |
| |
127 } |
| |
128 |
| |
129 else { |
| |
130 assertEquals("nodeGetOwnerDocumentAssert1","staff",elementName); |
| |
131 |
| |
132 } |
| |
133 |
| |
134 } |
| |
135 |
| |
136 </script> |
| |
137 </head> |
| |
138 <body> |
| |
139 <h2>Test http://www.w3.org/2001/DOM-Test-Suite/level1/core/nodegetownerdocument</h2> |
| |
140 <p></p> |
| |
141 <p> |
| |
142 Copyright (c) 2001-2004 World Wide Web Consortium, |
| |
143 (Massachusetts Institute of Technology, European Research Consortium |
| |
144 for Informatics and Mathematics, Keio University). All |
| |
145 Rights Reserved. This work is distributed under the <a href="http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231">W3C(r) Software License</a> in the |
| |
146 hope that it will be useful, but WITHOUT ANY WARRANTY; without even |
| |
147 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
| |
148 </p> |
| |
149 </body> |
| |
150 </html> |