import { describe, expect, it } from "@effect/vitest";import { Effect } from "effect"; import { createExecutor } from "@executor-js/sdk";import { makeTestConfig } from "@executor-js/sdk/testing"; import { desktopSettingsPlugin } from "./server"; describe("desktopSettingsPlugin", () => { it.effect("returns a browser handoff URL for Desktop-only settings", () => Effect.gen(function* () { const config = makeTestConfig({ plugins: [desktopSettingsPlugin({ webBaseUrl: "http://executor.test/base/" })] as const, }); const executor = yield* createExecutor(config); const result = yield* executor.tools.invoke("executor.desktopSettings.openSettings", {}); expect(result).toEqual({ url: "http://executor.test/base/plugins/desktop-settings/", flow: "Open this URL in Executor Desktop. The user can change port/auth or regenerate the password there; then rerun discovery/list tools to observe the restarted server.", }); yield* executor.close(); yield* Effect.promise(() => config.testDb.close()); }), );});
import { describe, expect, it } from "@effect/vitest";
import { Effect } from "effect";
import { createExecutor } from "@executor-js/sdk";
import { makeTestConfig } from "@executor-js/sdk/testing";
import { desktopSettingsPlugin } from "./server";
describe("desktopSettingsPlugin", () => {
it.effect("returns a browser handoff URL for Desktop-only settings", () =>
Effect.gen(function* () {
const config = makeTestConfig({
plugins: [desktopSettingsPlugin({ webBaseUrl: "http://executor.test/base/" })] as const,
});
const executor = yield* createExecutor(config);
const result = yield* executor.tools.invoke("executor.desktopSettings.openSettings", {});
expect(result).toEqual({
url: "http://executor.test/base/plugins/desktop-settings/",
flow: "Open this URL in Executor Desktop. The user can change port/auth or regenerate the password there; then rerun discovery/list tools to observe the restarted server.",
});
yield* executor.close();
yield* Effect.promise(() => config.testDb.close());
}),
);
});