@@ -358,6 +358,26 @@ describe('Tests the Extension Requests Screen', () => {
358
358
} ,
359
359
body : JSON . stringify ( extensionRequestsListUserSearch ) ,
360
360
} ) ;
361
+ } else if (
362
+ url ===
363
+ 'https://api.realdevsquad.com/extension-requests?order=asc&size=1&q=status%3APENDING'
364
+ ) {
365
+ interceptedRequest . respond ( {
366
+ status : 200 ,
367
+ contentType : 'application/json' ,
368
+ headers : {
369
+ 'Access-Control-Allow-Origin' : '*' ,
370
+ 'Access-Control-Allow-Methods' : 'GET, POST, PUT, DELETE, OPTIONS' ,
371
+ 'Access-Control-Allow-Headers' : 'Content-Type, Authorization' ,
372
+ } ,
373
+ body : JSON . stringify ( {
374
+ message : 'Extension Requests returned successfully!' ,
375
+ allExtensionRequests :
376
+ extensionRequestsListPending ?. allExtensionRequests . length > 0
377
+ ? [ extensionRequestsListPending ?. allExtensionRequests ?. [ 1 ] ]
378
+ : [ ] ,
379
+ } ) ,
380
+ } ) ;
361
381
} else {
362
382
interceptedRequest . continue ( ) ;
363
383
}
@@ -919,4 +939,44 @@ describe('Tests the Extension Requests Screen', () => {
919
939
) ;
920
940
expect ( ascSortIconDisplayStyle ) . toBe ( 'block' ) ;
921
941
} ) ;
942
+
943
+ it ( 'Should show empty message if all extension requests have been addressed' , async ( ) => {
944
+ await page . goto ( `${ baseUrl } /?order=asc&size=1&q=status%3APENDING` ) ;
945
+ await page . waitForNetworkIdle ( ) ;
946
+
947
+ extensionRequestsElement = await page . $ ( '.extension-requests' ) ;
948
+ let extensionCardsList = await page . $$ ( '.extension-card' ) ;
949
+
950
+ if ( extensionCardsList . length == 0 ) {
951
+ const extensionRequestContainerText = await page . evaluate (
952
+ ( element ) => element . innerText ,
953
+ extensionRequestsElement ,
954
+ ) ;
955
+
956
+ expect ( extensionRequestContainerText ) . toBe (
957
+ 'No extension requests to show!' ,
958
+ ) ;
959
+
960
+ return ;
961
+ }
962
+
963
+ for ( const card of extensionCardsList ) {
964
+ let approveButton = await card . $ ( '.approve-button' ) ;
965
+ await approveButton . click ( ) ;
966
+ await page . waitForTimeout ( 1700 ) ;
967
+ }
968
+
969
+ extensionRequestsElement = await page . $ ( '.extension-requests' ) ;
970
+ extensionCardsList = await extensionRequestsElement . $$ ( '.extension-card' ) ;
971
+
972
+ const extensionRequestContainerText = await page . evaluate (
973
+ ( element ) => element . innerText ,
974
+ extensionRequestsElement ,
975
+ ) ;
976
+
977
+ expect ( extensionCardsList . length ) . toBe ( 0 ) ;
978
+ expect ( extensionRequestContainerText ) . toBe (
979
+ 'No extension requests to show!' ,
980
+ ) ;
981
+ } ) ;
922
982
} ) ;
0 commit comments