Skip to content

Commit c60980c

Browse files
authored
Adopt notebook serializer for test (microsoft#165078)
For microsoft#160580
1 parent 886f8d8 commit c60980c

File tree

1 file changed

+10
-12
lines changed

1 file changed

+10
-12
lines changed

extensions/vscode-api-tests/src/singlefolder-tests/notebook.api.test.ts

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -30,13 +30,15 @@ function sleep(ms: number): Promise<void> {
3030
});
3131
}
3232

33+
const notebookType = 'notebookCoreTest';
34+
3335
export class Kernel {
3436

3537
readonly controller: vscode.NotebookController;
3638

3739
readonly associatedNotebooks = new Set<string>();
3840

39-
constructor(id: string, label: string, viewType: string = 'notebookCoreTest') {
41+
constructor(id: string, label: string, viewType: string = notebookType) {
4042
this.controller = vscode.notebooks.createNotebookController(id, viewType, label);
4143
this.controller.executeHandler = this._execute.bind(this);
4244
this.controller.supportsExecutionOrder = true;
@@ -75,15 +77,11 @@ function getFocusedCell(editor?: vscode.NotebookEditor) {
7577
return editor ? editor.notebook.cellAt(editor.selections[0].start) : undefined;
7678
}
7779

78-
const apiTestContentProvider: vscode.NotebookContentProvider = {
79-
openNotebook: async (resource: vscode.Uri): Promise<vscode.NotebookData> => {
80-
if (/.*empty\-.*\.vsctestnb$/.test(resource.path)) {
81-
return {
82-
metadata: {},
83-
cells: []
84-
};
85-
}
86-
80+
const apiTestSerializer: vscode.NotebookSerializer = {
81+
serializeNotebook(_data, _token) {
82+
return new Uint8Array();
83+
},
84+
deserializeNotebook(_content, _token) {
8785
const dto: vscode.NotebookData = {
8886
metadata: { custom: { testMetadata: false } },
8987
cells: [
@@ -134,7 +132,7 @@ const apiTestContentProvider: vscode.NotebookContentProvider = {
134132
});
135133

136134
suiteSetup(function () {
137-
suiteDisposables.push(vscode.workspace.registerNotebookContentProvider('notebookCoreTest', apiTestContentProvider));
135+
suiteDisposables.push(vscode.workspace.registerNotebookSerializer(notebookType, apiTestSerializer));
138136
});
139137

140138
let defaultKernel: Kernel;
@@ -226,7 +224,7 @@ const apiTestContentProvider: vscode.NotebookContentProvider = {
226224
});
227225

228226
test('#102411 - untitled notebook creation failed', async function () {
229-
await vscode.commands.executeCommand('workbench.action.files.newUntitledFile', { viewType: 'notebookCoreTest' });
227+
await vscode.commands.executeCommand('workbench.action.files.newUntitledFile', { viewType: notebookType });
230228
assert.notStrictEqual(vscode.window.activeNotebookEditor, undefined, 'untitled notebook editor is not undefined');
231229

232230
await closeAllEditors();

0 commit comments

Comments
 (0)