Path: blob/main/extensions/copilot/src/extension/test/vscode-node/textDocumentManager.test.ts
13399 views
/*---------------------------------------------------------------------------------------------1* Copyright (c) Microsoft Corporation. All rights reserved.2* Licensed under the MIT License. See License.txt in the project root for license information.3*--------------------------------------------------------------------------------------------*/45import assert from 'assert';6import * as sinon from 'sinon';7import { workspace } from 'vscode';8import { ExtensionTextDocumentManager } from '../../../platform/workspace/vscode/workspaceServiceImpl';9import { URI } from '../../../util/vs/base/common/uri';10import { IInstantiationService } from '../../../util/vs/platform/instantiation/common/instantiation';11import { createExtensionTestingServices } from './services';1213suite('extension text document manager', () => {14test('no workspace folders by default', () => {15const accessor = createExtensionTestingServices().createTestingAccessor();16const instantiationService = accessor.get(IInstantiationService);17const manager = instantiationService.createInstance(ExtensionTextDocumentManager);1819const folders = manager.getWorkspaceFolders();2021assert.deepStrictEqual(folders, []);22});2324test('workspace folders', () => {25const accessor = createExtensionTestingServices().createTestingAccessor();26const instantiationService = accessor.get(IInstantiationService);27const manager = instantiationService.createInstance(ExtensionTextDocumentManager);2829sinon.stub(workspace, 'workspaceFolders').value([30{31uri: URI.file('/path/to/folder1'),32name: 'folder1',33index: 0,34},35{36uri: URI.file('/path/to/folder2'),3738name: 'folder2',39index: 1,40},41]);4243const folders = manager.getWorkspaceFolders();4445assert.deepStrictEqual(folders, [URI.parse('file:///path/to/folder1'), URI.parse('file:///path/to/folder2')]);46});47});484950