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/level1/core/hc_elementnormal
ize2"; | |
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 Add an empty text node to an existing attribute node, normalize the containing e
lement | |
73 and check that the attribute node has eliminated the empty text. | |
74 | |
75 * @author Curt Arnold | |
76 * @see http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-162C
F083 | |
77 * @see http://www.w3.org/Bugs/Public/show_bug.cgi?id=482 | |
78 */ | |
79 function hc_elementnormalize2() { | |
80 var success; | |
81 if(checkInitialization(builder, "hc_elementnormalize2") != null) return; | |
82 var doc; | |
83 var root; | |
84 var elementList; | |
85 var element; | |
86 var firstChild; | |
87 var secondChild; | |
88 var childValue; | |
89 var emptyText; | |
90 var attrNode; | |
91 var retval; | |
92 | |
93 var docRef = null; | |
94 if (typeof(this.doc) != 'undefined') { | |
95 docRef = this.doc; | |
96 } | |
97 doc = load(docRef, "doc", "hc_staff"); | |
98 root = doc.documentElement; | |
99 | |
100 emptyText = doc.createTextNode(""); | |
101 elementList = root.getElementsByTagName("acronym"); | |
102 element = elementList.item(0); | |
103 attrNode = element.getAttributeNode("title"); | |
104 retval = attrNode.appendChild(emptyText); | |
105 element.normalize(); | |
106 attrNode = element.getAttributeNode("title"); | |
107 firstChild = attrNode.firstChild; | |
108 | |
109 childValue = firstChild.nodeValue; | |
110 | |
111 assertEquals("firstChild","Yes",childValue); | |
112 secondChild = firstChild.nextSibling; | |
113 | |
114 assertNull("secondChildNull",secondChild); | |
115 | |
116 } | |
117 | |
118 function runTest() { | |
119 hc_elementnormalize2(); | |
120 } | |
OLD | NEW |