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

Function createAiService

src/node/services/agentSession.budgetGate.test.ts:46–67  ·  view source on GitHub ↗
(workspaceId: string)

Source from the content-addressed store, hash-verified

44}
45
46function createAiService(workspaceId: string): AIService {
47 const aiEmitter = new EventEmitter();
48 return Object.assign(aiEmitter, {
49 isStreaming: mock((_workspaceId: string) => false),
50 stopStream: mock((_workspaceId: string) => Promise.resolve(Ok(undefined))),
51 streamMessage: mock((_request: unknown) => Promise.resolve(Ok(undefined))),
52 getStreamInfo: mock((_workspaceId: string) => null),
53 getProvidersConfig: mock(() => null),
54 getWorkspaceMetadata: mock((_workspaceId: string) =>
55 Promise.resolve(
56 Ok({
57 id: workspaceId,
58 name: workspaceId,
59 projectName: "project",
60 projectPath: PROJECT_PATH,
61 runtimeConfig: { type: "local" },
62 })
63 )
64 ),
65 replayStream: mock((_workspaceId: string) => Promise.resolve()),
66 }) as unknown as AIService;
67}
68
69async function createSessionHarness(workspaceId: string): Promise<SessionHarness> {
70 const { historyService, config, cleanup } = await createTestHistoryService();

Callers 1

createSessionHarnessFunction · 0.70

Calls 2

OkFunction · 0.90
resolveMethod · 0.80

Tested by

no test coverage detected