diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 19:33:14 +0000 |
commit | 36d22d82aa202bb199967e9512281e9a53db42c9 (patch) | |
tree | 105e8c98ddea1c1e4784a60a5a6410fa416be2de /browser/base/content/test/tabs/browser_reload_deleted_file.js | |
parent | Initial commit. (diff) | |
download | firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.tar.xz firefox-esr-36d22d82aa202bb199967e9512281e9a53db42c9.zip |
Adding upstream version 115.7.0esr.upstream/115.7.0esrupstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r-- | browser/base/content/test/tabs/browser_reload_deleted_file.js | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/browser/base/content/test/tabs/browser_reload_deleted_file.js b/browser/base/content/test/tabs/browser_reload_deleted_file.js new file mode 100644 index 0000000000..2051dbfac7 --- /dev/null +++ b/browser/base/content/test/tabs/browser_reload_deleted_file.js @@ -0,0 +1,36 @@ +/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */ +/* vim: set ft=javascript ts=2 et sw=2 tw=80: */ + +const uuidGenerator = Services.uuid; + +const DUMMY_FILE = "dummy_page.html"; + +// Test for bug 1327942. +add_task(async function () { + // Copy dummy page to unique file in TmpD, so that we can safely delete it. + let dummyPage = getChromeDir(getResolvedURI(gTestPath)); + dummyPage.append(DUMMY_FILE); + let disappearingPage = Services.dirsvc.get("TmpD", Ci.nsIFile); + let uniqueName = uuidGenerator.generateUUID().toString(); + dummyPage.copyTo(disappearingPage, uniqueName); + disappearingPage.append(uniqueName); + + // Get file:// URI for new page and load in a new tab. + const uriString = Services.io.newFileURI(disappearingPage).spec; + let tab = await BrowserTestUtils.openNewForegroundTab(gBrowser, uriString); + registerCleanupFunction(async function () { + BrowserTestUtils.removeTab(tab); + }); + + // Delete the page, simulate a click of the reload button and check that we + // get a neterror page. + disappearingPage.remove(false); + document.getElementById("reload-button").doCommand(); + await BrowserTestUtils.waitForErrorPage(tab.linkedBrowser); + await SpecialPowers.spawn(tab.linkedBrowser, [], function () { + ok( + content.document.documentURI.startsWith("about:neterror"), + "Check that a neterror page was loaded." + ); + }); +}); |