@@ -190,26 +190,39 @@ test.describe('Main Tree', () => {
190190 test ( 'Opening and closing an item before the request has been fulfilled will abort the request @couchdb @network' , async ( {
191191 page
192192 } ) => {
193- let requestWasAborted = false ;
194-
195- page . on ( 'requestfailed' , ( request ) => {
196- // check if the request was aborted
197- if ( request . failure ( ) . errorText === 'net::ERR_ABORTED' ) {
198- requestWasAborted = true ;
199- }
200- } ) ;
201-
202193 await createDomainObjectWithDefaults ( page , {
203194 type : 'Folder' ,
204195 name : 'Foo'
205196 } ) ;
206197
207198 // Intercept and delay request
208- const delayInMs = 500 ;
199+ const ARTIFICIAL_NETWORK_DELAY_MS = 10000 ;
200+
201+ page . route ( '**/_all_docs*' , async ( route ) => {
202+ await new Promise ( ( resolve ) => {
203+ setTimeout ( ( ) => {
204+ resolve ( resolve ) ;
205+ } , ARTIFICIAL_NETWORK_DELAY_MS ) ;
206+ } ) ;
207+ return route . continue ( ) ;
208+ } ) ;
209209
210- await page . route ( '**' , async ( route , request ) => {
211- await new Promise ( ( resolve ) => setTimeout ( resolve , delayInMs ) ) ;
212- route . continue ( ) ;
210+ const allDocsRequestAbortedPromise = new Promise ( ( resolve ) => {
211+ page . on ( 'requestfailed' , ( request ) => {
212+ // check if the request was aborted
213+ if ( request . url ( ) . includes ( '_all_docs' ) ) {
214+ if ( request . failure ( ) . errorText === 'net::ERR_ABORTED' ) {
215+ resolve ( true ) ;
216+ } else {
217+ resolve ( false ) ;
218+ }
219+ }
220+ } ) ;
221+ page . on ( 'requestfinished' , ( request ) => {
222+ if ( request . url ( ) . includes ( '_all_docs' ) ) {
223+ resolve ( false ) ;
224+ }
225+ } ) ;
213226 } ) ;
214227
215228 // Quickly Expand/close the root folder
@@ -219,7 +232,8 @@ test.describe('Main Tree', () => {
219232 } )
220233 . dblclick ( { delay : 400 } ) ;
221234
222- expect ( requestWasAborted ) . toBe ( true ) ;
235+ const allDocsRequestAborted = await allDocsRequestAbortedPromise ;
236+ expect ( allDocsRequestAborted ) . toBe ( true ) ;
223237 } ) ;
224238
225239 test . describe ( 'Root objects' , ( ) => {
0 commit comments