Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
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/level2/core/elementsetattributenodens04</title>
7 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css">
8 <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
9 <script type="text/javascript" src="DOMTestCase.js"></script>
10 <script type="text/javascript" src="exclusions.js"></script>
11 <script type="text/javascript">
12 // expose test function names
13 function exposeTestFunctionNames()
14 {
15 return ['elementsetattributenodens04'];
16 }
18 var docsLoaded = -1000000;
19 var builder = null;
21 //
22 // This function is called by the testing framework before
23 // running the test suite.
24 //
25 // If there are no configuration exceptions, asynchronous
26 // document loading is started. Otherwise, the status
27 // is set to complete and the exception is immediately
28 // raised when entering the body of the test.
29 //
30 function setUpPage() {
31 setUpPageStatus = 'running';
32 try {
33 //
34 // creates test document builder, may throw exception
35 //
36 builder = createConfiguredBuilder();
37 setImplementationAttribute("namespaceAware", true);
39 docsLoaded = 0;
41 var docRef = null;
42 if (typeof(this.doc) != 'undefined') {
43 docRef = this.doc;
44 }
45 docsLoaded += preload(docRef, "doc", "staffNS");
47 if (docsLoaded == 1) {
48 setUpPage = 'complete';
49 }
50 } catch(ex) {
51 catchInitializationError(builder, ex);
52 setUpPage = 'complete';
53 }
54 }
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 }
72 var docName = 'elementsetattributenodens04';
75 /**
76 *
77 The method setAttributeNodeNS Adds a new attribute and raises an INUSE_ATTRIBUTE_ERR
78 if newAttr is already an attribute of another Element object.
80 Create two new element nodes and a new attribute node. Attempt to add the same attribute
81 node to the same two element nodes.
82 Check if an INUSE_ATTRIBUTE_ERR is thrown.
84 * @author IBM
85 * @author Neil Delima
86 * @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElSetAtNodeNS
87 */
88 function elementsetattributenodens04() {
89 var success;
90 if(checkInitialization(builder, "elementsetattributenodens04") != null) return;
91 var doc;
92 var element1;
93 var element2;
94 var attribute;
95 var newAttribute;
97 var docRef = null;
98 if (typeof(this.doc) != 'undefined') {
99 docRef = this.doc;
100 }
101 doc = load(docRef, "doc", "staffNS");
102 element1 = doc.createElementNS("http://www.w3.org/DOM/Test","elem1");
103 element2 = doc.createElementNS("http://www.w3.org/DOM/Test","elem2");
104 attribute = doc.createAttributeNS("http://www.w3.org/DOM/Test","attr");
105 newAttribute = element1.setAttributeNodeNS(attribute);
107 {
108 success = false;
109 try {
110 newAttribute = element2.setAttributeNodeNS(attribute);
111 }
112 catch(ex) {
113 success = (typeof(ex.code) != 'undefined' && ex.code == 10);
114 }
115 assertTrue("elementsetattributenodens04",success);
116 }
118 }
120 </script>
121 </head>
122 <body>
123 <h2>Test http://www.w3.org/2001/DOM-Test-Suite/level2/core/elementsetattributenodens04</h2>
124 <p></p>
125 <p>
126 Copyright (c) 2001-2004 World Wide Web Consortium,
127 (Massachusetts Institute of Technology, European Research Consortium
128 for Informatics and Mathematics, Keio University). All
129 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
130 hope that it will be useful, but WITHOUT ANY WARRANTY; without even
131 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
132 </p>
133 </body>
134 </html>