Files
Ewald 85a82f130a test: migrate ui/tests from .mjs to .ts
- Rename 132 *.vitest.mjs -> *.vitest.ts
- Rename vitest.setup.mjs -> vitest.setup.ts
- Rename helpers/vitestEnvironment.mjs -> vitestEnvironment.ts
- Delete settings_store.test.mjs (Node test runner, superseded by .vitest.ts)
- Fix .mjs imports in vitest.setup.ts and grid_loader_adaptive_paging.vitest.ts

Config updates:
- vitest.config.mjs: setupFiles, include, coverage.include -> .ts
- tsconfig.test.json: new dedicated config for test files (strict:false)
- knip.json: update project pattern for tests
- package.json: add typecheck:tests script (audit-only)
2026-05-26 13:04:05 +02:00

34 lines
1.1 KiB
TypeScript

import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
vi.mock("../features/viewer/nodeStream/nodeStreamFeatureFlag.js", () => ({
NODE_STREAM_FEATURE_ENABLED: true,
}));
describe("entryDebugApi", () => {
beforeEach(() => {
vi.resetModules();
globalThis.window = {};
});
afterEach(() => {
delete globalThis.window;
vi.restoreAllMocks();
});
it("exposes an inspection-only Node Stream API", async () => {
const resolveNodeStreamModule = vi.fn(async () => ({
listAdapters: vi.fn(() => [{ name: "video-output", priority: 10 }]),
}));
const { exposeDebugApis } = await import("../features/runtime/entryDebugApi.js");
exposeDebugApis({ resolveNodeStreamModule });
expect(window.MajoorNodeStream.mode).toBe("selection-only");
expect(window.MajoorNodeStream.registerAdapter).toBeUndefined();
expect(window.MajoorNodeStream.createAdapter).toBeUndefined();
await expect(window.MajoorNodeStream.listAdapters()).resolves.toEqual([
{ name: "video-output", priority: 10 },
]);
});
});