70ee5e33da
- move the management frontend under the wasmeld-console crate - use a persistent Host shell with disposable iframe page documents - version Host/Page postMessage state and command contracts - migrate runtime, service, WIT, invocation, and settings workflows - add Tailwind CSS v4, responsive layouts, and Host-owned dialogs - emit a dependency-free PWA worker with API cache exclusions - remove the superseded root TanStack Start application
24 lines
874 B
JavaScript
24 lines
874 B
JavaScript
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);
|
|
});
|