This repository has been archived on 2026-10-29. You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.
EveElectron/test/preload.test.cjs
2026-07-10 07:40:43 +01:00

17 lines
840 B
JavaScript

const assert = require("node:assert/strict");
const test = require("node:test");
const { installEveProviderBridge } = require("../src/eve-provider-preload.cjs");
test("exposes only the generic Eve provider bridge", async () => {
let exposed;
const calls = [];
const api = installEveProviderBridge({
contextBridge: { exposeInMainWorld: (name, value) => { exposed = { name, value }; } },
ipcRenderer: { invoke: (...args) => { calls.push(args); return Promise.resolve(args); } },
channels: { surface: "provider:surface" },
});
assert.equal(exposed.name, "eveProvider");
assert.deepEqual(Object.keys(api), ["providerAdvertisement", "surface", "document", "submitCommand", "windowControl"]);
await api.surface({ surfaceId: "fixture" });
assert.deepEqual(calls, [["provider:surface", { surfaceId: "fixture" }]]);
});