@@ -426,6 +426,8 @@ describe('Tooltip', () => {
426426 } )
427427 ) ;
428428
429+ // Flush microtasks to ensure async event handler completes
430+ await clock . advanceTimersByTimeAsync ( 0 ) ;
429431 await clock . advanceTimersByTimeAsync ( endTick ( DEFAULT_HIDE_DELAY ) ) ;
430432 await hideComplete ( ) ;
431433 expect ( tooltip . open ) . to . be . false ;
@@ -557,13 +559,18 @@ describe('Tooltip', () => {
557559 tooltip . parentElement ! . querySelectorAll ( 'button' )
558560 ) ;
559561
562+ // Flush any pending microtasks before showing
563+ await clock . advanceTimersByTimeAsync ( 0 ) ;
564+
560565 const result = await tooltip . show ( transientAnchor ) ;
561566 expect ( result ) . to . be . true ;
562567 expect ( tooltip . open ) . to . be . true ;
563568 expect ( spy ) . to . toHaveBeenCalledTimes ( 0 ) ;
564569
565570 simulatePointerEnter ( defaultAnchor ) ;
566571 // Trigger on the initial default anchor. Tooltip must be hidden.
572+ // Flush microtasks to ensure async event handler completes
573+ await clock . advanceTimersByTimeAsync ( 0 ) ;
567574 expect ( tooltip . open ) . to . be . false ;
568575 await clock . advanceTimersByTimeAsync ( DEFAULT_SHOW_DELAY ) ;
569576 await showComplete ( ) ;
@@ -790,6 +797,8 @@ describe('Tooltip', () => {
790797 } ) ;
791798
792799 simulatePointerEnter ( anchor ) ;
800+ // Flush microtasks to ensure the async event handler completes before advancing timers
801+ await clock . advanceTimersByTimeAsync ( 0 ) ;
793802 await clock . advanceTimersByTimeAsync ( DEFAULT_SHOW_DELAY ) ;
794803 await showComplete ( tooltip ) ;
795804
@@ -808,6 +817,8 @@ describe('Tooltip', () => {
808817 } ) ;
809818
810819 simulatePointerLeave ( anchor ) ;
820+ // Flush microtasks to ensure the async event handler completes before advancing timers
821+ await clock . advanceTimersByTimeAsync ( 0 ) ;
811822 await clock . advanceTimersByTimeAsync ( endTick ( DEFAULT_HIDE_DELAY ) ) ;
812823 await hideComplete ( tooltip ) ;
813824
0 commit comments