@@ -29,6 +29,16 @@ async function deleteTestUserAccounts(browser: Browser) {
2929 const page = await context . newPage ( ) ;
3030
3131 await page . goto ( `${ getBaseTestEnvUrl ( ) } /user/settings/manage-account` ) ;
32+
33+ await page . getByRole ( "button" , { name : "Open user menu" } ) . click ( ) ;
34+ const manageAccountLink = page . getByRole ( "link" , {
35+ name : "Manage your Mozilla account" ,
36+ exact : false ,
37+ } ) ;
38+ const manageFxaAccountUrl = await manageAccountLink . getAttribute ( "href" ) ;
39+ // Close the user menu
40+ await manageAccountLink . press ( "Escape" ) ;
41+
3242 await page . getByRole ( "button" , { name : "Delete account" } ) . click ( ) ;
3343 const deleteDialog = page . getByRole ( "dialog" , {
34 44 name : "Your Monitor account will be permanently deleted" ,
@@ -39,11 +49,29 @@ async function deleteTestUserAccounts(browser: Browser) {
3949 await deleteButtonConfirm . click ( ) ;
4050 await page . waitForURL ( `${ getBaseTestEnvUrl ( ) } /` ) ;
4151
52+ await page . goto ( manageFxaAccountUrl ! ) ;
53+ await page . getByRole ( "link" , { name : "Delete Account" } ) . click ( ) ;
54+ const consequenceAcknowledgements = await page
55+ . getByTestId ( "checkbox-container" )
56+ . all ( ) ;
57+ for ( const acknowledgement of consequenceAcknowledgements ) {
58+ await acknowledgement . click ( ) ;
59+ }
60+ await page . getByRole ( "button" , { name : "Continue" } ) . click ( ) ;
61+
62+ await page
63+ . getByLabel ( "Enter password" )
64+ . fill ( process . env . E2E_TEST_ACCOUNT_BASE_PASSWORD as string ) ;
65+ await page . getByRole ( "button" , { name : "Delete" } ) . click ( ) ;
66+
4267 await context . close ( ) ;
4368 }
4469}
4570
4671teardown ( "Delete test user accounts" , async ( { browser } ) => {
72+ // Going through both the Monitor and the FxA delete flow for
73+ // every account takes relatively long:
74+ teardown . slow ( ) ;
4775 await deleteTestUserAccounts ( browser ) ;
4876 removeTestStorage ( ) ;
4977} ) ;
0 commit comments