Archived
1
0

chore(vscode): update to 1.53.2

These conflicts will be resolved in the following commits. We do it this way so
that PR review is possible.
This commit is contained in:
Joe Previte
2021-02-25 11:27:27 -07:00
1900 changed files with 83066 additions and 64589 deletions

View File

@ -4,7 +4,7 @@
*--------------------------------------------------------------------------------------------*/
const path = require('path');
const testRunner = require('vscode/lib/testrunner');
const testRunner = require('../../../../test/integration/electron/testrunner');
const options: any = {
ui: 'tdd',

View File

@ -33,7 +33,7 @@ suite.skip('vscode API - webview', () => {
test('webviews should be able to send and receive messages', async () => {
const webview = _register(vscode.window.createWebviewPanel(webviewId, 'title', { viewColumn: vscode.ViewColumn.One }, { enableScripts: true }));
const firstResponse = getMesssage(webview);
const firstResponse = getMessage(webview);
webview.webview.html = createHtmlDocumentWithBody(/*html*/`
<script>
const vscode = acquireVsCodeApi();
@ -49,7 +49,7 @@ suite.skip('vscode API - webview', () => {
test('webviews should not have scripts enabled by default', async () => {
const webview = _register(vscode.window.createWebviewPanel(webviewId, 'title', { viewColumn: vscode.ViewColumn.One }, {}));
const response = Promise.race<any>([
getMesssage(webview),
getMessage(webview),
new Promise<{}>(resolve => setTimeout(() => resolve({ value: '🎉' }), 1000))
]);
webview.webview.html = createHtmlDocumentWithBody(/*html*/`
@ -65,7 +65,7 @@ suite.skip('vscode API - webview', () => {
const webview = _register(vscode.window.createWebviewPanel(webviewId, 'title', { viewColumn: vscode.ViewColumn.One }, { enableScripts: true }));
{
const response = getMesssage(webview);
const response = getMessage(webview);
webview.webview.html = createHtmlDocumentWithBody(/*html*/`
<script>
const vscode = acquireVsCodeApi();
@ -75,7 +75,7 @@ suite.skip('vscode API - webview', () => {
assert.strictEqual((await response).value, 'first');
}
{
const response = getMesssage(webview);
const response = getMessage(webview);
webview.webview.html = createHtmlDocumentWithBody(/*html*/`
<script>
const vscode = acquireVsCodeApi();
@ -88,7 +88,7 @@ suite.skip('vscode API - webview', () => {
test.skip('webviews should preserve vscode API state when they are hidden', async () => {
const webview = _register(vscode.window.createWebviewPanel(webviewId, 'title', { viewColumn: vscode.ViewColumn.One }, { enableScripts: true }));
const ready = getMesssage(webview);
const ready = getMessage(webview);
webview.webview.html = createHtmlDocumentWithBody(/*html*/`
<script>
const vscode = acquireVsCodeApi();
@ -120,7 +120,7 @@ suite.skip('vscode API - webview', () => {
await vscode.window.showTextDocument(doc);
// And then back
const ready2 = getMesssage(webview);
const ready2 = getMessage(webview);
webview.reveal(vscode.ViewColumn.One);
await ready2;
@ -135,7 +135,7 @@ suite.skip('vscode API - webview', () => {
// Open webview in same column
const webview = _register(vscode.window.createWebviewPanel(webviewId, 'title', { viewColumn: vscode.ViewColumn.One }, { enableScripts: true }));
const ready = getMesssage(webview);
const ready = getMessage(webview);
webview.webview.html = statefulWebviewHtml;
await ready;
@ -152,7 +152,7 @@ suite.skip('vscode API - webview', () => {
test('webviews with retainContextWhenHidden should preserve their context when they are hidden', async () => {
const webview = _register(vscode.window.createWebviewPanel(webviewId, 'title', { viewColumn: vscode.ViewColumn.One }, { enableScripts: true, retainContextWhenHidden: true }));
const ready = getMesssage(webview);
const ready = getMessage(webview);
webview.webview.html = statefulWebviewHtml;
await ready;
@ -174,7 +174,7 @@ suite.skip('vscode API - webview', () => {
test('webviews with retainContextWhenHidden should preserve their page position when hidden', async () => {
const webview = _register(vscode.window.createWebviewPanel(webviewId, 'title', { viewColumn: vscode.ViewColumn.One }, { enableScripts: true, retainContextWhenHidden: true }));
const ready = getMesssage(webview);
const ready = getMessage(webview);
webview.webview.html = createHtmlDocumentWithBody(/*html*/`
${'<h1>Header</h1>'.repeat(200)}
<script>
@ -196,7 +196,7 @@ suite.skip('vscode API - webview', () => {
</script>`);
await ready;
const firstResponse = getMesssage(webview);
const firstResponse = getMessage(webview);
assert.strictEqual(Math.round((await firstResponse).value), 100);
@ -214,7 +214,7 @@ suite.skip('vscode API - webview', () => {
test('webviews with retainContextWhenHidden should be able to recive messages while hidden', async () => {
const webview = _register(vscode.window.createWebviewPanel(webviewId, 'title', { viewColumn: vscode.ViewColumn.One }, { enableScripts: true, retainContextWhenHidden: true }));
const ready = getMesssage(webview);
const ready = getMessage(webview);
webview.webview.html = statefulWebviewHtml;
await ready;
@ -264,7 +264,7 @@ suite.skip('vscode API - webview', () => {
vscode.postMessage({ type: 'ready' });
</script>`);
const ready = getMesssage(webview);
const ready = getMessage(webview);
await ready;
{
@ -341,7 +341,7 @@ suite.skip('vscode API - webview', () => {
img.addEventListener('error', () => { vscode.postMessage({ value: false }); });
</script>`);
const firstResponse = getMesssage(webview);
const firstResponse = getMessage(webview);
assert.strictEqual((await firstResponse).value, true);
});
@ -365,7 +365,7 @@ suite.skip('vscode API - webview', () => {
assert.strictEqual((await viewStateChanged).webviewPanel.viewColumn, vscode.ViewColumn.One);
const firstResponse = getMesssage(webview);
const firstResponse = getMessage(webview);
webview.webview.html = createHtmlDocumentWithBody(/*html*/`
<script>
const vscode = acquireVsCodeApi();
@ -382,7 +382,7 @@ suite.skip('vscode API - webview', () => {
const expectedText = `webview text from: ${Date.now()}!`;
const webview = _register(vscode.window.createWebviewPanel(webviewId, 'title', { viewColumn: vscode.ViewColumn.One }, { enableScripts: true, retainContextWhenHidden: true }));
const ready = getMesssage(webview);
const ready = getMessage(webview);
webview.webview.html = createHtmlDocumentWithBody(/*html*/`
@ -437,7 +437,7 @@ const statefulWebviewHtml = createHtmlDocumentWithBody(/*html*/ `
</script>`);
function getMesssage<R = any>(webview: vscode.WebviewPanel): Promise<R> {
function getMessage<R = any>(webview: vscode.WebviewPanel): Promise<R> {
return new Promise<R>(resolve => {
const sub = webview.webview.onDidReceiveMessage(message => {
sub.dispose();
@ -447,7 +447,7 @@ function getMesssage<R = any>(webview: vscode.WebviewPanel): Promise<R> {
}
function sendRecieveMessage<T = {}, R = any>(webview: vscode.WebviewPanel, message: T): Promise<R> {
const p = getMesssage<R>(webview);
const p = getMessage<R>(webview);
webview.webview.postMessage(message);
return p;
}

View File

@ -132,7 +132,10 @@ suite('vscode API - workspace', () => {
let d0 = vscode.workspace.onDidCloseTextDocument(e => closed = e);
return vscode.window.showTextDocument(doc).then(() => {
return doc.save().then(() => {
return doc.save().then((didSave: boolean) => {
assert.equal(didSave, true, `FAILED to save${doc.uri.toString()}`);
assert.ok(closed === doc);
assert.ok(!doc.isDirty);
assert.ok(fs.existsSync(path));
@ -975,6 +978,81 @@ suite('vscode API - workspace', () => {
assert.equal(document.getText(), expected);
});
test('Should send a single FileWillRenameEvent instead of separate events when moving multiple files at once#111867', async function () {
const file1 = await createRandomFile();
const file2 = await createRandomFile();
const file1New = await createRandomFile();
const file2New = await createRandomFile();
const event = new Promise<vscode.FileWillRenameEvent>(resolve => {
let sub = vscode.workspace.onWillRenameFiles(e => {
sub.dispose();
resolve(e);
});
});
const we = new vscode.WorkspaceEdit();
we.renameFile(file1, file1New, { overwrite: true });
we.renameFile(file2, file2New, { overwrite: true });
await vscode.workspace.applyEdit(we);
const e = await event;
assert.strictEqual(e.files.length, 2);
assert.strictEqual(e.files[0].oldUri.toString(), file1.toString());
assert.strictEqual(e.files[1].oldUri.toString(), file2.toString());
});
test('Should send a single FileWillRenameEvent instead of separate events when moving multiple files at once#111867', async function () {
const event = new Promise<vscode.FileWillCreateEvent>(resolve => {
let sub = vscode.workspace.onWillCreateFiles(e => {
sub.dispose();
resolve(e);
});
});
const file1 = vscode.Uri.parse(`fake-fs:/${rndName()}`);
const file2 = vscode.Uri.parse(`fake-fs:/${rndName()}`);
const we = new vscode.WorkspaceEdit();
we.createFile(file1, { overwrite: true });
we.createFile(file2, { overwrite: true });
await vscode.workspace.applyEdit(we);
const e = await event;
assert.strictEqual(e.files.length, 2);
assert.strictEqual(e.files[0].toString(), file1.toString());
assert.strictEqual(e.files[1].toString(), file2.toString());
});
test('Should send a single FileWillRenameEvent instead of separate events when moving multiple files at once#111867', async function () {
const file1 = await createRandomFile();
const file2 = await createRandomFile();
const event = new Promise<vscode.FileWillDeleteEvent>(resolve => {
let sub = vscode.workspace.onWillDeleteFiles(e => {
sub.dispose();
resolve(e);
});
});
const we = new vscode.WorkspaceEdit();
we.deleteFile(file1);
we.deleteFile(file2);
await vscode.workspace.applyEdit(we);
const e = await event;
assert.strictEqual(e.files.length, 2);
assert.strictEqual(e.files[0].toString(), file1.toString());
assert.strictEqual(e.files[1].toString(), file2.toString());
});
test('issue #107739 - Redo of rename Java Class name has no effect', async () => {
const file = await createRandomFile('hello');
const fileName = basename(file.fsPath);

View File

@ -4,7 +4,7 @@
*--------------------------------------------------------------------------------------------*/
const path = require('path');
const testRunner = require('vscode/lib/testrunner');
const testRunner = require('../../../../test/integration/electron/testrunner');
const options: any = {
ui: 'tdd',