@@ -650,10 +650,34 @@ suite(`Notebook Controller`, function () {
650650 } ) ;
651651
652652 test ( 'Should not attach variable provider when API is not available' , function ( ) {
653- // Arrange: Mock controller without variableProvider property
654- const controllerWithoutApi = mock < NotebookController > ( ) ;
655- when ( controllerWithoutApi . onDidChangeSelectedNotebooks ) . thenReturn ( onDidChangeSelectedNotebooks . event ) ;
656- // Don't add variableProvider property to simulate API not being available
653+ // Arrange: Create a plain object without variableProvider property
654+ const controllerWithoutApi = {
655+ onDidChangeSelectedNotebooks : onDidChangeSelectedNotebooks . event ,
656+ id : 'test-id' ,
657+ notebookType : 'jupyter-notebook' ,
658+ supportedLanguages : [ ] ,
659+ supportsExecutionOrder : true ,
660+ description : '' ,
661+ detail : '' ,
662+ label : 'Test Kernel' ,
663+ dispose : ( ) => {
664+ /* noop */
665+ } ,
666+ createNotebookCellExecution : ( ) => ( { } ) as any ,
667+ createNotebookExecution : ( ) => ( { } ) as any ,
668+ executeHandler : ( ) => {
669+ /* noop */
670+ } ,
671+ interruptHandler : undefined ,
672+ updateNotebookAffinity : ( ) => {
673+ /* noop */
674+ } ,
675+ rendererScripts : [ ] ,
676+ onDidReceiveMessage : new EventEmitter < any > ( ) . event ,
677+ postMessage : ( ) => Promise . resolve ( true ) ,
678+ asWebviewUri : ( uri : Uri ) => uri
679+ // Note: no variableProvider property to simulate API not being available
680+ } as NotebookController ;
657681
658682 when (
659683 mockedVSCodeNamespaces . notebooks . createNotebookController (
@@ -663,7 +687,7 @@ suite(`Notebook Controller`, function () {
663687 anything ( ) ,
664688 anything ( )
665689 )
666- ) . thenReturn ( instance ( controllerWithoutApi ) ) ;
690+ ) . thenReturn ( controllerWithoutApi ) ;
667691
668692 // Act
669693 const result = VSCodeNotebookController . create (
@@ -683,9 +707,9 @@ suite(`Notebook Controller`, function () {
683707
684708 // Assert
685709 assert . isDefined ( result ) ;
686- assert . isUndefined (
687- ( result . controller as any ) . variableProvider ,
688- 'Variable provider should not be attached when API is not available'
710+ assert . isFalse (
711+ 'variableProvider' in result . controller ,
712+ 'Variable provider property should not exist when API is not available'
689713 ) ;
690714 } ) ;
691715
0 commit comments