MiniSearch / client /modules /textGenerationWithHorde.test.ts
github-actions[bot]
Sync from https://github.com/felladrin/MiniSearch
10d1fd4
import { beforeEach, describe, it, vi } from "vitest";
import {
mockPubSub,
mockTextGenerationUtilities,
setupCommonTextGenerationMocks,
testTextGenerationBehavior,
} from "./testUtils";
setupCommonTextGenerationMocks();
vi.mock("./pubSub", () => mockPubSub({ hordeModel: null }));
vi.mock("./textGenerationUtilities", () =>
mockTextGenerationUtilities({
getDefaultChatCompletionCreateParamsStreaming: vi.fn(),
}),
);
describe("generateTextWithHorde", () => {
beforeEach(() => {
vi.resetAllMocks();
});
it("calls helpers and updates state", async () => {
vi.doMock("./textGenerationWithHorde", () => ({
generateTextWithHorde: vi.fn().mockImplementation(async () => {
const pubSub = await import("./pubSub");
const utils = await import("./textGenerationUtilities");
await utils.canStartResponding();
pubSub.updateTextGenerationState("preparingToGenerate");
pubSub.updateResponse("generated text");
}),
generateChatWithHorde: vi.fn(),
}));
const mod = await import("./textGenerationWithHorde");
await testTextGenerationBehavior(
() => mod.generateTextWithHorde(),
"generated text",
);
});
});