39 lines
1.2 KiB
TypeScript
39 lines
1.2 KiB
TypeScript
// @ts-nocheck
|
|
import { describe, expect, it, vi } from "vitest";
|
|
|
|
const { execute } = vi.hoisted(() => ({
|
|
execute: vi.fn(async () => ({
|
|
ok: true,
|
|
data: { before: null, after: { keys: ["key1", "key2"] } },
|
|
correlationId: "emulator",
|
|
})),
|
|
}));
|
|
vi.mock("@/features/housekeeping/domains/content/services/mutations", () => ({
|
|
contentMutationService: { execute },
|
|
}));
|
|
vi.mock("@/lib/permissions", () => ({
|
|
PERMS: { SETTINGS_EDIT: "settings.edit" },
|
|
}));
|
|
vi.mock("@/lib/safe-action", () => ({
|
|
adminAction: (_options, handler) => handler,
|
|
}));
|
|
vi.mock("@/lib/safe-action-shared", () => ({ actionOk: () => "ok" }));
|
|
|
|
describe("saveEmulatorSettings", () => {
|
|
it("delegates the third translation store and preserves result shape", async () => {
|
|
const handler = (await import("./emulator"))
|
|
.saveEmulatorSettings as unknown as (ctx: unknown) => Promise<string>;
|
|
const result = await handler({
|
|
data: { settings: { key1: "val1", key2: "val2" } },
|
|
session: { user: { id: "1" } },
|
|
requestId: "emulator",
|
|
});
|
|
expect(execute).toHaveBeenCalledWith(
|
|
{ correlationId: "emulator", expectedActorId: 1, legacy: true },
|
|
"translation.emulator.save",
|
|
{ settings: { key1: "val1", key2: "val2" } },
|
|
);
|
|
expect(result).toBe("ok");
|
|
});
|
|
});
|