From f30056f06a4d65a566e57700acaa709d16123c29 Mon Sep 17 00:00:00 2001 From: Shane Osbourne Date: Mon, 24 Feb 2025 15:31:29 +0000 Subject: [PATCH 1/2] fixed flakey test with comparing titles --- .../special-error/integration-tests/special-error.js | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/special-pages/pages/special-error/integration-tests/special-error.js b/special-pages/pages/special-error/integration-tests/special-error.js index c0ec0eb81..480e50a77 100644 --- a/special-pages/pages/special-error/integration-tests/special-error.js +++ b/special-pages/pages/special-error/integration-tests/special-error.js @@ -175,14 +175,11 @@ export class SpecialErrorPage { } /** - * * @param {string} pageTitle */ async showsPageTitle(pageTitle) { const { page } = this; - - const title = await page.locator('title').textContent(); - expect(title).toBe(pageTitle); + await page.waitForFunction((title) => document.title === title, pageTitle, { timeout: 2000 }); } async showsExpiredPageInPolish() { @@ -259,8 +256,7 @@ export class SpecialErrorPage { async showsPhishingPage() { const { page } = this; - const title = await page.locator('title').textContent(); - expect(title).toBe('Warning: Security Risk'); + await this.showsPageTitle('Warning: Security Risk'); await expect(page.getByText('Warning: This site may be a security risk', { exact: true })).toBeVisible(); await expect( @@ -281,8 +277,7 @@ export class SpecialErrorPage { async showsMalwarePage() { const { page } = this; - const title = await page.locator('title').textContent(); - expect(title).toBe('Warning: Security Risk'); + await this.showsPageTitle('Warning: Security Risk'); await expect(page.getByText('Warning: This site may be a security risk', { exact: true })).toBeVisible(); await expect( From 38fe65be8da509166bf3cfdfdc8f2a0e7c3cf7d9 Mon Sep 17 00:00:00 2001 From: Shane Osbourne Date: Mon, 24 Feb 2025 15:36:42 +0000 Subject: [PATCH 2/2] more await --- .../special-error/integration-tests/special-error.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/special-pages/pages/special-error/integration-tests/special-error.js b/special-pages/pages/special-error/integration-tests/special-error.js index 480e50a77..ee81d2616 100644 --- a/special-pages/pages/special-error/integration-tests/special-error.js +++ b/special-pages/pages/special-error/integration-tests/special-error.js @@ -154,7 +154,7 @@ export class SpecialErrorPage { async showsExpiredPage() { const { page } = this; - this.showsPageTitle('Warning: This site may be insecure'); + await this.showsPageTitle('Warning: This site may be insecure'); await expect(page.getByText('Warning: This site may be insecure', { exact: true })).toBeVisible(); await expect( @@ -190,7 +190,7 @@ export class SpecialErrorPage { async showsInvalidPage() { const { page } = this; - this.showsPageTitle('Warning: This site may be insecure'); + await this.showsPageTitle('Warning: This site may be insecure'); await expect(page.getByText('Warning: This site may be insecure', { exact: true })).toBeVisible(); await expect( @@ -212,7 +212,7 @@ export class SpecialErrorPage { async showsSelfSignedPage() { const { page } = this; - this.showsPageTitle('Warning: This site may be insecure'); + await this.showsPageTitle('Warning: This site may be insecure'); await expect(page.getByText('Warning: This site may be insecure', { exact: true })).toBeVisible(); await expect( @@ -234,7 +234,7 @@ export class SpecialErrorPage { async showsWrongHostPage() { const { page } = this; - this.showsPageTitle('Warning: This site may be insecure'); + await this.showsPageTitle('Warning: This site may be insecure'); await expect(page.getByText('Warning: This site may be insecure', { exact: true })).toBeVisible(); await expect(