diff --git a/testing/mochitest/browser-test.js b/testing/mochitest/browser-test.js index 15276e7259f3..9c18c17a25bf 100644 --- a/testing/mochitest/browser-test.js +++ b/testing/mochitest/browser-test.js @@ -169,6 +169,11 @@ Tester.prototype = { } }; + // Clear document.popupNode. The test could have set it to a custom value + // for its own purposes, nulling it out it will go back to the default + // behavior of returning the last opened popup. + document.popupNode = null; + // Note the test run time let time = Date.now() - this.lastStartTime; this.dumper.dump("INFO TEST-END | " + this.currentTest.path + " | finished in " + time + "ms\n"); diff --git a/testing/mochitest/tests/browser/Makefile.in b/testing/mochitest/tests/browser/Makefile.in index e82430e96c24..d1ecdb722873 100644 --- a/testing/mochitest/tests/browser/Makefile.in +++ b/testing/mochitest/tests/browser/Makefile.in @@ -50,6 +50,8 @@ _BROWSER_TEST_FILES = \ browser_pass.js \ browser_async.js \ browser_privileges.js \ + browser_popupNode.js \ + browser_popupNode_check.js \ # Disabled, these are only good for testing the harness' failure reporting # browser_zz_fail_openwindow.js \ # browser_fail.js \ diff --git a/testing/mochitest/tests/browser/browser_popupNode.js b/testing/mochitest/tests/browser/browser_popupNode.js new file mode 100644 index 000000000000..c6042011cdf5 --- /dev/null +++ b/testing/mochitest/tests/browser/browser_popupNode.js @@ -0,0 +1,4 @@ +function test() { + document.popupNode = document; + isnot(document.popupNode, null, "document.popupNode has been correctly set"); +} diff --git a/testing/mochitest/tests/browser/browser_popupNode_check.js b/testing/mochitest/tests/browser/browser_popupNode_check.js new file mode 100644 index 000000000000..fb85378d9d37 --- /dev/null +++ b/testing/mochitest/tests/browser/browser_popupNode_check.js @@ -0,0 +1,3 @@ +function test() { + is(document.popupNode, null, "document.popupNode has been correctly cleared"); +}