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/hasAttributeNS05</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 ['hasAttributeNS05'];
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 = 'hasAttributeNS05';
75 /**
76 *
77 The "hasAttributeNS()" method for an Element should
78 return true if the element has an attribute with the given local name
79 and the namespace URI is specified on this element or has a default value.
81 Retrieve the first "address" element and the "hasAttributeNS()" method
82 should return true since the element has "domestic" as the local name
83 and "http://www.usa.com" as the namespace URI.
85 * @author NIST
86 * @author Mary Brady
87 * @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-ElHasAttrNS
88 */
89 function hasAttributeNS05() {
90 var success;
91 if(checkInitialization(builder, "hasAttributeNS05") != null) return;
92 var localName = "domestic";
93 var namespaceURI = "http://www.usa.com";
94 var doc;
95 var elementList;
96 var testNode;
97 var state;
99 var docRef = null;
100 if (typeof(this.doc) != 'undefined') {
101 docRef = this.doc;
102 }
103 doc = load(docRef, "doc", "staffNS");
104 elementList = doc.getElementsByTagName("address");
105 testNode = elementList.item(0);
106 state = testNode.hasAttributeNS(namespaceURI,localName);
107 assertTrue("hasAttribute",state);
109 }
111 </script>
112 </head>
113 <body>
114 <h2>Test http://www.w3.org/2001/DOM-Test-Suite/level2/core/hasAttributeNS05</h2>
115 <p></p>
116 <p>
117 Copyright (c) 2001-2004 World Wide Web Consortium,
118 (Massachusetts Institute of Technology, European Research Consortium
119 for Informatics and Mathematics, Keio University). All
120 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
121 hope that it will be useful, but WITHOUT ANY WARRANTY; without even
122 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
123 </p>
124 </body>
125 </html>