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
92 lines
2.9 KiB
JavaScript
92 lines
2.9 KiB
JavaScript
const { test, expect } = require('../../fixtures/index');
|
|
|
|
test.describe('Apps page', () => {
|
|
test.beforeEach(async ({ applicationsPage }) => {
|
|
await applicationsPage.drawerLink.click();
|
|
});
|
|
|
|
// no connected application exists in an empty account
|
|
test.skip('displays no applications', async ({ applicationsPage }) => {
|
|
await applicationsPage.page.getByTestId('apps-loader').waitFor({
|
|
state: 'detached',
|
|
});
|
|
await expect(applicationsPage.page.getByTestId('app-row')).not.toHaveCount(
|
|
0
|
|
);
|
|
|
|
await applicationsPage.screenshot({
|
|
path: 'Applications.png',
|
|
});
|
|
});
|
|
|
|
test.describe('can add connection', () => {
|
|
test.beforeEach(async ({ applicationsPage }) => {
|
|
await expect(applicationsPage.addConnectionButton).toBeClickableLink();
|
|
await applicationsPage.addConnectionButton.click();
|
|
await applicationsPage.page
|
|
.getByTestId('search-for-app-loader')
|
|
.waitFor({ state: 'detached' });
|
|
});
|
|
|
|
test('lists applications', async ({ applicationsPage }) => {
|
|
const appListItemCount = await applicationsPage.page
|
|
.getByTestId('app-list-item')
|
|
.count();
|
|
expect(appListItemCount).toBeGreaterThan(10);
|
|
|
|
await applicationsPage.clickAway();
|
|
});
|
|
|
|
test('searches an application', async ({ applicationsPage }) => {
|
|
await applicationsPage.page
|
|
.getByTestId('search-for-app-text-field')
|
|
.fill('DeepL');
|
|
await applicationsPage.page
|
|
.getByTestId('search-for-app-loader')
|
|
.waitFor({ state: 'detached' });
|
|
|
|
await expect(
|
|
applicationsPage.page.getByTestId('app-list-item')
|
|
).toHaveCount(1);
|
|
|
|
await applicationsPage.clickAway();
|
|
});
|
|
|
|
test('goes to app page to create a connection', async ({
|
|
applicationsPage,
|
|
}) => {
|
|
// loading app, app config, app oauth clients take time
|
|
test.setTimeout(60000);
|
|
|
|
await applicationsPage.page.getByTestId('app-list-item').first().click();
|
|
await expect(applicationsPage.page).toHaveURL(
|
|
'/app/airtable/connections/add?shared=false'
|
|
);
|
|
await expect(
|
|
applicationsPage.page.getByTestId('add-app-connection-dialog')
|
|
).toBeVisible();
|
|
|
|
await applicationsPage.clickAway();
|
|
});
|
|
|
|
test('closes the dialog on backdrop click', async ({
|
|
applicationsPage,
|
|
}) => {
|
|
await applicationsPage.page.getByTestId('app-list-item').first().click();
|
|
await expect(applicationsPage.page).toHaveURL(
|
|
'/app/airtable/connections/add?shared=false'
|
|
);
|
|
await expect(
|
|
applicationsPage.page.getByTestId('add-app-connection-dialog')
|
|
).toBeVisible();
|
|
await applicationsPage.clickAway();
|
|
await expect(applicationsPage.page).toHaveURL(
|
|
'/app/airtable/connections'
|
|
);
|
|
await expect(
|
|
applicationsPage.page.getByTestId('add-app-connection-dialog')
|
|
).toBeHidden();
|
|
});
|
|
});
|
|
});
|