Linden Crandall 5075f5c5d8
Some checks are pending
Automatisch Backend Tests / test (push) Waiting to run
Automatisch CI / linter (push) Waiting to run
Automatisch CI / start-backend-server (push) Waiting to run
Automatisch CI / start-backend-worker (push) Waiting to run
Automatisch CI / build-web (push) Waiting to run
Automatisch UI Tests / test (push) Waiting to run
commit upstream files
2025-02-06 04:14:18 +09:00

63 lines
1.9 KiB
JavaScript

const { test, expect } = require('../../fixtures');
test('Github OAuth integration', async ({ page, applicationsPage }) => {
const githubConnectionPage = await test.step(
'Navigate to github connections modal',
async () => {
await applicationsPage.drawerLink.click();
if (page.url() !== '/apps') {
await page.waitForURL('/apps');
}
const connectionModal = await applicationsPage.openAddConnectionModal();
await expect(connectionModal.modal).toBeVisible();
return await connectionModal.selectLink('github');
}
);
const connectionModal = await test.step(
'Ensure the github connection modal is visible',
async () => {
const connectionModal = githubConnectionPage.addConnectionModal;
await expect(connectionModal.modal).toBeVisible();
return connectionModal;
}
);
const githubPopup = await test.step(
'Input data into the add connection form and submit',
async () => {
await connectionModal.clientIdInput.fill(process.env.GITHUB_CLIENT_ID);
await connectionModal.clientIdSecretInput.fill(
process.env.GITHUB_CLIENT_SECRET
);
return await connectionModal.submit();
}
);
await test.step('Ensure github popup is not a 404', async () => {
// await expect(githubPopup).toBeVisible();
const title = await githubPopup.title();
await expect(title).not.toMatch(/^Page not found/);
});
/* Skip these in CI
await test.step(
'Handle github popup authentication flow',
async () => {
await connectionModal.handlePopup(githubPopup);
}
);
await test.step(
'Ensure the new connection is added to the connections list',
async () => {
await page.locator('body').click({ position: { x: 0, y: 0 } });
// TODO
}
);
*/
});
test.afterAll(async () => {
// TODO - Remove connections from github connections page
});