test_createElementNS03.html (5344B)
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/createElementNS03</title> 7 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"> 8 <script 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 ['createElementNS03']; 16 } 17 18 var docsLoaded = -1000000; 19 var builder = null; 20 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 38 docsLoaded = 0; 39 40 var docRef = null; 41 if (typeof(this.doc) != 'undefined') { 42 docRef = this.doc; 43 } 44 docsLoaded += preload(docRef, "doc", "staffNS"); 45 46 if (docsLoaded == 1) { 47 setUpPage = 'complete'; 48 } 49 } catch(ex) { 50 catchInitializationError(builder, ex); 51 setUpPage = 'complete'; 52 } 53 } 54 55 // 56 // This method is called on the completion of 57 // each asychronous load started in setUpTests. 58 // 59 // When every synchronous loaded document has completed, 60 // the page status is changed which allows the 61 // body of the test to be executed. 62 function loadComplete() { 63 if (++docsLoaded == 1) { 64 setUpPageStatus = 'complete'; 65 runJSUnitTests(); 66 markTodos(); 67 SimpleTest.finish(); 68 } 69 } 70 71 var docName = 'createElementNS03'; 72 73 74 /** 75 * 76 The "createElementNS(namespaceURI,qualifiedName)" method for a 77 Document should raise INVALID_CHARACTER_ERR DOMException if 78 qualifiedName contains an illegal character. 79 80 Invoke method createElementNS(namespaceURI,qualifiedName) on this document 81 with qualifiedName containing an illegal character from illegalChars[]. 82 Method should raise INVALID_CHARACTER_ERR DOMException for all characters 83 in illegalChars[]. 84 85 * @author NIST 86 * @author Mary Brady 87 * @see http://www.w3.org/TR/DOM-Level-2-Core/core#ID-DocCrElNS 88 * @see http://www.w3.org/TR/DOM-Level-2-Core/core#xpointer(id('ID-DocCrElNS')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='INVALID_CHARACTER_ERR']) 89 */ 90 function createElementNS03() { 91 var success; 92 if(checkInitialization(builder, "createElementNS03") != null) return; 93 var namespaceURI = "http://www.wedding.com/"; 94 var qualifiedName; 95 var doc; 96 var done; 97 var newElement; 98 var charact; 99 illegalQNames = new Array(); 100 illegalQNames[0] = "person:{"; 101 illegalQNames[1] = "person:}"; 102 illegalQNames[2] = "person:~"; 103 illegalQNames[3] = "person:'"; 104 illegalQNames[4] = "person:!"; 105 illegalQNames[5] = "person:@"; 106 illegalQNames[6] = "person:#"; 107 illegalQNames[7] = "person:$"; 108 illegalQNames[8] = "person:%"; 109 illegalQNames[9] = "person:^"; 110 illegalQNames[10] = "person:&"; 111 illegalQNames[11] = "person:*"; 112 illegalQNames[12] = "person:("; 113 illegalQNames[13] = "person:)"; 114 illegalQNames[14] = "person:+"; 115 illegalQNames[15] = "person:="; 116 illegalQNames[16] = "person:["; 117 illegalQNames[17] = "person:]"; 118 illegalQNames[18] = "person:\\"; 119 illegalQNames[19] = "person:/"; 120 illegalQNames[20] = "person:;"; 121 illegalQNames[21] = "person:`"; 122 illegalQNames[22] = "person:<"; 123 illegalQNames[23] = "person:>"; 124 illegalQNames[24] = "person:,"; 125 illegalQNames[25] = "person:a "; 126 illegalQNames[26] = "person:\""; 127 128 129 var docRef = null; 130 if (typeof(this.doc) != 'undefined') { 131 docRef = this.doc; 132 } 133 doc = load(docRef, "doc", "staffNS"); 134 for(var indexN65688 = 0;indexN65688 < illegalQNames.length; indexN65688++) { 135 qualifiedName = illegalQNames[indexN65688]; 136 137 { 138 success = false; 139 try { 140 newElement = doc.createElementNS(namespaceURI,qualifiedName); 141 } 142 catch(ex) { 143 success = (typeof(ex.code) != 'undefined' && ex.code == 5); 144 } 145 assertTrue("throw_INVALID_CHARACTER_ERR",success); 146 } 147 148 } 149 150 } 151 152 </script> 153 </head> 154 <body> 155 <h2>Test http://www.w3.org/2001/DOM-Test-Suite/level2/core/createElementNS03</h2> 156 <p></p> 157 <p> 158 Copyright (c) 2001-2004 World Wide Web Consortium, 159 (Massachusetts Institute of Technology, European Research Consortium 160 for Informatics and Mathematics, Keio University). All 161 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 162 hope that it will be useful, but WITHOUT ANY WARRANTY; without even 163 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 164 </p> 165 </body> 166 </html>