Files
wasmeld/crates/wasmeld-console/web/tests/build-output.test.mjs
T

24 lines
874 B
JavaScript
Raw Normal View History

import assert from "node:assert/strict";
import { readFile, stat } from "node:fs/promises";
import test from "node:test";
test("build emits independent host and iframe documents", async () => {
const [host, page] = await Promise.all([
readFile(new URL("../dist/index.html", import.meta.url), "utf8"),
readFile(new URL("../dist/page.html", import.meta.url), "utf8"),
]);
assert.match(host, /Wasmeld Console/);
assert.match(page, /Wasmeld Console Page/);
assert.notEqual(host, page);
});
test("build emits an installable PWA worker and manifest", async () => {
const manifest = JSON.parse(
await readFile(new URL("../dist/manifest.webmanifest", import.meta.url), "utf8"),
);
assert.equal(manifest.short_name, "Wasmeld");
assert.equal(manifest.start_url, "/");
assert.ok((await stat(new URL("../dist/sw.js", import.meta.url))).size > 0);
});