@@ -15,6 +15,7 @@ import { createRouter, createWebHistory } from "vue-router";
1515import { setupHints } from "@knime/components" ;
1616import { CURRENT_STATE_VERSION } from "@knime/hub-features/versions" ;
1717
18+ import { WorkflowInfo } from "@/api/gateway-api/generated-api" ;
1819import { isBrowser , isDesktop , runInEnvironment } from "@/environment" ;
1920import { APP_ROUTES } from "@/router/appRoutes" ;
2021import { router , routes } from "@/router/router" ;
@@ -324,6 +325,54 @@ describe("application::lifecycle", () => {
324325 expect ( mockedAPI . event . subscribeEvent ) . not . toHaveBeenCalled ( ) ;
325326 } ) ;
326327
328+ it ( "handles afterSetActivateWorkflow when a workflow is loaded" , async ( ) => {
329+ const { lifecycleStore, componentInteractionsStore } = loadStore ( ) ;
330+ const loadedWF = createWorkflow ( {
331+ info : { containerId : "root" } ,
332+ nodes : Object . create ( { } ) ,
333+ } ) ;
334+
335+ mockedAPI . workflow . getWorkflow . mockResolvedValue ( {
336+ workflow : loadedWF ,
337+ snapshotId : "snap" ,
338+ } ) ;
339+ await lifecycleStore . loadWorkflow ( {
340+ projectId : "wf1" ,
341+ workflowId : "root:0:12" ,
342+ } ) ;
343+
344+ expect (
345+ componentInteractionsStore . checkForLinkedComponentUpdates ,
346+ ) . toHaveBeenCalledWith ( { auto : true } ) ;
347+ } ) ;
348+
349+ it ( "closes version panel when entering a linked component" , async ( ) => {
350+ const { lifecycleStore, workflowVersionsStore } = loadStore ( ) ;
351+
352+ // @ts -expect-error - mock getter
353+ workflowVersionsStore . activeProjectVersionsModeStatus = "active" ;
354+
355+ const loadedWF = createWorkflow ( {
356+ info : {
357+ containerId : "root" ,
358+ linked : true ,
359+ containerType : WorkflowInfo . ContainerTypeEnum . Component ,
360+ } ,
361+ nodes : Object . create ( { } ) ,
362+ } ) ;
363+
364+ mockedAPI . workflow . getWorkflow . mockResolvedValue ( {
365+ workflow : loadedWF ,
366+ snapshotId : "snap" ,
367+ } ) ;
368+ await lifecycleStore . loadWorkflow ( {
369+ projectId : "wf1" ,
370+ workflowId : "root:0:12" ,
371+ } ) ;
372+
373+ expect ( workflowVersionsStore . deactivateVersionsMode ) . toHaveBeenCalled ( ) ;
374+ } ) ;
375+
327376 it ( "unloads workflow when another one is loaded" , async ( ) => {
328377 const { lifecycleStore, workflowStore, selectionStore } = loadStore ( ) ;
329378 const loadedWF = createWorkflow ( {
0 commit comments