@@ -568,6 +568,7 @@ export const connectByotWithSingleRepo = async (
568568
569569 const workspacesRepositoryFilter = page . getByLabel ( 'Workspace repository filter' )
570570 await expect ( workspacesRepositoryFilter ) . toBeVisible ( )
571+ await expect ( workspacesRepositoryFilter ) . toBeEnabled ( )
571572 await workspacesRepositoryFilter . selectOption ( 'knightedcodemonkey/develop' )
572573 await expect ( workspacesRepositoryFilter ) . toHaveValue ( 'knightedcodemonkey/develop' )
573574
@@ -576,21 +577,42 @@ export const connectByotWithSingleRepo = async (
576577 name : 'Initialize' ,
577578 exact : true ,
578579 } )
580+ const storedWorkspace = page . getByLabel ( 'Stored workspace' )
579581
580- if ( await initializeButton . isVisible ( ) ) {
582+ await expect
583+ . poll ( async ( ) => {
584+ if ( await initializeButton . isVisible ( ) ) {
585+ return 'initialize'
586+ }
587+
588+ if ( await storedWorkspace . isVisible ( ) ) {
589+ const workspaceValue = await storedWorkspace
590+ . locator ( 'option:not([value=""])' )
591+ . first ( )
592+ . getAttribute ( 'value' )
593+
594+ if ( workspaceValue ) {
595+ return 'stored'
596+ }
597+ }
598+
599+ return ''
600+ } )
601+ . not . toBe ( '' )
602+
603+ const autoOpenMode = ( await initializeButton . isVisible ( ) ) ? 'initialize' : 'stored'
604+
605+ if ( autoOpenMode === 'initialize' ) {
581606 await initializeButton . click ( )
582607 } else {
583- const storedWorkspace = page . getByLabel ( 'Stored workspace' )
584- if ( await storedWorkspace . isVisible ( ) ) {
585- const workspaceValue = await storedWorkspace
586- . locator ( 'option:not([value=""])' )
587- . first ( )
588- . getAttribute ( 'value' )
589-
590- if ( workspaceValue ) {
591- await storedWorkspace . selectOption ( workspaceValue )
592- await page . getByRole ( 'button' , { name : 'Open' , exact : true } ) . click ( )
593- }
608+ const workspaceValue = await storedWorkspace
609+ . locator ( 'option:not([value=""])' )
610+ . first ( )
611+ . getAttribute ( 'value' )
612+
613+ if ( workspaceValue ) {
614+ await storedWorkspace . selectOption ( workspaceValue )
615+ await page . getByRole ( 'button' , { name : 'Open' , exact : true } ) . click ( )
594616 }
595617 }
596618 }
0 commit comments