diff options
Diffstat (limited to 'dom/tests/mochitest/bugs/test_bug504862.html')
-rw-r--r-- | dom/tests/mochitest/bugs/test_bug504862.html | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/dom/tests/mochitest/bugs/test_bug504862.html b/dom/tests/mochitest/bugs/test_bug504862.html new file mode 100644 index 000000000..713165bc3 --- /dev/null +++ b/dom/tests/mochitest/bugs/test_bug504862.html @@ -0,0 +1,45 @@ +<!DOCTYPE HTML> +<html> +<!-- +https://bugzilla.mozilla.org/show_bug.cgi?id=504862 +--> +<head> + <title>Test for Bug 504862</title> + <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script> + <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> +</head> +<body onload="runTest()"> +<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=504862">Mozilla Bug 504862</a> +<script class="testbody" type="text/javascript"> + +/** Test for Bug 504862 **/ +SimpleTest.waitForExplicitFinish(); +function onMsgRcv(event) +{ + is(event.data, "args: undefined", "Unexpected cross origin dialog arguments."); +} + +function runTest() { + if ("showModalDialog" in window) { + window.addEventListener("message", onMsgRcv, false); + + var result = window.showModalDialog("file_bug504862.html", "my args"); + // NB: We used to clear returnValue on each navigation, but now we do a + // security check on access, so we can safely make returnValue live on + // the browsing context, per spec. + is(result, 3, "window sees previous dialog documents return value."); + + result = window.showModalDialog("http://test1.example.com/tests/dom/tests/mochitest/bugs/file_bug504862.html", "my args"); + + is(result, undefined, "Able to see return value from cross origin dialog."); + } else { + ok(true, "nothing to do in e10s mode"); + } + + SimpleTest.finish(); +} + +</script> +</pre> +</body> +</html> |