--- a/docshell/test/Makefile.in
+++ b/docshell/test/Makefile.in
@@ -51,16 +51,18 @@ DIRS += chrome \
XPCSHELL_TESTS = unit
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
_TEST_FILES = \
test_bug94514.html \
bug94514-postpage.html \
+ test_bug123696.html \
+ bug123696-subframe.html \
test_bug344861.html \
test_bug369814.html \
bug369814.zip \
test_bug384014.html \
test_bug387979.html \
test_bug404548.html \
bug404548-subframe.html \
test_bug413310.html \
new file mode 100644
--- /dev/null
+++ b/docshell/test/bug123696-subframe.html
@@ -0,0 +1,16 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <script>
+ function change() {
+ return "<html><body>change</body></html>";
+ }
+ function change2() {
+ return "<html><body>change2</body></html>";
+ }
+ </script>
+ </head>
+ <body>
+ <iframe src="javascript:parent.change()"></iframe>
+ </body>
+</html>
new file mode 100644
--- /dev/null
+++ b/docshell/test/test_bug123696.html
@@ -0,0 +1,47 @@
+<!DOCTYPE HTML>
+<html>
+<!--
+https://bugzilla.mozilla.org/show_bug.cgi?id=123696
+-->
+<head>
+ <title>Test for Bug 123696</title>
+ <script type="application/javascript" src="/MochiKit/MochiKit.js"></script>
+ <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
+ <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
+</head>
+<body>
+<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=123696">Mozilla Bug 123696</a>
+<p id="display">
+ <iframe src="bug123696-subframe.html"></iframe>
+</p>
+<div id="content" style="display: none">
+
+</div>
+<pre id="test">
+<script type="application/javascript">
+
+/** Test for Bug 123696 **/
+SimpleTest.waitForExplicitFinish();
+
+function finishTest() {
+ is(window.frames[0].frames[0].document.documentElement.textContent,
+ "change2", "Reload should have reloaded correctly!");
+ SimpleTest.finish();
+}
+
+function doReload() {
+ window.frames[0].frameElement.onload = finishTest;
+ window.frames[0].location.reload();
+}
+
+addLoadEvent(function() {
+ window.frames[0].frames[0].frameElement.onload = doReload;
+ window.frames[0].frames[0].frameElement.src = "javascript:parent.change2()";
+});
+
+
+
+</script>
+</pre>
+</body>
+</html>