Merge pull request #2416 from automatisch/fix-flakiness-in-users-tab-tests
test: improve searching for elements on users page
This commit is contained in:
@@ -43,6 +43,10 @@ export class AdminApplicationSettingsPage extends AuthenticatedPage {
|
|||||||
await this.saveButton.click();
|
await this.saveButton.click();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async expectOnlyOneSuccessSnackbarToBeVisible() {
|
||||||
|
await expect(this.successSnackbar).toBeVisible();
|
||||||
|
}
|
||||||
|
|
||||||
async expectSuccessSnackbarToBeVisible() {
|
async expectSuccessSnackbarToBeVisible() {
|
||||||
const snackbars = await this.successSnackbar.all();
|
const snackbars = await this.successSnackbar.all();
|
||||||
for (const snackbar of snackbars) {
|
for (const snackbar of snackbars) {
|
||||||
|
|||||||
@@ -27,6 +27,11 @@ export class AdminUsersPage extends AuthenticatedPage {
|
|||||||
await this.profileMenuButton.click();
|
await this.profileMenuButton.click();
|
||||||
await this.adminMenuItem.click();
|
await this.adminMenuItem.click();
|
||||||
await this.isMounted();
|
await this.isMounted();
|
||||||
|
await Promise.all([
|
||||||
|
this.page.waitForResponse(
|
||||||
|
(resp) => resp.url().includes('/admin/users') && resp.status() === 200
|
||||||
|
),
|
||||||
|
]);
|
||||||
if (await this.usersLoader.isVisible()) {
|
if (await this.usersLoader.isVisible()) {
|
||||||
await this.usersLoader.waitFor({
|
await this.usersLoader.waitFor({
|
||||||
state: 'detached',
|
state: 'detached',
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ test.describe('Admin Applications', () => {
|
|||||||
|
|
||||||
await adminApplicationSettingsPage.allowUseOnlyPredefinedAuthClients();
|
await adminApplicationSettingsPage.allowUseOnlyPredefinedAuthClients();
|
||||||
await adminApplicationSettingsPage.saveSettings();
|
await adminApplicationSettingsPage.saveSettings();
|
||||||
await adminApplicationSettingsPage.expectSuccessSnackbarToBeVisible();
|
await adminApplicationSettingsPage.expectOnlyOneSuccessSnackbarToBeVisible();
|
||||||
await adminApplicationSettingsPage.disallowConnections();
|
await adminApplicationSettingsPage.disallowConnections();
|
||||||
await adminApplicationSettingsPage.saveSettings();
|
await adminApplicationSettingsPage.saveSettings();
|
||||||
await adminApplicationSettingsPage.expectSuccessSnackbarToBeVisible();
|
await adminApplicationSettingsPage.expectSuccessSnackbarToBeVisible();
|
||||||
@@ -63,7 +63,7 @@ test.describe('Admin Applications', () => {
|
|||||||
|
|
||||||
await adminApplicationSettingsPage.disallowUseOnlyPredefinedAuthClients();
|
await adminApplicationSettingsPage.disallowUseOnlyPredefinedAuthClients();
|
||||||
await adminApplicationSettingsPage.saveSettings();
|
await adminApplicationSettingsPage.saveSettings();
|
||||||
await adminApplicationSettingsPage.expectSuccessSnackbarToBeVisible();
|
await adminApplicationSettingsPage.expectOnlyOneSuccessSnackbarToBeVisible();
|
||||||
await adminApplicationSettingsPage.allowConnections();
|
await adminApplicationSettingsPage.allowConnections();
|
||||||
await adminApplicationSettingsPage.saveSettings();
|
await adminApplicationSettingsPage.saveSettings();
|
||||||
await adminApplicationSettingsPage.expectSuccessSnackbarToBeVisible();
|
await adminApplicationSettingsPage.expectSuccessSnackbarToBeVisible();
|
||||||
@@ -88,6 +88,7 @@ test.describe('Admin Applications', () => {
|
|||||||
await expect(page.url()).toContain(
|
await expect(page.url()).toContain(
|
||||||
'/admin-settings/apps/google-drive/settings'
|
'/admin-settings/apps/google-drive/settings'
|
||||||
);
|
);
|
||||||
|
await expect(adminApplicationSettingsPage.pageTitle).toBeVisible();
|
||||||
|
|
||||||
await expect(
|
await expect(
|
||||||
adminApplicationSettingsPage.useOnlyPredefinedAuthClients
|
adminApplicationSettingsPage.useOnlyPredefinedAuthClients
|
||||||
@@ -142,6 +143,7 @@ test.describe('Admin Applications', () => {
|
|||||||
|
|
||||||
await adminApplicationsPage.openApplication('Spotify');
|
await adminApplicationsPage.openApplication('Spotify');
|
||||||
await expect(page.url()).toContain('/admin-settings/apps/spotify/settings');
|
await expect(page.url()).toContain('/admin-settings/apps/spotify/settings');
|
||||||
|
await expect(adminApplicationSettingsPage.pageTitle).toBeVisible();
|
||||||
|
|
||||||
await expect(
|
await expect(
|
||||||
adminApplicationSettingsPage.useOnlyPredefinedAuthClients
|
adminApplicationSettingsPage.useOnlyPredefinedAuthClients
|
||||||
@@ -152,7 +154,7 @@ test.describe('Admin Applications', () => {
|
|||||||
|
|
||||||
await adminApplicationSettingsPage.allowUseOnlyPredefinedAuthClients();
|
await adminApplicationSettingsPage.allowUseOnlyPredefinedAuthClients();
|
||||||
await adminApplicationSettingsPage.saveSettings();
|
await adminApplicationSettingsPage.saveSettings();
|
||||||
await adminApplicationSettingsPage.expectSuccessSnackbarToBeVisible();
|
await adminApplicationSettingsPage.expectOnlyOneSuccessSnackbarToBeVisible();
|
||||||
|
|
||||||
await adminApplicationOAuthClientsPage.openAuthClientsTab();
|
await adminApplicationOAuthClientsPage.openAuthClientsTab();
|
||||||
await adminApplicationOAuthClientsPage.openFirstAuthClientCreateForm();
|
await adminApplicationOAuthClientsPage.openFirstAuthClientCreateForm();
|
||||||
@@ -212,6 +214,7 @@ test.describe('Admin Applications', () => {
|
|||||||
|
|
||||||
await adminApplicationsPage.openApplication('Reddit');
|
await adminApplicationsPage.openApplication('Reddit');
|
||||||
await expect(page.url()).toContain('/admin-settings/apps/reddit/settings');
|
await expect(page.url()).toContain('/admin-settings/apps/reddit/settings');
|
||||||
|
await expect(adminApplicationSettingsPage.pageTitle).toBeVisible();
|
||||||
|
|
||||||
await expect(
|
await expect(
|
||||||
adminApplicationSettingsPage.useOnlyPredefinedAuthClients
|
adminApplicationSettingsPage.useOnlyPredefinedAuthClients
|
||||||
@@ -281,9 +284,10 @@ test.describe('Admin Applications', () => {
|
|||||||
await adminApplicationsPage.openApplication('ClickUp');
|
await adminApplicationsPage.openApplication('ClickUp');
|
||||||
await expect(page.url()).toContain('/admin-settings/apps/clickup/settings');
|
await expect(page.url()).toContain('/admin-settings/apps/clickup/settings');
|
||||||
|
|
||||||
|
await expect(adminApplicationSettingsPage.pageTitle).toBeVisible();
|
||||||
await adminApplicationSettingsPage.disallowConnections();
|
await adminApplicationSettingsPage.disallowConnections();
|
||||||
await adminApplicationSettingsPage.saveSettings();
|
await adminApplicationSettingsPage.saveSettings();
|
||||||
await adminApplicationSettingsPage.expectSuccessSnackbarToBeVisible();
|
await adminApplicationSettingsPage.expectOnlyOneSuccessSnackbarToBeVisible();
|
||||||
|
|
||||||
await adminApplicationOAuthClientsPage.openAuthClientsTab();
|
await adminApplicationOAuthClientsPage.openAuthClientsTab();
|
||||||
await adminApplicationOAuthClientsPage.openFirstAuthClientCreateForm();
|
await adminApplicationOAuthClientsPage.openFirstAuthClientCreateForm();
|
||||||
@@ -345,11 +349,12 @@ test.describe('Admin Applications', () => {
|
|||||||
await expect(page.url()).toContain(
|
await expect(page.url()).toContain(
|
||||||
'/admin-settings/apps/mailchimp/settings'
|
'/admin-settings/apps/mailchimp/settings'
|
||||||
);
|
);
|
||||||
|
await expect(adminApplicationSettingsPage.pageTitle).toBeVisible();
|
||||||
|
|
||||||
await adminApplicationSettingsPage.allowUseOnlyPredefinedAuthClients();
|
await adminApplicationSettingsPage.allowUseOnlyPredefinedAuthClients();
|
||||||
await adminApplicationSettingsPage.disallowConnections();
|
await adminApplicationSettingsPage.disallowConnections();
|
||||||
await adminApplicationSettingsPage.saveSettings();
|
await adminApplicationSettingsPage.saveSettings();
|
||||||
await adminApplicationSettingsPage.expectSuccessSnackbarToBeVisible();
|
await adminApplicationSettingsPage.expectOnlyOneSuccessSnackbarToBeVisible();
|
||||||
|
|
||||||
await adminApplicationOAuthClientsPage.openAuthClientsTab();
|
await adminApplicationOAuthClientsPage.openAuthClientsTab();
|
||||||
await adminApplicationOAuthClientsPage.openFirstAuthClientCreateForm();
|
await adminApplicationOAuthClientsPage.openFirstAuthClientCreateForm();
|
||||||
@@ -411,6 +416,7 @@ test.describe('Admin Applications', () => {
|
|||||||
}) => {
|
}) => {
|
||||||
await adminApplicationsPage.openApplication('RSS');
|
await adminApplicationsPage.openApplication('RSS');
|
||||||
await expect(page.url()).toContain('/admin-settings/apps/rss/settings');
|
await expect(page.url()).toContain('/admin-settings/apps/rss/settings');
|
||||||
|
await expect(adminApplicationSettingsPage.pageTitle).toBeVisible();
|
||||||
|
|
||||||
await expect(
|
await expect(
|
||||||
adminApplicationSettingsPage.useOnlyPredefinedAuthClients
|
adminApplicationSettingsPage.useOnlyPredefinedAuthClients
|
||||||
|
|||||||
Reference in New Issue
Block a user