diff options
Diffstat (limited to 'widget/tests/test_bug760802.xul')
-rw-r--r-- | widget/tests/test_bug760802.xul | 91 |
1 files changed, 0 insertions, 91 deletions
diff --git a/widget/tests/test_bug760802.xul b/widget/tests/test_bug760802.xul deleted file mode 100644 index c79be785e..000000000 --- a/widget/tests/test_bug760802.xul +++ /dev/null @@ -1,91 +0,0 @@ -<?xml version="1.0"?> -<?xml-stylesheet type="text/css" href="chrome://global/skin"?> -<?xml-stylesheet type="text/css" href="/tests/SimpleTest/test.css"?> -<!-- -https://bugzilla.mozilla.org/show_bug.cgi?id=760802 ---> -<window title="Mozilla Bug 760802" - xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> - <script type="application/javascript" src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"/> - - <!-- test results are displayed in the html:body --> - <body xmlns="http://www.w3.org/1999/xhtml"> - <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=760802" - target="_blank">Mozilla Bug 760802</a> - <p id="display"></p> - <div id="content" style="display: none"/> - <iframe id="iframe_not_editable" width="300" height="150" - src="data:text/html,<html><body></body></html>"/><br/> - </body> - - <!-- test code goes here --> - <script type="application/javascript"><![CDATA[ -SimpleTest.waitForExplicitFinish(); - -var Cc = Components.classes; -var Ci = Components.interfaces; - -function getBaseWindowInterface(win) { - return win.QueryInterface(Ci.nsIInterfaceRequestor) - .getInterface(Ci.nsIWebNavigation) - .QueryInterface(Ci.nsIDocShellTreeItem) - .treeOwner - .QueryInterface(Ci.nsIInterfaceRequestor) - .nsIBaseWindow; -} - -function getBaseWindowInterfaceFromDocShell(win) { - return win.QueryInterface(Ci.nsIInterfaceRequestor) - .getInterface(Ci.nsIWebNavigation) - .QueryInterface(Ci.nsIDocShell) - .QueryInterface(Ci.nsIBaseWindow); -} - -function shouldThrowException(fun, exception) { - try { - fun.call(); - return false; - } catch (e) { - $("display").innerHTML += "<br/>OK thrown: "+e.message; - return (e instanceof Components.Exception && - e.result === exception) - } -} -function doesntThrowException(fun) { - return !shouldThrowException(fun); -} - -var baseWindow = getBaseWindowInterface(this); -var nativeHandle = baseWindow.nativeHandle; -$("display").innerHTML = "found nativeHandle for this window: "+nativeHandle; - -var wm = Cc["@mozilla.org/appshell/window-mediator;1"].getService(Ci.nsIWindowMediator); -var win = wm.getMostRecentWindow("navigator:browser"); -var docShell = getBaseWindowInterfaceFromDocShell(win); - -ok( - shouldThrowException(function(){docShell.nativeHandle;}, - Components.results.NS_ERROR_NOT_IMPLEMENTED), - "nativeHandle should not be implemented for nsDocShell" -); - -ok(typeof(nativeHandle) === "string", "nativeHandle should be a string"); -ok(nativeHandle.match(/^0x[0-9a-f]+$/), "nativeHandle should have a memory address format"); - -var iWin = document.getElementById("iframe_not_editable").contentWindow; -is(getBaseWindowInterface(iWin).nativeHandle, nativeHandle, - "the nativeHandle of an iframe should be its parent's nativeHandle"); - -var dialog = win.openDialog("data:text/plain,this is an active window.", "_blank", - "chrome,dialog=yes,width=100,height=100"); - -isnot(getBaseWindowInterface(dialog).nativeHandle, "", - "the nativeHandle of a dialog should not be empty"); - -dialog.close(); - -todo(false, "the nativeHandle of a window without a mainWidget should be empty"); // how to build a window without a mainWidget ? - -SimpleTest.finish(); - ]]></script> -</window> |