OLD | NEW |
| (Empty) |
1 /* | |
2 Copyright © 2001-2004 World Wide Web Consortium, | |
3 (Massachusetts Institute of Technology, European Research Consortium | |
4 for Informatics and Mathematics, Keio University). All | |
5 Rights Reserved. This work is distributed under the W3C® Software License [1] i
n the | |
6 hope that it will be useful, but WITHOUT ANY WARRANTY; without even | |
7 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | |
8 | |
9 [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 | |
10 */ | |
11 | |
12 /** | |
13 * Gets URI that identifies the test. | |
14 * @return uri identifier of test | |
15 */ | |
16 function getTargetURI() { | |
17 return "http://www.w3.org/2001/DOM-Test-Suite/level3/core/noderemovechild3
0"; | |
18 } | |
19 | |
20 var docsLoaded = -1000000; | |
21 var builder = null; | |
22 | |
23 // | |
24 // This function is called by the testing framework before | |
25 // running the test suite. | |
26 // | |
27 // If there are no configuration exceptions, asynchronous | |
28 // document loading is started. Otherwise, the status | |
29 // is set to complete and the exception is immediately | |
30 // raised when entering the body of the test. | |
31 // | |
32 function setUpPage() { | |
33 setUpPageStatus = 'running'; | |
34 try { | |
35 // | |
36 // creates test document builder, may throw exception | |
37 // | |
38 builder = createConfiguredBuilder(); | |
39 | |
40 docsLoaded = 0; | |
41 | |
42 var docRef = null; | |
43 if (typeof(this.doc) != 'undefined') { | |
44 docRef = this.doc; | |
45 } | |
46 docsLoaded += preload(docRef, "doc", "hc_staff"); | |
47 | |
48 if (docsLoaded == 1) { | |
49 setUpPageStatus = 'complete'; | |
50 } | |
51 } catch(ex) { | |
52 catchInitializationError(builder, ex); | |
53 setUpPageStatus = 'complete'; | |
54 } | |
55 } | |
56 | |
57 // | |
58 // This method is called on the completion of | |
59 // each asychronous load started in setUpTests. | |
60 // | |
61 // When every synchronous loaded document has completed, | |
62 // the page status is changed which allows the | |
63 // body of the test to be executed. | |
64 function loadComplete() { | |
65 if (++docsLoaded == 1) { | |
66 setUpPageStatus = 'complete'; | |
67 } | |
68 } | |
69 | |
70 /** | |
71 * | |
72 | |
73 Using removeChild on a default Attribute node attempt to remove its Text chi
ld node and | |
74 and verify the name of the returned node that was removed. Now attempt the
reverse | |
75 and verify if a NOT_FOUND_ERR is thrown. | |
76 | |
77 * @author IBM | |
78 * @author Neil Delima | |
79 * @see http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core#ID-173483406
6 | |
80 */ | |
81 function noderemovechild30() { | |
82 var success; | |
83 if(checkInitialization(builder, "noderemovechild30") != null) return; | |
84 var doc; | |
85 var parentList; | |
86 var attrsMap; | |
87 var parent; | |
88 var child; | |
89 var elem; | |
90 var removed; | |
91 var removedNode; | |
92 var removedName; | |
93 var appendedChild; | |
94 | |
95 var docRef = null; | |
96 if (typeof(this.doc) != 'undefined') { | |
97 docRef = this.doc; | |
98 } | |
99 doc = load(docRef, "doc", "hc_staff"); | |
100 parentList = doc.getElementsByTagName("p"); | |
101 elem = parentList.item(3); | |
102 attrsMap = elem.attributes; | |
103 | |
104 parent = attrsMap.getNamedItem("dir"); | |
105 child = parent.firstChild; | |
106 | |
107 removed = parent.removeChild(child); | |
108 removedName = removed.nodeValue; | |
109 | |
110 assertEquals("noderemovechild30","rtl",removedName); | |
111 | |
112 { | |
113 success = false; | |
114 try { | |
115 removedNode = child.removeChild(parent); | |
116 } | |
117 catch(ex) { | |
118 success = (typeof(ex.code) != 'undefined' && ex.code == 8); | |
119 } | |
120 assertTrue("throw_NOT_FOUND_ERR",success); | |
121 } | |
122 | |
123 } | |
124 | |
125 function runTest() { | |
126 noderemovechild30(); | |
127 } | |
OLD | NEW |