Advance M8-M11 parity workflows
Some checks failed
M6 deployable RC / quick (push) Has been cancelled
M6 deployable RC / chromium (push) Has been cancelled
M6 deployable RC / release (push) Has been cancelled

This commit is contained in:
mes123456
2026-08-17 04:37:07 -04:00
parent 7c16b279ae
commit 0fe8d2bb56
324 changed files with 31920 additions and 863 deletions

View File

@@ -0,0 +1,25 @@
import { expect, test } from "@playwright/test";
test("M8-12 Offscreen Worker repeats the main-thread NanoVDB page sequence and pixels", async ({ page }) => {
test.setTimeout(90_000);
await page.goto("/");
const result = await page.evaluate(() => new Promise<any>((resolve, reject) => {
const worker = new Worker("/src/workers/nanovdb-offscreen-page-feedback-test.worker.ts", { type: "module" });
worker.onmessage = (event) => { worker.terminate(); event.data.error ? reject(new Error(event.data.error)) : resolve(event.data); };
worker.onerror = (event) => { worker.terminate(); reject(new Error(event.message)); };
worker.postMessage({});
}));
expect(result.pageCount).toBeGreaterThan(1);
expect(result.leafPageId).toBeGreaterThan(0);
expect(result.beforeLoad[0].valid).toBe(true);
expect(result.missing.status).toBe("READY");
expect(result.missing.pageIds).toEqual([result.leafPageId]);
expect(result.upload).toEqual({ pageId: result.leafPageId, redrawScheduled: true });
expect(result.queuedBeforeRedraw).toBe(1);
expect(result.redraws).toBe(1);
expect(result.afterLoad[0].valid).toBe(true);
expect(result.pixels.bytes).toBe(64 * 64 * 4);
expect(result.pixels.sha256A).toBe("87d08a77a644f37ed59609ebdd18555ab1924f9a3b30d8d084db35e7776cfb9c");
expect(result.pixels.sha256B).toBe(result.pixels.sha256A);
expect(result.scheduler).toMatchObject({ pending: false, scheduledCount: 1, redrawCount: 1, capped: false, errorCode: null });
});