()
| 5931 | let cleanupHistory: () => Promise<void>; |
| 5932 | |
| 5933 | async function makeService(): Promise<WorkspaceService> { |
| 5934 | const aiService = { |
| 5935 | isStreaming: mock(() => false), |
| 5936 | on: mock(() => undefined), |
| 5937 | off: mock(() => undefined), |
| 5938 | } as unknown as AIService; |
| 5939 | const { historyService, cleanup } = await createTestHistoryService(); |
| 5940 | cleanupHistory = cleanup; |
| 5941 | return new WorkspaceService( |
| 5942 | { |
| 5943 | srcDir: "/tmp/test", |
| 5944 | getSessionDir: mock(() => "/tmp/test/sessions"), |
| 5945 | generateStableId: mock(() => "test-id"), |
| 5946 | findWorkspace: mock(() => null), |
| 5947 | } as unknown as Config, |
| 5948 | historyService, |
| 5949 | aiService, |
| 5950 | { |
| 5951 | on: mock(() => undefined), |
| 5952 | getInitState: mock(() => undefined), |
| 5953 | } as unknown as InitStateManager, |
| 5954 | {} as ExtensionMetadataService, |
| 5955 | { cleanup: mock(() => Promise.resolve()) } as unknown as BackgroundProcessManager |
| 5956 | ); |
| 5957 | } |
| 5958 | |
| 5959 | function setGoal(goal: GoalRecordV1 | null): void { |
| 5960 | // Mock the canonical WorkspaceGoalService.assertPricedModelForBudgetedGoal |
no test coverage detected