mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-16 18:46:40 -05:00
Merge from vscode 2c306f762bf9c3db82dc06c7afaa56ef46d72f79 (#14050)
* Merge from vscode 2c306f762bf9c3db82dc06c7afaa56ef46d72f79 * Fix breaks * Extension management fixes * Fix breaks in windows bundling * Fix/skip failing tests * Update distro * Add clear to nuget.config * Add hygiene task * Bump distro * Fix hygiene issue * Add build to hygiene exclusion * Update distro * Update hygiene * Hygiene exclusions * Update tsconfig * Bump distro for server breaks * Update build config * Update darwin path * Add done calls to notebook tests * Skip failing tests * Disable smoke tests
This commit is contained in:
@@ -144,13 +144,14 @@ export interface IWorkspaceFolder extends IWorkspaceFolderData {
|
||||
|
||||
export class Workspace implements IWorkspace {
|
||||
|
||||
private _foldersMap: TernarySearchTree<URI, WorkspaceFolder> = TernarySearchTree.forUris<WorkspaceFolder>();
|
||||
private _foldersMap: TernarySearchTree<URI, WorkspaceFolder> = TernarySearchTree.forUris<WorkspaceFolder>(this._ignorePathCasing);
|
||||
private _folders!: WorkspaceFolder[];
|
||||
|
||||
constructor(
|
||||
private _id: string,
|
||||
folders: WorkspaceFolder[] = [],
|
||||
private _configuration: URI | null = null
|
||||
folders: WorkspaceFolder[],
|
||||
private _configuration: URI | null,
|
||||
private _ignorePathCasing: (key: URI) => boolean,
|
||||
) {
|
||||
this.folders = folders;
|
||||
}
|
||||
@@ -158,6 +159,7 @@ export class Workspace implements IWorkspace {
|
||||
update(workspace: Workspace) {
|
||||
this._id = workspace.id;
|
||||
this._configuration = workspace.configuration;
|
||||
this._ignorePathCasing = workspace._ignorePathCasing;
|
||||
this.folders = workspace.folders;
|
||||
}
|
||||
|
||||
@@ -195,7 +197,7 @@ export class Workspace implements IWorkspace {
|
||||
}
|
||||
|
||||
private updateFoldersMap(): void {
|
||||
this._foldersMap = TernarySearchTree.forUris<WorkspaceFolder>();
|
||||
this._foldersMap = TernarySearchTree.forUris<WorkspaceFolder>(this._ignorePathCasing);
|
||||
for (const folder of this.folders) {
|
||||
this._foldersMap.set(folder.uri, folder);
|
||||
}
|
||||
|
||||
@@ -4,8 +4,19 @@
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
|
||||
import { URI } from 'vs/base/common/uri';
|
||||
import { Workspace, toWorkspaceFolder } from 'vs/platform/workspace/common/workspace';
|
||||
import { isWindows } from 'vs/base/common/platform';
|
||||
import { Workspace as BaseWorkspace, toWorkspaceFolder, WorkspaceFolder } from 'vs/platform/workspace/common/workspace';
|
||||
import { isLinux, isWindows } from 'vs/base/common/platform';
|
||||
|
||||
export class Workspace extends BaseWorkspace {
|
||||
constructor(
|
||||
id: string,
|
||||
folders: WorkspaceFolder[] = [],
|
||||
configuration: URI | null = null,
|
||||
ignorePathCasing: (key: URI) => boolean = () => !isLinux
|
||||
) {
|
||||
super(id, folders, configuration, ignorePathCasing);
|
||||
}
|
||||
}
|
||||
|
||||
const wsUri = URI.file(isWindows ? 'C:\\testWorkspace' : '/testWorkspace');
|
||||
export const TestWorkspace = testWorkspace(wsUri);
|
||||
|
||||
@@ -8,7 +8,7 @@ import * as path from 'vs/base/common/path';
|
||||
import { Workspace, toWorkspaceFolders, WorkspaceFolder } from 'vs/platform/workspace/common/workspace';
|
||||
import { URI } from 'vs/base/common/uri';
|
||||
import { IRawFileWorkspaceFolder } from 'vs/platform/workspaces/common/workspaces';
|
||||
import { isWindows } from 'vs/base/common/platform';
|
||||
import { isLinux, isWindows } from 'vs/base/common/platform';
|
||||
|
||||
suite('Workspace', () => {
|
||||
|
||||
@@ -27,7 +27,7 @@ suite('Workspace', () => {
|
||||
|
||||
test('getFolder returns the folder with given uri', () => {
|
||||
const expected = new WorkspaceFolder({ uri: testFolderUri, name: '', index: 2 });
|
||||
let testObject = new Workspace('', [new WorkspaceFolder({ uri: mainFolderUri, name: '', index: 0 }), expected, new WorkspaceFolder({ uri: URI.file('/src/code'), name: '', index: 2 })]);
|
||||
let testObject = new Workspace('', [new WorkspaceFolder({ uri: mainFolderUri, name: '', index: 0 }), expected, new WorkspaceFolder({ uri: URI.file('/src/code'), name: '', index: 2 })], null, () => !isLinux);
|
||||
|
||||
const actual = testObject.getFolder(expected.uri);
|
||||
|
||||
@@ -36,7 +36,7 @@ suite('Workspace', () => {
|
||||
|
||||
test('getFolder returns the folder if the uri is sub', () => {
|
||||
const expected = new WorkspaceFolder({ uri: testFolderUri, name: '', index: 0 });
|
||||
let testObject = new Workspace('', [expected, new WorkspaceFolder({ uri: mainFolderUri, name: '', index: 1 }), new WorkspaceFolder({ uri: URI.file('/src/code'), name: '', index: 2 })]);
|
||||
let testObject = new Workspace('', [expected, new WorkspaceFolder({ uri: mainFolderUri, name: '', index: 1 }), new WorkspaceFolder({ uri: URI.file('/src/code'), name: '', index: 2 })], null, () => !isLinux);
|
||||
|
||||
const actual = testObject.getFolder(URI.file(path.join(fileFolder, 'test/a')));
|
||||
|
||||
@@ -45,7 +45,7 @@ suite('Workspace', () => {
|
||||
|
||||
test('getFolder returns the closest folder if the uri is sub', () => {
|
||||
const expected = new WorkspaceFolder({ uri: testFolderUri, name: '', index: 2 });
|
||||
let testObject = new Workspace('', [new WorkspaceFolder({ uri: mainFolderUri, name: '', index: 0 }), new WorkspaceFolder({ uri: URI.file('/src/code'), name: '', index: 1 }), expected]);
|
||||
let testObject = new Workspace('', [new WorkspaceFolder({ uri: mainFolderUri, name: '', index: 0 }), new WorkspaceFolder({ uri: URI.file('/src/code'), name: '', index: 1 }), expected], null, () => !isLinux);
|
||||
|
||||
const actual = testObject.getFolder(URI.file(path.join(fileFolder, 'test/a')));
|
||||
|
||||
@@ -54,7 +54,7 @@ suite('Workspace', () => {
|
||||
|
||||
test('getFolder returns the folder even if the uri has query path', () => {
|
||||
const expected = new WorkspaceFolder({ uri: testFolderUri, name: '', index: 2 });
|
||||
let testObject = new Workspace('', [new WorkspaceFolder({ uri: mainFolderUri, name: '', index: 0 }), new WorkspaceFolder({ uri: URI.file('/src/code'), name: '', index: 1 }), expected]);
|
||||
let testObject = new Workspace('', [new WorkspaceFolder({ uri: mainFolderUri, name: '', index: 0 }), new WorkspaceFolder({ uri: URI.file('/src/code'), name: '', index: 1 }), expected], null, () => !isLinux);
|
||||
|
||||
const actual = testObject.getFolder(URI.file(path.join(fileFolder, 'test/a')).with({ query: 'somequery' }));
|
||||
|
||||
@@ -62,7 +62,7 @@ suite('Workspace', () => {
|
||||
});
|
||||
|
||||
test('getFolder returns null if the uri is not sub', () => {
|
||||
let testObject = new Workspace('', [new WorkspaceFolder({ uri: testFolderUri, name: '', index: 0 }), new WorkspaceFolder({ uri: URI.file('/src/code'), name: '', index: 1 })]);
|
||||
let testObject = new Workspace('', [new WorkspaceFolder({ uri: testFolderUri, name: '', index: 0 }), new WorkspaceFolder({ uri: URI.file('/src/code'), name: '', index: 1 })], null, () => !isLinux);
|
||||
|
||||
const actual = testObject.getFolder(URI.file(path.join(fileFolder, 'main/a')));
|
||||
|
||||
|
||||
Reference in New Issue
Block a user