Merge commit 'ae2202631366eea0aaed6f881f87c2b44ae1b647' into sandy081/policy

This commit is contained in:
Joao Moreno
2022-05-18 20:12:22 +02:00
202 changed files with 3945 additions and 2369 deletions

View File

@@ -12,6 +12,7 @@ import { MainThreadDocumentsShape } from 'vs/workbench/api/common/extHost.protoc
import { IModelChangedEvent } from 'vs/editor/common/model/mirrorTextModel';
import { mock } from 'vs/base/test/common/mock';
import * as perfData from './extHostDocumentData.test.perf-data';
import { setDefaultGetWordAtTextConfig } from 'vs/editor/common/core/wordHelper';
suite('ExtHostDocumentData', () => {
@@ -316,14 +317,22 @@ suite('ExtHostDocumentData', () => {
perfData._$_$_expensive
], '\n', 1, 'text', false);
let range = data.document.getWordRangeAtPosition(new Position(0, 1_177_170), regex)!;
assert.strictEqual(range, undefined);
// this test only ensures that we eventually give and timeout (when searching "funny" words and long lines)
// for the sake of speedy tests we lower the timeBudget here
const config = setDefaultGetWordAtTextConfig({ maxLen: 1000, windowSize: 15, timeBudget: 30 });
try {
let range = data.document.getWordRangeAtPosition(new Position(0, 1_177_170), regex)!;
assert.strictEqual(range, undefined);
const pos = new Position(0, 1177170);
range = data.document.getWordRangeAtPosition(pos)!;
assert.ok(range);
assert.ok(range.contains(pos));
assert.strictEqual(data.document.getText(range), 'TaskDefinition');
const pos = new Position(0, 1177170);
range = data.document.getWordRangeAtPosition(pos)!;
assert.ok(range);
assert.ok(range.contains(pos));
assert.strictEqual(data.document.getText(range), 'TaskDefinition');
} finally {
config.dispose();
}
});
test('Rename popup sometimes populates with text on the left side omitted #96013', function () {

View File

@@ -19,6 +19,7 @@ import { TreeItemCollapsibleState, ITreeItem, IRevealOptions } from 'vs/workbenc
import { NullLogService } from 'vs/platform/log/common/log';
import type { IDisposable } from 'vs/base/common/lifecycle';
import { nullExtensionDescription as extensionsDescription } from 'vs/workbench/services/extensions/common/extensions';
import { runWithFakedTimers } from 'vs/base/test/common/timeTravelScheduler';
suite('ExtHostTreeView', function () {
@@ -250,15 +251,17 @@ suite('ExtHostTreeView', function () {
});
async function runWithEventMerging(action: (resolve: () => void) => void) {
await new Promise<void>((resolve) => {
let subscription: IDisposable | undefined = undefined;
subscription = target.onRefresh.event(() => {
subscription!.dispose();
resolve();
await runWithFakedTimers({}, async () => {
await new Promise<void>((resolve) => {
let subscription: IDisposable | undefined = undefined;
subscription = target.onRefresh.event(() => {
subscription!.dispose();
resolve();
});
onDidChangeTreeNode.fire(getNode('b'));
});
onDidChangeTreeNode.fire(getNode('b'));
await new Promise<void>(action);
});
await new Promise<void>(action);
}
test('refresh parent and child node trigger refresh only on parent - scenario 1', async () => {