1
0
Fork 0
firefox/toolkit/components/places/tests/browser/browser_bug399606.js
Daniel Baumann 5e9a113729
Adding upstream version 140.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
2025-06-25 09:37:52 +02:00

50 lines
2 KiB
JavaScript

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
add_task(async function () {
registerCleanupFunction(PlacesUtils.history.clear);
const URIS = [
"https://example.com/tests/toolkit/components/places/tests/browser/399606-window.location.href.html",
"https://example.com/tests/toolkit/components/places/tests/browser/399606-history.go-0.html",
"https://example.com/tests/toolkit/components/places/tests/browser/399606-location.replace.html",
"https://example.com/tests/toolkit/components/places/tests/browser/399606-location.reload.html",
"https://example.com/tests/toolkit/components/places/tests/browser/399606-httprefresh.html",
"https://example.com/tests/toolkit/components/places/tests/browser/399606-window.location.html",
];
// Create and add history observer.
let count = 0;
let expectedURI = null;
function onVisitsListener(aEvents) {
for (let event of aEvents) {
info("Received onVisits: " + event.url);
if (event.url == expectedURI) {
count++;
}
}
}
async function promiseLoadedThreeTimes(uri) {
count = 0;
expectedURI = uri;
let tab = await BrowserTestUtils.openNewForegroundTab(gBrowser);
PlacesObservers.addListener(["page-visited"], onVisitsListener);
BrowserTestUtils.startLoadingURIString(gBrowser, uri);
await BrowserTestUtils.browserLoaded(gBrowser.selectedBrowser, false, uri);
await BrowserTestUtils.browserLoaded(gBrowser.selectedBrowser, false, uri);
await BrowserTestUtils.browserLoaded(gBrowser.selectedBrowser, false, uri);
PlacesObservers.removeListener(["page-visited"], onVisitsListener);
BrowserTestUtils.removeTab(tab);
}
for (let uri of URIS) {
await promiseLoadedThreeTimes(uri);
is(
count,
1,
"'page-visited' has been received right number of times for " + uri
);
}
});