gui tests: routing-sessions leaves the held live trace for a reload to cancel; letting it go just before the reload had the page ask again while going away, which WebKit turned away "due to access control checks" as a page error (#1307)

This commit is contained in:
yetone committed 2026-10-09 01:02:51 +08:00
1 parent 023f5aaad2
commit 8576e3cc33
1 file changed
+6 -3
+6 -3
View File
@@ -299,12 +299,14 @@ for (const engine of (process.env.BROWSER ? [process.env.BROWSER] : ["chromium",
assert.equal(await page.locator(".rt-session").count(), 0);
await buttons.nth(1).click();
await page.locator(".rt-session").nth(3).waitFor();
feed.next?.([]);
// the live trace's held answer is left held: the reload cancels it. An
// answer let go now has the page ask again while it is going away, and
// WebKit turns that ask away "due to access control checks", an error
// on the page (#1307)
await page.reload();
await page.locator(".rt-session").nth(3).waitFor();
assert.equal(await buttons.nth(1).getAttribute("aria-pressed"), "true");
await buttons.first().click();
feed.next?.([]);
await page.reload();
await page.locator(".rt-req").nth(5).waitFor();
assert.equal(await buttons.first().getAttribute("aria-pressed"), "true");
@@ -396,7 +398,8 @@ for (const engine of (process.env.BROWSER ? [process.env.BROWSER] : ["chromium",
await page.locator(".rt-day").filter({ hasText: lang === "zh" ? "今天" : "today" }).click();
await page.waitForFunction(() => document.querySelectorAll(".rt-session").length === 2);
assert.equal(await group(title.session).count(), 0, "history navigation lost title association");
feed.next?.([]);
// the held live trace is left for the reload to cancel (see "either
// choice survives a reload")
await page.reload();
await page.waitForFunction(() => document.querySelectorAll(".rt-session").length === 2);
assert.equal(await group(title.session).count(), 0, "page reload lost title association");