1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/intl/uconv/tests/test_unicode_noncharacters_gb18030.html Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,302 @@ 1.4 +<!DOCTYPE HTML> 1.5 +<html> 1.6 +<head> 1.7 +<!-- 1.8 +https://bugzilla.mozilla.org/show_bug.cgi?id=445886 1.9 +--> 1.10 + <meta http-equiv="Content-type" content="text/html; charset=gb18030"> 1.11 + <title>Test for Unicode non-characters</title> 1.12 + <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> 1.13 + <link rel="stylesheet" type="text/css" 1.14 + href="/tests/SimpleTest/test.css"> 1.15 +</head> 1.16 +<body onload="Inject()"> 1.17 +<pre id="test"><script class="testbody" type="text/javascript"> 1.18 + 1.19 +/** Test that unicode non-characters are not discarded **/ 1.20 +function test() 1.21 +{ 1.22 + is($("display").innerHTML, "All good.", "Noncharacters not stripped"); 1.23 + SimpleTest.finish(); 1.24 +} 1.25 + 1.26 +function Inject() 1.27 +{ 1.28 + // script fragments containing Unicode non-characters 1.29 + try { 1.30 + // U+FDD0 1.31 + eval("$(\"display\").innerHTML += \" U+FDD0 is evil \""); 1.32 + } catch(e) {} 1.33 + try { 1.34 + // U+FDD1 1.35 + eval("$(\"display\").innerHTML += \" U+FDD1 is evil \""); 1.36 + } catch(e) {} 1.37 + try { 1.38 + // U+FDD2 1.39 + eval("$(\"display\").innerHTML += \" U+FDD2 is evil \""); 1.40 + } catch(e) {} 1.41 + try { 1.42 + // U+FDD3 1.43 + eval("$(\"display\").innerHTML += \" U+FDD3 is evil \""); 1.44 + } catch(e) {} 1.45 + try { 1.46 + // U+FDD4 1.47 + eval("$(\"display\").innerHTML += \" U+FDD4 is evil \""); 1.48 + } catch(e) {} 1.49 + try { 1.50 + // U+FDD5 1.51 + eval("$(\"display\").innerHTML += \" U+FDD5 is evil \""); 1.52 + } catch(e) {} 1.53 + try { 1.54 + // U+FDD6 1.55 + eval("$(\"display\").innerHTML += \" U+FDD6 is evil \""); 1.56 + } catch(e) {} 1.57 + try { 1.58 + // U+FDD7 1.59 + eval("$(\"display\").innerHTML += \" U+FDD7 is evil \""); 1.60 + } catch(e) {} 1.61 + try { 1.62 + // U+FDD8 1.63 + eval("$(\"display\").innerHTML += \" U+FDD8 is evil \""); 1.64 + } catch(e) {} 1.65 + try { 1.66 + // U+FDD9 1.67 + eval("$(\"display\").innerHTML += \" U+FDD9 is evil \""); 1.68 + } catch(e) {} 1.69 + try { 1.70 + // U+FDDA 1.71 + eval("$(\"display\").innerHTML += \" U+FDDA is evil \""); 1.72 + } catch(e) {} 1.73 + try { 1.74 + // U+FDDB 1.75 + eval("$(\"display\").innerHTML += \" U+FDDB is evil \""); 1.76 + } catch(e) {} 1.77 + try { 1.78 + // U+FDDC 1.79 + eval("$(\"display\").innerHTML += \" U+FDDC is evil \""); 1.80 + } catch(e) {} 1.81 + try { 1.82 + // U+FDDD 1.83 + eval("$(\"display\").innerHTML += \" U+FDDD is evil \""); 1.84 + } catch(e) {} 1.85 + try { 1.86 + // U+FDDE 1.87 + eval("$(\"display\").innerHTML += \" U+FDDE is evil \""); 1.88 + } catch(e) {} 1.89 + try { 1.90 + // U+FDDF 1.91 + eval("$(\"display\").innerHTML += \" U+FDDF is evil \""); 1.92 + } catch(e) {} 1.93 + try { 1.94 + // U+FDE0 1.95 + eval("$(\"display\").innerHTML += \" U+FDE0 is evil \""); 1.96 + } catch(e) {} 1.97 + try { 1.98 + // U+FDE1 1.99 + eval("$(\"display\").innerHTML += \" U+FDE1 is evil \""); 1.100 + } catch(e) {} 1.101 + try { 1.102 + // U+FDE2 1.103 + eval("$(\"display\").innerHTML += \" U+FDE2 is evil \""); 1.104 + } catch(e) {} 1.105 + try { 1.106 + // U+FDE3 1.107 + eval("$(\"display\").innerHTML += \" U+FDE3 is evil \""); 1.108 + } catch(e) {} 1.109 + try { 1.110 + // U+FDE4 1.111 + eval("$(\"display\").innerHTML += \" U+FDE4 is evil \""); 1.112 + } catch(e) {} 1.113 + try { 1.114 + // U+FDE5 1.115 + eval("$(\"display\").innerHTML += \" U+FDE5 is evil \""); 1.116 + } catch(e) {} 1.117 + try { 1.118 + // U+FDE6 1.119 + eval("$(\"display\").innerHTML += \" U+FDE6 is evil \""); 1.120 + } catch(e) {} 1.121 + try { 1.122 + // U+FDE7 1.123 + eval("$(\"display\").innerHTML += \" U+FDE7 is evil \""); 1.124 + } catch(e) {} 1.125 + try { 1.126 + // U+FDE8 1.127 + eval("$(\"display\").innerHTML += \" U+FDE8 is evil \""); 1.128 + } catch(e) {} 1.129 + try { 1.130 + // U+FDE9 1.131 + eval("$(\"display\").innerHTML += \" U+FDE9 is evil \""); 1.132 + } catch(e) {} 1.133 + try { 1.134 + // U+FDEA 1.135 + eval("$(\"display\").innerHTML += \" U+FDEA is evil \""); 1.136 + } catch(e) {} 1.137 + try { 1.138 + // U+FDEB 1.139 + eval("$(\"display\").innerHTML += \" U+FDEB is evil \""); 1.140 + } catch(e) {} 1.141 + try { 1.142 + // U+FDEC 1.143 + eval("$(\"display\").innerHTML += \" U+FDEC is evil \""); 1.144 + } catch(e) {} 1.145 + try { 1.146 + // U+FDED 1.147 + eval("$(\"display\").innerHTML += \" U+FDED is evil \""); 1.148 + } catch(e) {} 1.149 + try { 1.150 + // U+FDEE 1.151 + eval("$(\"display\").innerHTML += \" U+FDEE is evil \""); 1.152 + } catch(e) {} 1.153 + try { 1.154 + // U+FDEF 1.155 + eval("$(\"display\").innerHTML += \" U+FDEF is evil \""); 1.156 + } catch(e) {} 1.157 + try { 1.158 + // U+FFFE 1.159 + eval("$(\"display\").innerHTML += \" U+FFFE is evil \""); 1.160 + } catch(e) {} 1.161 + try { 1.162 + // U+FFFF 1.163 + eval("$(\"display\").innerHTML += \" U+FFFF is evil \""); 1.164 + } catch(e) {} 1.165 + try { 1.166 + // U+1FFFE 1.167 + eval("$(\"display\").innerHTML += \" U+1FFFE is evil \""); 1.168 + } catch(e) {} 1.169 + try { 1.170 + // U+1FFFF 1.171 + eval("$(\"display\").innerHTML += \" U+1FFFF is evil \""); 1.172 + } catch(e) {} 1.173 + try { 1.174 + // U+2FFFE 1.175 + eval("$(\"display\").innerHTML += \" U+2FFFE is evil \""); 1.176 + } catch(e) {} 1.177 + try { 1.178 + // U+2FFFF 1.179 + eval("$(\"display\").innerHTML += \" U+2FFFF is evil \""); 1.180 + } catch(e) {} 1.181 + try { 1.182 + // U+3FFFE 1.183 + eval("$(\"display\").innerHTML += \" U+3FFFE is evil \""); 1.184 + } catch(e) {} 1.185 + try { 1.186 + // U+3FFFF 1.187 + eval("$(\"display\").innerHTML += \" U+3FFFF is evil \""); 1.188 + } catch(e) {} 1.189 + try { 1.190 + // U+4FFFE 1.191 + eval("$(\"display\").innerHTML += \" U+4FFFE is evil \""); 1.192 + } catch(e) {} 1.193 + try { 1.194 + // U+4FFFF 1.195 + eval("$(\"display\").innerHTML += \" U+4FFFF is evil \""); 1.196 + } catch(e) {} 1.197 + try { 1.198 + // U+5FFFE 1.199 + eval("$(\"display\").innerHTML += \" U+5FFFE is evil \""); 1.200 + } catch(e) {} 1.201 + try { 1.202 + // U+5FFFF 1.203 + eval("$(\"display\").innerHTML += \" U+5FFFF is evil \""); 1.204 + } catch(e) {} 1.205 + try { 1.206 + // U+6FFFE 1.207 + eval("$(\"display\").innerHTML += \" U+6FFFE is evil \""); 1.208 + } catch(e) {} 1.209 + try { 1.210 + // U+6FFFF 1.211 + eval("$(\"display\").innerHTML += \" U+6FFFF is evil \""); 1.212 + } catch(e) {} 1.213 + try { 1.214 + // U+7FFFE 1.215 + eval("$(\"display\").innerHTML += \" U+7FFFE is evil \""); 1.216 + } catch(e) {} 1.217 + try { 1.218 + // U+7FFFF 1.219 + eval("$(\"display\").innerHTML += \" U+7FFFF is evil \""); 1.220 + } catch(e) {} 1.221 + try { 1.222 + // U+8FFFE 1.223 + eval("$(\"display\").innerHTML += \" U+8FFFE is evil \""); 1.224 + } catch(e) {} 1.225 + try { 1.226 + // U+8FFFF 1.227 + eval("$(\"display\").innerHTML += \" U+8FFFF is evil \""); 1.228 + } catch(e) {} 1.229 + try { 1.230 + // U+9FFFE 1.231 + eval("$(\"display\").innerHTML += \" U+9FFFE is evil \""); 1.232 + } catch(e) {} 1.233 + try { 1.234 + // U+9FFFF 1.235 + eval("$(\"display\").innerHTML += \" U+9FFFF is evil \""); 1.236 + } catch(e) {} 1.237 + try { 1.238 + // U+AFFFE 1.239 + eval("$(\"display\").innerHTML += \" U+AFFFE is evil \""); 1.240 + } catch(e) {} 1.241 + try { 1.242 + // U+AFFFF 1.243 + eval("$(\"display\").innerHTML += \" U+AFFFF is evil \""); 1.244 + } catch(e) {} 1.245 + try { 1.246 + // U+BFFFE 1.247 + eval("$(\"display\").innerHTML += \" U+BFFFE is evil \""); 1.248 + } catch(e) {} 1.249 + try { 1.250 + // U+BFFFF 1.251 + eval("$(\"display\").innerHTML += \" U+BFFFF is evil \""); 1.252 + } catch(e) {} 1.253 + try { 1.254 + // U+CFFFE 1.255 + eval("$(\"display\").innerHTML += \" U+CFFFE is evil \""); 1.256 + } catch(e) {} 1.257 + try { 1.258 + // U+CFFFF 1.259 + eval("$(\"display\").innerHTML += \" U+CFFFF is evil \""); 1.260 + } catch(e) {} 1.261 + try { 1.262 + // U+DFFFE 1.263 + eval("$(\"display\").innerHTML += \" U+DFFFE is evil \""); 1.264 + } catch(e) {} 1.265 + try { 1.266 + // U+DFFFF 1.267 + eval("$(\"display\").innerHTML += \" U+DFFFF is evil \""); 1.268 + } catch(e) {} 1.269 + try { 1.270 + // U+EFFFE 1.271 + eval("$(\"display\").innerHTML += \" U+EFFFE is evil \""); 1.272 + } catch(e) {} 1.273 + try { 1.274 + // U+EFFFF 1.275 + eval("$(\"display\").innerHTML += \" U+EFFFF is evil \""); 1.276 + } catch(e) {} 1.277 + try { 1.278 + // U+FFFFE 1.279 + eval("$(\"display\").innerHTML += \" U+FFFFE is evil \""); 1.280 + } catch(e) {} 1.281 + try { 1.282 + // U+FFFFF 1.283 + eval("$(\"display\").innerHTML += \" U+FFFFF is evil \""); 1.284 + } catch(e) {} 1.285 + try { 1.286 + // U+10FFFE 1.287 + eval("$(\"display\").innerHTML += \" U+10FFFE is evil \""); 1.288 + } catch(e) {} 1.289 + try { 1.290 + // U+10FFFF 1.291 + eval("$(\"display\").innerHTML += \" U+10FFFF is evil \""); 1.292 + } catch(e) {} 1.293 + test(); 1.294 +} 1.295 + 1.296 + SimpleTest.waitForExplicitFinish(); 1.297 +</script> 1.298 +</pre> 1.299 +<a target="_blank" 1.300 + href="https://bugzilla.mozilla.org/show_bug.cgi?id=445886">Mozilla Bug 1.301 +445886</a> 1.302 +<p id="display">All good.</p> 1.303 +<div id="content" style="display: none;"></div> 1.304 +</body> 1.305 +</html>