@@ -267,7 +267,7 @@ describe('ModelManager', () => {
267267
268268 let props = getLastSelectProps ( ) ;
269269 props . onChange ?.( 'switch' ) ;
270- await time . tick ( 10 ) ;
270+ await time . tick ( 20 ) ;
271271
272272 props = getLastSelectProps ( ) ;
273273 expect ( props . options . map ( ( option ) => option . label ) ) . toContain ( 'Back' ) ;
@@ -289,7 +289,7 @@ describe('ModelManager', () => {
289289
290290 let props = getLastSelectProps ( ) ;
291291 props . onChange ?.( 'switch' ) ;
292- await time . tick ( 10 ) ;
292+ await time . tick ( 20 ) ;
293293
294294 expect ( lastFrame ( ) ) . toContain ( 'gemma4' ) ;
295295 expect ( lastFrame ( ) ) . toContain ( 'Back' ) ;
@@ -323,7 +323,7 @@ describe('ModelManager', () => {
323323
324324 const props = getLastSelectProps ( ) ;
325325 props . onChange ?.( 'switch' ) ;
326- await time . tick ( 10 ) ;
326+ await time . tick ( 20 ) ;
327327
328328 expect ( lastFrame ( ) ) . toContain ( 'Loading models' ) ;
329329
@@ -355,15 +355,14 @@ describe('ModelManager', () => {
355355 /> ,
356356 ) ;
357357
358- await time . tick ( 10 ) ;
359-
358+ await time . tick ( 20 ) ;
360359 let props = getLastSelectProps ( ) ;
361360 props . onChange ?.( 'download' ) ;
362- await time . tick ( 10 ) ;
361+ await time . tick ( 20 ) ;
363362
364363 props = getLastSelectProps ( ) ;
365364 props . onChange ?.( 'qwen2.5-coder:7b' ) ;
366- await time . tick ( 10 ) ;
365+ await time . tick ( 20 ) ;
367366
368367 expect ( mockPullModel ) . toHaveBeenCalledWith ( 'qwen2.5-coder:7b' ) ;
369368 expect ( lastFrame ( ) ) . toContain ( 'qwen2.5-coder:7b downloaded successfully' ) ;
@@ -388,7 +387,7 @@ describe('ModelManager', () => {
388387
389388 const props = getLastSelectProps ( ) ;
390389 props . onChange ?.( 'download' ) ;
391- await time . tick ( 10 ) ;
390+ await time . tick ( 20 ) ;
392391
393392 const frame = lastFrame ( ) ?? '' ;
394393 expect ( frame ) . not . toContain ( 'Qwen 2.5 Coder' ) ;
@@ -460,7 +459,7 @@ describe('ModelManager', () => {
460459
461460 props = getLastSelectProps ( ) ;
462461 props . onChange ?.( 'qwen2.5-coder:7b' ) ;
463- await time . tick ( 10 ) ;
462+ await time . tick ( 20 ) ;
464463
465464 expect ( lastFrame ( ) ) . toContain ( 'verifying' ) ;
466465 expect ( lastFrame ( ) ) . toContain ( '100%' ) ;
@@ -506,7 +505,7 @@ describe('ModelManager', () => {
506505
507506 let props = getLastSelectProps ( ) ;
508507 props . onChange ?.( 'download' ) ;
509- await time . tick ( 10 ) ;
508+ await time . tick ( 20 ) ;
510509
511510 props = getLastSelectProps ( ) ;
512511 props . onChange ?.( 'qwen2.5-coder:7b' ) ;
@@ -545,15 +544,14 @@ describe('ModelManager', () => {
545544 /> ,
546545 ) ;
547546
548- await time . tick ( 10 ) ;
549-
547+ await time . tick ( 20 ) ;
550548 let props = getLastSelectProps ( ) ;
551549 props . onChange ?.( 'download' ) ;
552- await time . tick ( 10 ) ;
550+ await time . tick ( 20 ) ;
553551
554552 props = getLastSelectProps ( ) ;
555553 props . onChange ?.( 'qwen2.5-coder:7b' ) ;
556- await time . tick ( 10 ) ;
554+ await time . tick ( 20 ) ;
557555
558556 expect ( lastFrame ( ) ) . toContain ( 'Choose a model to download' ) ;
559557 expect ( lastFrame ( ) ) . toContain ( 'Download canceled' ) ;
@@ -601,7 +599,7 @@ describe('ModelManager', () => {
601599
602600 props = getLastSelectProps ( ) ;
603601 props . onChange ?.( 'qwen2.5-coder:7b' ) ;
604- await time . tick ( 10 ) ;
602+ await time . tick ( 20 ) ;
605603
606604 expect ( lastFrame ( ) ) . toContain ( 'pulling' ) ;
607605
@@ -611,6 +609,7 @@ describe('ModelManager', () => {
611609
612610 it ( 'shows download progress with large file sizes' , async ( ) => {
613611 let finishDownload : ( ( ) => void ) | undefined ;
612+
614613 mockPullModel . mockResolvedValueOnce ( {
615614 abort : vi . fn ( ) ,
616615 async * [ Symbol . asyncIterator ] ( ) {
@@ -636,15 +635,14 @@ describe('ModelManager', () => {
636635 /> ,
637636 ) ;
638637
639- await time . tick ( 10 ) ;
640-
638+ await time . tick ( 20 ) ;
641639 let props = getLastSelectProps ( ) ;
642640 props . onChange ?.( 'download' ) ;
643- await time . tick ( 10 ) ;
641+ await time . tick ( 20 ) ;
644642
645643 props = getLastSelectProps ( ) ;
646644 props . onChange ?.( 'qwen2.5-coder:7b' ) ;
647- await time . tick ( 10 ) ;
645+ await time . tick ( 20 ) ;
648646
649647 expect ( lastFrame ( ) ) . toContain ( 'downloading' ) ;
650648 expect ( lastFrame ( ) ) . toContain ( 'GB' ) ;
@@ -689,7 +687,7 @@ describe('ModelManager', () => {
689687
690688 props = getLastSelectProps ( ) ;
691689 props . onChange ?.( 'qwen2.5-coder:7b' ) ;
692- await time . tick ( 10 ) ;
690+ await time . tick ( 20 ) ;
693691
694692 expect ( lastFrame ( ) ) . toContain ( 'Downloading model' ) ;
695693
@@ -721,7 +719,7 @@ describe('ModelManager', () => {
721719
722720 props = getLastSelectProps ( ) ;
723721 props . onChange ?.( 'custom' ) ;
724- await time . tick ( 10 ) ;
722+ await time . tick ( 20 ) ;
725723
726724 const textInputProps = getLastTextInputProps ( ) ;
727725 textInputProps . onSubmit ( '' ) ;
@@ -747,7 +745,7 @@ describe('ModelManager', () => {
747745
748746 props = getLastSelectProps ( ) ;
749747 props . onChange ?.( 'custom' ) ;
750- await time . tick ( 10 ) ;
748+ await time . tick ( 20 ) ;
751749
752750 const textInputProps = getLastTextInputProps ( ) ;
753751 textInputProps . onSubmit ( 'gemma4' ) ; // Already installed
@@ -785,7 +783,7 @@ describe('ModelManager', () => {
785783
786784 props = getLastSelectProps ( ) ;
787785 props . onChange ?.( 'custom' ) ;
788- await time . tick ( 10 ) ;
786+ await time . tick ( 20 ) ;
789787
790788 const textInputProps = getLastTextInputProps ( ) ;
791789 textInputProps . onSubmit ( 'newmodel' ) ;
@@ -834,7 +832,7 @@ describe('ModelManager', () => {
834832
835833 props = getLastSelectProps ( ) ;
836834 props . onChange ?.( 'custom' ) ;
837- await time . tick ( 10 ) ;
835+ await time . tick ( 20 ) ;
838836
839837 // Simulate typing a value with a colon so the mock ModelSuggestions triggers onSelect
840838 const textInputProps = getLastTextInputProps ( ) ;
@@ -863,12 +861,12 @@ describe('ModelManager', () => {
863861
864862 props = getLastSelectProps ( ) ;
865863 props . onChange ?.( 'custom' ) ;
866- await time . tick ( 10 ) ;
864+ await time . tick ( 20 ) ;
867865
868866 // Type a value with ':' so the mock triggers onSelect (sets highlightedSuggestion)
869867 const textInputProps = getLastTextInputProps ( ) ;
870868 textInputProps . onChange ( 'gemma:latest' ) ;
871- await time . tick ( 10 ) ;
869+ await time . tick ( 20 ) ;
872870
873871 // Submit triggers pull with the highlighted suggestion
874872 const updatedTextInputProps = getLastTextInputProps ( ) ;
@@ -896,7 +894,7 @@ describe('ModelManager', () => {
896894
897895 props = getLastSelectProps ( ) ;
898896 props . onChange ?.( 'custom' ) ;
899- await time . tick ( 10 ) ;
897+ await time . tick ( 20 ) ;
900898
901899 expect ( getLastTextInputProps ( ) . placeholder ) . toBe ( 'name:tag' ) ;
902900
@@ -923,7 +921,7 @@ describe('ModelManager', () => {
923921
924922 props = getLastSelectProps ( ) ;
925923 props . onChange ?.( 'custom' ) ;
926- await time . tick ( 10 ) ;
924+ await time . tick ( 20 ) ;
927925
928926 expect ( getLastTextInputProps ( ) . placeholder ) . toBe ( 'name:tag' ) ;
929927
@@ -948,7 +946,7 @@ describe('ModelManager', () => {
948946
949947 let props = getLastSelectProps ( ) ;
950948 props . onChange ?.( 'delete' ) ;
951- await time . tick ( 10 ) ;
949+ await time . tick ( 20 ) ;
952950
953951 props = getLastSelectProps ( ) ;
954952 expect ( props . options . map ( ( option ) => option . value ) ) . not . toContain (
@@ -997,8 +995,10 @@ describe('ModelManager', () => {
997995
998996 props = getLastSelectProps ( ) ;
999997 props . onChange ?.( 'delete' ) ;
998+ await time . tick ( ) ;
999+
10001000 props . onChange ?.( 'delete' ) ;
1001- await time . tick ( 10 ) ;
1001+ await time . tick ( 20 ) ;
10021002
10031003 expect ( mockDeleteModel ) . toHaveBeenCalledTimes ( 1 ) ;
10041004
@@ -1021,48 +1021,20 @@ describe('ModelManager', () => {
10211021
10221022 let props = getLastSelectProps ( ) ;
10231023 props . onChange ?.( 'delete' ) ;
1024- await time . tick ( 10 ) ;
1024+ await time . tick ( 20 ) ;
10251025
10261026 props = getLastSelectProps ( ) ;
10271027 props . onChange ?.( 'llama3' ) ;
1028- await time . tick ( 10 ) ;
1028+ await time . tick ( 20 ) ;
10291029
10301030 props = getLastSelectProps ( ) ;
10311031 props . onChange ?.( 'delete' ) ;
1032- await time . tick ( 10 ) ;
1032+ await time . tick ( 20 ) ;
10331033
10341034 expect ( lastFrame ( ) ) . toContain ( 'Error deleting model' ) ;
10351035 expect ( lastFrame ( ) ) . toContain ( 'Delete failed' ) ;
10361036 } ) ;
10371037
1038- it ( 'shows loading spinner when navigating to delete view while models are loading' , async ( ) => {
1039- let resolveList : ( ( models : string [ ] ) => void ) | undefined ;
1040- mockListModels . mockReturnValueOnce (
1041- new Promise ( ( resolve ) => {
1042- resolveList = resolve ;
1043- } ) ,
1044- ) ;
1045-
1046- const { lastFrame } = render (
1047- < ModelManager
1048- currentModel = "gemma4"
1049- onSelect = { vi . fn ( ) }
1050- onClose = { vi . fn ( ) }
1051- /> ,
1052- ) ;
1053-
1054- await time . tick ( 10 ) ;
1055-
1056- const props = getLastSelectProps ( ) ;
1057- props . onChange ?.( 'delete' ) ;
1058- await time . tick ( 10 ) ;
1059-
1060- expect ( lastFrame ( ) ) . toContain ( 'Loading models' ) ;
1061-
1062- resolveList ?.( [ 'gemma4' , 'llama3' ] ) ;
1063- await time . tick ( 10 ) ;
1064- } ) ;
1065-
10661038 it ( 'shows deleting spinner while deletion is in progress' , async ( ) => {
10671039 let resolveDelete : ( ( ) => void ) | undefined ;
10681040 mockDeleteModel . mockReturnValueOnce (
@@ -1091,7 +1063,7 @@ describe('ModelManager', () => {
10911063
10921064 props = getLastSelectProps ( ) ;
10931065 props . onChange ?.( 'delete' ) ;
1094- await time . tick ( 10 ) ;
1066+ await time . tick ( 20 ) ;
10951067
10961068 expect ( lastFrame ( ) ) . toContain ( 'Deleting model llama3' ) ;
10971069
@@ -1140,7 +1112,7 @@ describe('ModelManager', () => {
11401112
11411113 props = getLastSelectProps ( ) ;
11421114 props . onChange ?.( 'llama3' ) ;
1143- await time . tick ( 10 ) ;
1115+ await time . tick ( 20 ) ;
11441116
11451117 expect ( lastFrame ( ) ) . toContain ( 'Delete model llama3' ) ;
11461118
@@ -1161,15 +1133,14 @@ describe('ModelManager', () => {
11611133 /> ,
11621134 ) ;
11631135
1164- await time . tick ( 10 ) ;
1165-
1136+ await time . tick ( 20 ) ;
11661137 let props = getLastSelectProps ( ) ;
11671138 props . onChange ?.( 'delete' ) ;
1168- await time . tick ( 10 ) ;
1139+ await time . tick ( 20 ) ;
11691140
11701141 props = getLastSelectProps ( ) ;
11711142 props . onChange ?.( 'llama3' ) ;
1172- await time . tick ( 10 ) ;
1143+ await time . tick ( 20 ) ;
11731144
11741145 expect ( lastFrame ( ) ) . toContain ( 'Delete model llama3' ) ;
11751146
0 commit comments