From c86179d75afe108ecd86650003699bbcef1aa9a0 Mon Sep 17 00:00:00 2001 From: yetone Date: Tue, 29 Sep 2026 22:04:57 +0800 Subject: [PATCH] =?UTF-8?q?tests:=20usage-ledger=20checks=20the=20export's?= =?UTF-8?q?=20own=20request,=20not=20whichever=20came=20last=20=E2=80=94?= =?UTF-8?q?=20the=20Requests=20test=20waited=20for=20the=20export=20POST?= =?UTF-8?q?=20to=20be=20the=20last=20request=20asked,=20paused=20150=20ms?= =?UTF-8?q?=20and=20then=20read=20the=20last=20request=20again,=20so=20a?= =?UTF-8?q?=20GET=20the=20page=20sent=20in=20between=20(a=20refresh)=20was?= =?UTF-8?q?=20checked=20instead,=20and=20WebKit's=20zh=20run=20failed=20"e?= =?UTF-8?q?very=20page=20is=20exported"=20about=20one=20run=20in=20six=20(?= =?UTF-8?q?seen=20reviewing=20PR=20#211=20on=20plain=20main).=20It=20now?= =?UTF-8?q?=20takes=20the=20last=20POST=20and=20also=20checks=20there=20wa?= =?UTF-8?q?s=20just=20one.=2015=20WebKit=20runs=20in=20a=20row=20pass=20(o?= =?UTF-8?q?ne=20in=20six=20failed=20before),=20and=20the=20file=20passes?= =?UTF-8?q?=20in=20Chromium=20and=20WebKit.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/gui/tests/usage-ledger.test.cjs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/internal/gui/tests/usage-ledger.test.cjs b/internal/gui/tests/usage-ledger.test.cjs index d8b15fdb..61ce74f6 100644 --- a/internal/gui/tests/usage-ledger.test.cjs +++ b/internal/gui/tests/usage-ledger.test.cjs @@ -237,8 +237,9 @@ for (const engine of (process.env.BROWSER ? [process.env.BROWSER] : ["chromium", // Export CSV posts the filters shown, no page, and says where it went await page.locator("#ledExport").click(); await lastAsked(page, asked, (q) => q.method === "POST"); - const ex = asked.at(-1); + const ex = asked.findLast((q) => q.method === "POST"); // a refresh may ask after it assert.equal(ex.get("period"), "today"); + assert.equal(asked.filter((q) => q.method === "POST").length, 1, "one export"); assert(!ex.has("offset") && !ex.has("limit"), "every page is exported"); await page.waitForFunction((s) => document.querySelector("#status").textContent === s, w.saved); assert.deepEqual(errors, []);