@@ -30,13 +30,15 @@ function sleep(ms: number): Promise<void> {
30
30
} ) ;
31
31
}
32
32
33
+ const notebookType = 'notebookCoreTest' ;
34
+
33
35
export class Kernel {
34
36
35
37
readonly controller : vscode . NotebookController ;
36
38
37
39
readonly associatedNotebooks = new Set < string > ( ) ;
38
40
39
- constructor ( id : string , label : string , viewType : string = 'notebookCoreTest' ) {
41
+ constructor ( id : string , label : string , viewType : string = notebookType ) {
40
42
this . controller = vscode . notebooks . createNotebookController ( id , viewType , label ) ;
41
43
this . controller . executeHandler = this . _execute . bind ( this ) ;
42
44
this . controller . supportsExecutionOrder = true ;
@@ -75,15 +77,11 @@ function getFocusedCell(editor?: vscode.NotebookEditor) {
75
77
return editor ? editor . notebook . cellAt ( editor . selections [ 0 ] . start ) : undefined ;
76
78
}
77
79
78
- const apiTestContentProvider : vscode . NotebookContentProvider = {
79
- openNotebook : async ( resource : vscode . Uri ) : Promise < vscode . NotebookData > => {
80
- if ( / .* e m p t y \- .* \. v s c t e s t n b $ / . 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 ) {
87
85
const dto : vscode . NotebookData = {
88
86
metadata : { custom : { testMetadata : false } } ,
89
87
cells : [
@@ -134,7 +132,7 @@ const apiTestContentProvider: vscode.NotebookContentProvider = {
134
132
} ) ;
135
133
136
134
suiteSetup ( function ( ) {
137
- suiteDisposables . push ( vscode . workspace . registerNotebookContentProvider ( 'notebookCoreTest' , apiTestContentProvider ) ) ;
135
+ suiteDisposables . push ( vscode . workspace . registerNotebookSerializer ( notebookType , apiTestSerializer ) ) ;
138
136
} ) ;
139
137
140
138
let defaultKernel : Kernel ;
@@ -226,7 +224,7 @@ const apiTestContentProvider: vscode.NotebookContentProvider = {
226
224
} ) ;
227
225
228
226
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 } ) ;
230
228
assert . notStrictEqual ( vscode . window . activeNotebookEditor , undefined , 'untitled notebook editor is not undefined' ) ;
231
229
232
230
await closeAllEditors ( ) ;
0 commit comments