Skip to content

Commit 5dc02ea

Browse files
roblourenspierceboggan
authored andcommitted
Fix random errors that show up in extension tests (#513)
1 parent 661133d commit 5dc02ea

File tree

2 files changed

+15
-13
lines changed

2 files changed

+15
-13
lines changed

src/extension/conversation/vscode-node/test/conversationFeature.test.ts

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -28,17 +28,14 @@ suite('Conversation feature test suite', function () {
2828
let instaService: IInstantiationService;
2929
let sandbox: sinon.SinonSandbox;
3030

31-
function createAccessor(vscodeExtensionContext?: IVSCodeExtensionContext) {
31+
function createAccessor() {
3232
const testingServiceCollection = createExtensionTestingServices();
3333
testingServiceCollection.define(ICombinedEmbeddingIndex, new SyncDescriptor(VSCodeCombinedIndexImpl, [/*useRemoteCache*/ false]));
3434
testingServiceCollection.define(INewWorkspacePreviewContentManager, new SyncDescriptor(NewWorkspacePreviewContentManagerImpl));
3535
testingServiceCollection.define(IGitCommitMessageService, new NoopGitCommitMessageService());
3636
testingServiceCollection.define(IDevContainerConfigurationService, new FailingDevContainerConfigurationService());
3737
testingServiceCollection.define(IIntentService, new SyncDescriptor(IntentService));
3838
testingServiceCollection.define(ISettingsEditorSearchService, new SyncDescriptor(NoopSettingsEditorSearchService));
39-
if (vscodeExtensionContext) {
40-
testingServiceCollection.define(IVSCodeExtensionContext, vscodeExtensionContext);
41-
}
4239

4340
accessor = testingServiceCollection.createTestingAccessor();
4441
instaService = accessor.get(IInstantiationService);
@@ -81,13 +78,6 @@ suite('Conversation feature test suite', function () {
8178
});
8279

8380
test('The feature is enabled and activated in test mode', function () {
84-
createAccessor({
85-
_serviceBrand: undefined,
86-
extension: { id: 'GitHub.copilot-chat' },
87-
extensionMode: vscode.ExtensionMode.Test,
88-
subscriptions: [],
89-
} as unknown as IVSCodeExtensionContext);
90-
9181
const conversationFeature = instaService.createInstance(ConversationFeature);
9282
try {
9383
const copilotToken = new CopilotToken({ token: 'token', expires_at: 0, refresh_in: 0, username: 'fake', isVscodeTeamMember: false, chat_enabled: true, copilot_plan: 'unknown' });

src/extension/test/vscode-node/services.ts

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,10 @@ import { CopilotTokenStore, ICopilotTokenStore } from '../../../platform/authent
77
import { BlockedExtensionService, IBlockedExtensionService } from '../../../platform/chat/common/blockedExtensionService';
88
import { IChatMLFetcher } from '../../../platform/chat/common/chatMLFetcher';
99
import { IChatSessionService } from '../../../platform/chat/common/chatSessionService';
10+
import { TestChatSessionService } from '../../../platform/chat/test/common/testChatSessionService';
1011
import { INaiveChunkingService, NaiveChunkingService } from '../../../platform/chunking/node/naiveChunkerService';
12+
import { MockRunCommandExecutionService } from '../../../platform/commands/common/mockRunCommandExecutionService';
13+
import { IRunCommandExecutionService } from '../../../platform/commands/common/runCommandExecutionService';
1114
import { IConfigurationService } from '../../../platform/configuration/common/configurationService';
1215
import { DefaultsOnlyConfigurationService } from '../../../platform/configuration/test/common/defaultsOnlyConfigurationService';
1316
import { IDebugOutputService } from '../../../platform/debug/common/debugOutputService';
@@ -55,6 +58,8 @@ import { IRequestLogger } from '../../../platform/requestLogger/node/requestLogg
5558
import { IReviewService } from '../../../platform/review/common/reviewService';
5659
import { IScopeSelector } from '../../../platform/scopeSelection/common/scopeSelection';
5760
import { ScopeSelectorImpl } from '../../../platform/scopeSelection/vscode-node/scopeSelectionImpl';
61+
import { ISearchService } from '../../../platform/search/common/searchService';
62+
import { SearchServiceImpl } from '../../../platform/search/vscode-node/searchServiceImpl';
5863
import { ISimulationTestContext, NulSimulationTestContext } from '../../../platform/simulationTestContext/common/simulationTestContext';
5964
import { ITabsAndEditorsService } from '../../../platform/tabs/common/tabsAndEditorsService';
6065
import { TabsAndEditorsServiceImpl } from '../../../platform/tabs/vscode/tabsAndEditorsServiceImpl';
@@ -94,6 +99,9 @@ import { CodeMapperService, ICodeMapperService } from '../../prompts/node/codeMa
9499
import { FixCookbookService, IFixCookbookService } from '../../prompts/node/inline/fixCookbookService';
95100
import { WorkspaceMutationManager } from '../../testing/node/setupTestsFileManager';
96101
import { IToolsService, NullToolsService } from '../../tools/common/toolsService';
102+
import { ToolGroupingService } from '../../tools/common/virtualTools/toolGroupingService';
103+
import { ToolGroupingCache } from '../../tools/common/virtualTools/virtualToolGroupCache';
104+
import { IToolGroupingCache, IToolGroupingService } from '../../tools/common/virtualTools/virtualToolTypes';
97105

98106
/**
99107
* A default context for VSCode extension testing, building on general one in `lib`.
@@ -106,7 +114,7 @@ export function createExtensionTestingServices(): TestingServiceCollection {
106114
testingServiceCollection.define(ISimulationTestContext, new SyncDescriptor(NulSimulationTestContext));
107115
testingServiceCollection.define(IRequestLogger, new SyncDescriptor(NullRequestLogger));
108116
testingServiceCollection.define(IFeedbackReporter, new SyncDescriptor(NullFeedbackReporterImpl));
109-
testingServiceCollection.define(IEndpointProvider, new SyncDescriptor(TestEndpointProvider, [undefined, undefined, undefined, undefined, undefined, false]));
117+
testingServiceCollection.define(IEndpointProvider, new SyncDescriptor(TestEndpointProvider, [undefined, undefined, undefined, undefined, undefined, false, undefined]));
110118
testingServiceCollection.define(ICopilotTokenStore, new SyncDescriptor(CopilotTokenStore));
111119
testingServiceCollection.define(IDomainService, new SyncDescriptor(DomainService));
112120
testingServiceCollection.define(ICAPIClientService, new SyncDescriptor(CAPIClientImpl));
@@ -158,9 +166,13 @@ export function createExtensionTestingServices(): TestingServiceCollection {
158166
testingServiceCollection.define(IScopeSelector, new SyncDescriptor(ScopeSelectorImpl));
159167
testingServiceCollection.define(IPromptPathRepresentationService, new SyncDescriptor(PromptPathRepresentationService));
160168
testingServiceCollection.define(IToolsService, new SyncDescriptor(NullToolsService));
161-
testingServiceCollection.define(IChatSessionService, new SyncDescriptor(NullToolsService));
169+
testingServiceCollection.define(IChatSessionService, new SyncDescriptor(TestChatSessionService));
162170
testingServiceCollection.define(INotebookService, new SyncDescriptor(SimulationNotebookService));
163171
testingServiceCollection.define(IThinkingDataService, new SyncDescriptor(ThinkingDataImpl));
172+
testingServiceCollection.define(IRunCommandExecutionService, new SyncDescriptor(MockRunCommandExecutionService));
173+
testingServiceCollection.define(ISearchService, new SyncDescriptor(SearchServiceImpl));
174+
testingServiceCollection.define(IToolGroupingCache, new SyncDescriptor(ToolGroupingCache));
175+
testingServiceCollection.define(IToolGroupingService, new SyncDescriptor(ToolGroupingService));
164176

165177
return testingServiceCollection;
166178
}

0 commit comments

Comments
 (0)