@@ -19,7 +19,7 @@ test.beforeEach(async ({ page }) => {
1919 } )
2020 await expect ( page . getByTestId ( 'account-selector' ) ) . toBeVisible ( )
2121 await page . getByRole ( 'link' , { name : 'Buy' } ) . click ( )
22- await expect ( page . getByText ( ' Buy ROSE') ) . toBeVisible ( )
22+ await expect ( page . getByRole ( 'heading' , { name : ' Buy ROSE' } ) ) . toBeVisible ( )
2323} )
2424
2525test . describe ( 'Fiat on-ramp' , ( ) => {
@@ -94,4 +94,31 @@ test.describe('Fiat on-ramp', () => {
9494 . click ( )
9595 await expect ( page ) . toHaveURL ( 'https://phishing-wallet.com/' )
9696 } )
97+
98+ test ( 'Permissions-Policy should contain Transak permissions' , async ( { page, baseURL } ) => {
99+ expect ( baseURL ) . toBe ( 'http://localhost:5000' )
100+ expect ( ( await page . request . head ( '/' ) ) . headers ( ) ) . toHaveProperty ( 'permissions-policy' )
101+ const permissionsPolicy = ( await page . request . head ( '/' ) )
102+ . headers ( )
103+ [ 'permissions-policy' ] . split ( ',' )
104+ . map ( rule => rule . trim ( ) )
105+
106+ await page
107+ . getByText (
108+ 'I understand that I’m using a third-party solution and Oasis* does not carry any responsibility over the usage of this solution.' ,
109+ )
110+ . click ( )
111+
112+ const transakPermissions = await page . locator ( 'iframe' ) . getAttribute ( 'allow' )
113+ expect ( transakPermissions ) . toBeTruthy ( )
114+
115+ for ( const permission of transakPermissions ! . split ( ';' ) . map ( permission => permission . trim ( ) ) ) {
116+ expect ( permissionsPolicy . find ( rule => rule . startsWith ( `${ permission } =` ) ) ) . toContain (
117+ 'https://global.transak.com' ,
118+ )
119+ expect ( permissionsPolicy . find ( rule => rule . startsWith ( `${ permission } =` ) ) ) . toContain (
120+ 'https://global-stg.transak.com' ,
121+ )
122+ }
123+ } )
97124} )
0 commit comments