MCPcopy
hub / github.com/coder/mux / mockChatScript

Function mockChatScript

src/browser/stores/WorkspaceStore.test.ts:413–428  ·  view source on GitHub ↗
(steps: ChatStep[], options: { keepOpen?: boolean } = {})

Source from the content-addressed store, hash-verified

411}
412
413function mockChatScript(steps: ChatStep[], options: { keepOpen?: boolean } = {}): void {
414 mockOnChat.mockImplementation(async function* (
415 _input?: { workspaceId: string; mode?: unknown },
416 signalOptions?: { signal?: AbortSignal }
417 ): AsyncGenerator<WorkspaceChatMessage, void, unknown> {
418 for (const step of steps) {
419 const event = await runChatStep(step);
420 if (event) {
421 yield event;
422 }
423 }
424 if (options.keepOpen ?? false) {
425 await waitForAbortSignal(signalOptions?.signal);
426 }
427 });
428}
429
430function mockChatReconnectScript(
431 getSteps: (subscriptionCount: number, signal: AbortSignal | undefined) => ChatStep[]

Callers 1

Calls 2

runChatStepFunction · 0.85
waitForAbortSignalFunction · 0.85

Tested by

no test coverage detected