1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/content/base/test/chrome/file_bug616841.xul Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,63 @@ 1.4 +<?xml version="1.0"?> 1.5 +<?xml-stylesheet href="chrome://global/skin" type="text/css"?> 1.6 +<?xml-stylesheet href="chrome://mochikit/content/tests/SimpleTest/test.css" 1.7 + type="text/css"?> 1.8 +<!-- 1.9 +https://bugzilla.mozilla.org/show_bug.cgi?id=616841 1.10 +--> 1.11 +<window title="Mozilla Bug 616841" 1.12 + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" 1.13 + onload="start()"> 1.14 + <label value="Mozilla Bug 616841"/> 1.15 + <!-- test code goes here --> 1.16 + <script type="application/javascript"><![CDATA[ 1.17 + 1.18 + const FRAME_SCRIPT = 1.19 +"data:,addMessageListener(\n"+ 1.20 +" 'cmp',\n"+ 1.21 +" function (m) {\n"+ 1.22 +" sendAsyncMessage('cmp', { i: m.json.i,\n"+ 1.23 +" cmp: m.json.a.localeCompare(m.json.b) });\n"+ 1.24 +" });\n"+ 1.25 +"sendAsyncMessage('contentReady');"; 1.26 + 1.27 + var toCompare = [ [ "C", "D" ], 1.28 + [ "D", "C" ], 1.29 + [ "\u010C", "D" ], 1.30 + [ "D", "\u010C" ] ]; 1.31 + var nCmps = 0; 1.32 + 1.33 + function recvContentReady(m) { 1.34 + for (var i = 0; i < toCompare.length; ++i) { 1.35 + var pair = toCompare[i]; 1.36 + messageManager.broadcastAsyncMessage("cmp", 1.37 + { i: i, a: pair[0], b: pair[1] }); 1.38 + } 1.39 + } 1.40 + 1.41 + function recvCmp(m) { 1.42 + var i = m.json.i, cmp = m.json.cmp; 1.43 + var pair = toCompare[i]; 1.44 + opener.wrappedJSObject.is(pair[0].localeCompare(pair[1]), cmp, "localeCompare returned same result in frame script"); 1.45 + 1.46 + if (toCompare.length == ++nCmps) { 1.47 + messageManager.removeMessageListener("cmp", recvCmp); 1.48 + finish(); 1.49 + } 1.50 + } 1.51 + 1.52 + function start() { 1.53 + messageManager.addMessageListener("contentReady", recvContentReady); 1.54 + messageManager.addMessageListener("cmp", recvCmp); 1.55 + messageManager.loadFrameScript(FRAME_SCRIPT, true); 1.56 + } 1.57 + 1.58 + function finish() { 1.59 + opener.setTimeout("done()", 0); 1.60 + window.close(); 1.61 + } 1.62 + 1.63 + ]]></script> 1.64 + 1.65 + <browser id="browser" type="content" src="about:blank"/> 1.66 +</window>