66import test from '@playwright/test' ;
77import { readFileSync } from 'fs' ;
88import { FINALIZER , introducer , sixelEncode } from 'sixel' ;
9- import { ITestContext , createTestContext , openTerminal , pollFor } from '../../../test/playwright/TestUtils' ;
9+ import { ITestContext , createTestContext , openTerminal , pollFor , timeout } from '../../../test/playwright/TestUtils' ;
1010import { deepStrictEqual , ok , strictEqual } from 'assert' ;
1111
1212/**
@@ -199,7 +199,7 @@ test.describe('ImageAddon', () => {
199199 ( await getScrollbackPlusRows ( ) - 1 )
200200 ) ;
201201 // wait here, as we have to make sure, that eviction did not yet occur
202- await new Promise ( r => setTimeout ( r , 100 ) ) ;
202+ await timeout ( 100 ) ;
203203 pollFor ( ctx . page , 'window.imageAddon._storage._images.size' , 1 ) ;
204204 // scroll one further should delete the image
205205 await ctx . page . evaluate ( ( ) => new Promise ( res => ( window as any ) . term . write ( '\n' , res ) ) ) ;
@@ -222,13 +222,13 @@ test.describe('ImageAddon', () => {
222222 await ctx . proxy . write ( SIXEL_SEQ_0 ) ;
223223 await ctx . proxy . write ( SIXEL_SEQ_0 ) ;
224224 await ctx . proxy . write ( SIXEL_SEQ_0 ) ;
225- await new Promise ( r => setTimeout ( r , 50 ) ) ;
225+ await timeout ( 100 ) ;
226226 const usage = await ctx . page . evaluate ( 'window.imageAddon.storageUsage' ) ;
227227 await ctx . proxy . write ( SIXEL_SEQ_0 ) ;
228228 await ctx . proxy . write ( SIXEL_SEQ_0 ) ;
229229 await ctx . proxy . write ( SIXEL_SEQ_0 ) ;
230230 await ctx . proxy . write ( SIXEL_SEQ_0 ) ;
231- await new Promise ( r => setTimeout ( r , 50 ) ) ;
231+ await timeout ( 100 ) ;
232232 strictEqual ( await ctx . page . evaluate ( 'window.imageAddon.storageUsage' ) , usage ) ;
233233 strictEqual ( usage as number < 1 , true ) ;
234234 } ) ;
@@ -247,25 +247,26 @@ test.describe('ImageAddon', () => {
247247 strictEqual ( await ctx . page . evaluate ( 'window.imageAddon.storageUsage' ) , 0 ) ;
248248 } ) ;
249249 test ( 'evict tiles by in-place overwrites (only full overwrite tested)' , async ( ) => {
250- await new Promise ( r => setTimeout ( r , 50 ) ) ;
250+ await timeout ( 50 ) ;
251251 await ctx . proxy . write ( '\x1b[H' + SIXEL_SEQ_0 + '\x1b[100;100H' ) ;
252+ await timeout ( 50 ) ;
252253 let usage = await ctx . page . evaluate ( 'window.imageAddon.storageUsage' ) ;
253254 while ( usage === 0 ) {
254- await new Promise ( r => setTimeout ( r , 50 ) ) ;
255+ await timeout ( 50 ) ;
255256 usage = await ctx . page . evaluate ( 'window.imageAddon.storageUsage' ) ;
256257 }
257258 await ctx . proxy . write ( '\x1b[H' + SIXEL_SEQ_0 + '\x1b[100;100H' ) ;
258- await new Promise ( r => setTimeout ( r , 200 ) ) ; // wait some time and re-check
259+ await timeout ( 200 ) ; // wait some time and re-check
259260 strictEqual ( await ctx . page . evaluate ( 'window.imageAddon.storageUsage' ) , usage ) ;
260261 } ) ;
261262 test ( 'manual eviction on alternate buffer must not miss images' , async ( ) => {
262263 await ctx . proxy . write ( '\x1b[?1049h' ) ;
263264 await ctx . proxy . write ( SIXEL_SEQ_0 + SIXEL_SEQ_0 + SIXEL_SEQ_0 + SIXEL_SEQ_0 + SIXEL_SEQ_0 + SIXEL_SEQ_0 ) ;
264- await new Promise ( r => setTimeout ( r , 50 ) ) ;
265+ await timeout ( 100 ) ;
265266 const usage : number = await ctx . page . evaluate ( 'window.imageAddon.storageUsage' ) ;
266267 await ctx . proxy . write ( SIXEL_SEQ_0 + SIXEL_SEQ_0 + SIXEL_SEQ_0 + SIXEL_SEQ_0 + SIXEL_SEQ_0 + SIXEL_SEQ_0 ) ;
267268 await ctx . proxy . write ( SIXEL_SEQ_0 + SIXEL_SEQ_0 + SIXEL_SEQ_0 + SIXEL_SEQ_0 + SIXEL_SEQ_0 + SIXEL_SEQ_0 ) ;
268- await new Promise ( r => setTimeout ( r , 50 ) ) ;
269+ await timeout ( 100 ) ;
269270 const newUsage : number = await ctx . page . evaluate ( 'window.imageAddon.storageUsage' ) ;
270271 strictEqual ( newUsage , usage ) ;
271272 } ) ;
0 commit comments