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

Function createWorkspaceServiceForTest

src/node/services/workspaceService.test.ts:158–189  ·  view source on GitHub ↗
(options: {
  config: Partial<Config> | Config;
  historyService?: HistoryService;
  aiService?: AIService;
  initStateManager?: InitStateManager;
  extensionMetadata?: ExtensionMetadataService;
  backgroundProcessManager?: BackgroundProcessManager;
  sessionUsageService?: WorkspaceServiceArgs[6];
  policyService?: WorkspaceServiceArgs[7];
  telemetryService?: WorkspaceServiceArgs[8];
  experimentsService?: WorkspaceServiceArgs[9];
  sessionTimingService?: WorkspaceServiceArgs[10];
  opResolver?: WorkspaceServiceArgs[11];
})

Source from the content-addressed store, hash-verified

156}
157
158function createWorkspaceServiceForTest(options: {
159 config: Partial<Config> | Config;
160 historyService?: HistoryService;
161 aiService?: AIService;
162 initStateManager?: InitStateManager;
163 extensionMetadata?: ExtensionMetadataService;
164 backgroundProcessManager?: BackgroundProcessManager;
165 sessionUsageService?: WorkspaceServiceArgs[6];
166 policyService?: WorkspaceServiceArgs[7];
167 telemetryService?: WorkspaceServiceArgs[8];
168 experimentsService?: WorkspaceServiceArgs[9];
169 sessionTimingService?: WorkspaceServiceArgs[10];
170 opResolver?: WorkspaceServiceArgs[11];
171}): WorkspaceService {
172 // Test helpers often don't exercise HistoryService; use a narrow stub for those cases.
173 // eslint-disable-next-line @typescript-eslint/consistent-type-assertions
174 const defaultHistoryService: HistoryService = {} as HistoryService;
175 return new WorkspaceService(
176 options.config as Config,
177 options.historyService ?? defaultHistoryService,
178 options.aiService ?? createMockAIService(),
179 options.initStateManager ?? (mockInitStateManager as InitStateManager),
180 options.extensionMetadata ?? (mockExtensionMetadataService as ExtensionMetadataService),
181 options.backgroundProcessManager ?? (mockBackgroundProcessManager as BackgroundProcessManager),
182 options.sessionUsageService,
183 options.policyService,
184 options.telemetryService,
185 options.experimentsService,
186 options.sessionTimingService,
187 options.opResolver
188 );
189}
190
191async function setWorkspaceGoalOk(
192 goalService: WorkspaceGoalService,

Callers 3

createServiceHarnessFunction · 0.70
createHarnessFunction · 0.70

Calls 1

createMockAIServiceFunction · 0.70

Tested by

no test coverage detected