From a8536b7a3c326aaac46bbd5d78c31e007c1f868e Mon Sep 17 00:00:00 2001 From: Peng Lyu Date: Thu, 14 Mar 2024 10:49:04 -0700 Subject: [PATCH] #207742. Failing test --- .../singlefolder-tests/notebook.api.test.ts | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/extensions/vscode-api-tests/src/singlefolder-tests/notebook.api.test.ts b/extensions/vscode-api-tests/src/singlefolder-tests/notebook.api.test.ts index 4990e30af59..e8a0ebaa10e 100644 --- a/extensions/vscode-api-tests/src/singlefolder-tests/notebook.api.test.ts +++ b/extensions/vscode-api-tests/src/singlefolder-tests/notebook.api.test.ts @@ -230,6 +230,30 @@ const apiTestSerializer: vscode.NotebookSerializer = { await closeAllEditors(); }); + test('#207742 - New Untitled notebook failed if previous untilted notebook is modified', async function () { + await vscode.commands.executeCommand('ipynb.newUntitledIpynb'); + assert.notStrictEqual(vscode.window.activeNotebookEditor, undefined, 'untitled notebook editor is not undefined'); + const document = vscode.window.activeNotebookEditor!.notebook; + + // open another text editor + const textDocument = await vscode.workspace.openTextDocument({ language: 'javascript', content: 'let abc = 0;' }); + await vscode.window.showTextDocument(textDocument); + + // insert a new cell to notebook document + const edit = new vscode.WorkspaceEdit(); + const notebookEdit = new vscode.NotebookEdit(new vscode.NotebookRange(1, 1), [new vscode.NotebookCellData(vscode.NotebookCellKind.Code, 'print(1)', 'python')]); + edit.set(document.uri, [notebookEdit]); + await vscode.workspace.applyEdit(edit); + + // switch to the notebook editor + await vscode.window.showNotebookDocument(document); + await closeAllEditors(); + await vscode.commands.executeCommand('ipynb.newUntitledIpynb'); + assert.notStrictEqual(vscode.window.activeNotebookEditor, undefined, 'untitled notebook editor is not undefined'); + + await closeAllEditors(); + }); + // TODO: Skipped due to notebook content provider removal test.skip('#115855 onDidSaveNotebookDocument', async function () { const resource = await createRandomNotebookFile();