(args?: { emitter?: EventEmitter; overrides?: Partial<AIService> })
| 36 | } |
| 37 | |
| 38 | function createMockAiService(args?: { emitter?: EventEmitter; overrides?: Partial<AIService> }): { |
| 39 | aiEmitter: EventEmitter; |
| 40 | aiService: AIService; |
| 41 | } { |
| 42 | const aiEmitter = args?.emitter ?? new EventEmitter(); |
| 43 | return { |
| 44 | aiEmitter, |
| 45 | aiService: Object.assign(aiEmitter, { |
| 46 | isStreaming: mock((_workspaceId: string) => false), |
| 47 | stopStream: mock((_workspaceId: string) => Promise.resolve(Ok(undefined))), |
| 48 | getStreamInfo: mock((_workspaceId: string) => null), |
| 49 | streamMessage: mock((_history: MuxMessage[]) => |
| 50 | Promise.resolve(Ok(undefined)) |
| 51 | ) as unknown as AIService["streamMessage"], |
| 52 | ...args?.overrides, |
| 53 | }) as unknown as AIService, |
| 54 | }; |
| 55 | } |
| 56 | |
| 57 | export interface AgentSessionHarnessOptions { |
| 58 | workspaceId: string; |
no test coverage detected