Skip to content

Commit 786939b

Browse files
author
lukaw3d
committed
Test Transak passes Permissions-Policy
1 parent f2b7680 commit 786939b

1 file changed

Lines changed: 28 additions & 1 deletion

File tree

playwright/tests/fiat.spec.ts

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -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

2525
test.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

Comments
 (0)