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

Function createSessionHarness

src/node/services/agentSession.editMessageId.test.ts:36–67  ·  view source on GitHub ↗
(
    workspaceId: string,
    streamHandler: StreamMessageHandler = () => Promise.resolve(Ok(undefined))
  )

Source from the content-addressed store, hash-verified

34 let historyCleanup: (() => Promise<void>) | undefined;
35
36 async function createSessionHarness(
37 workspaceId: string,
38 streamHandler: StreamMessageHandler = () => Promise.resolve(Ok(undefined))
39 ) {
40 const { historyService, cleanup } = await createTestHistoryService();
41 historyCleanup = cleanup;
42
43 const streamMessage = mock(streamHandler);
44 const aiService = Object.assign(new EventEmitter(), {
45 isStreaming: mock((_workspaceId: string) => false),
46 stopStream: mock((_workspaceId: string) => Promise.resolve(Ok(undefined))),
47 streamMessage: streamMessage as unknown as AIService["streamMessage"],
48 }) as unknown as AIService;
49
50 return {
51 historyService,
52 streamMessage,
53 session: new AgentSession({
54 workspaceId,
55 config,
56 historyService,
57 aiService,
58 initStateManager: new EventEmitter() as unknown as InitStateManager,
59 backgroundProcessManager: {
60 cleanup: mock((_workspaceId: string) => Promise.resolve()),
61 setMessageQueued: mock((_workspaceId: string, _queued: boolean) => {
62 void _queued;
63 }),
64 } as unknown as BackgroundProcessManager,
65 }),
66 };
67 }
68
69 async function seedImageMessage(
70 workspaceId: string,

Calls 3

OkFunction · 0.90
createTestHistoryServiceFunction · 0.90
resolveMethod · 0.80

Tested by

no test coverage detected