From 2fe29ee756ae92676e20aee1a1ad1e4ba073acae Mon Sep 17 00:00:00 2001 From: Adrian Dubel Date: Tue, 14 Oct 2025 10:16:27 +0200 Subject: [PATCH 1/5] add test for muted user --- .../tests/testnet_e2e/mutedUser.spec.ts | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts diff --git a/apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts b/apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts new file mode 100644 index 000000000..57b6d4541 --- /dev/null +++ b/apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts @@ -0,0 +1,38 @@ +import { test, expect } from '../../fixtures'; +import { HomePage } from '../support/pages/homePage'; +import { ProfileUserMenu } from '../support/pages/profileUserMenu'; +import { ProfilePage } from '../support/pages/profilePage'; +import { PostPage } from '../support/pages/postPage'; + +test.describe('Muted user - tests', () => { + let profileUserMenu: ProfileUserMenu; + let homePage: HomePage; + let profilePage: ProfilePage; + let postPage: PostPage; + + test.beforeEach(async ({ denserAutoTest0Page }) => { + profileUserMenu = new ProfileUserMenu(denserAutoTest0Page.page); + homePage = new HomePage(denserAutoTest0Page.page); + profilePage = new ProfilePage(denserAutoTest0Page.page); + postPage = new PostPage(denserAutoTest0Page.page); + }); + + test('Add user to Muted list', async ({ denserAutoTest0Page }) => { + const postAuthorName = await denserAutoTest0Page.page.locator(homePage.postAuthor).nth(1).innerText(); + + await denserAutoTest0Page.page.locator(homePage.postAuthor).nth(1).click(); + await expect(denserAutoTest0Page.page.locator(profilePage.profileNameString)).toBeVisible(); + await profilePage.muteButton.click(); + await denserAutoTest0Page.page.locator(homePage.profileAvatar).click() + await expect(denserAutoTest0Page.page.locator(profileUserMenu.profileLinkString)).toBeVisible(); + await denserAutoTest0Page.page.locator(profileUserMenu.profileLinkString).click() + await expect(denserAutoTest0Page.page.getByTestId('profile-name')).toContainText('denserautotest0') + await profilePage.mutedUsersBtn.click() + await expect(denserAutoTest0Page.page.getByRole('heading', { name: 'Accounts Muted By' })).toBeVisible(); + await expect(denserAutoTest0Page.page.getByRole('link', { name: `${postAuthorName}` })).toBeVisible(); + await denserAutoTest0Page.page.getByRole('button', { name: 'unmute' }).click() + await expect(denserAutoTest0Page.page.getByRole('status')).toBeVisible() + await expect(denserAutoTest0Page.page.getByText('Muted', { exact: true })) + + }); +}); -- GitLab From b01bb37845fb61763f02acf30f1fea5422c1f7ed Mon Sep 17 00:00:00 2001 From: Adrian Dubel Date: Wed, 15 Oct 2025 08:22:20 +0200 Subject: [PATCH 2/5] add locators for muted user test --- apps/blog/playwright/tests/support/pages/profilePage.ts | 4 ++++ apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts | 3 ++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/apps/blog/playwright/tests/support/pages/profilePage.ts b/apps/blog/playwright/tests/support/pages/profilePage.ts index a1a7c13e7..8510c02c7 100644 --- a/apps/blog/playwright/tests/support/pages/profilePage.ts +++ b/apps/blog/playwright/tests/support/pages/profilePage.ts @@ -200,6 +200,8 @@ export class ProfilePage { readonly profileNameString: string; readonly followBtn: string; readonly profileStatsString: string; + readonly muteButton: Locator; + readonly mutedUsersBtn: Locator; constructor(page: Page) { this.page = page; @@ -298,6 +300,8 @@ export class ProfilePage { this.repliesCommentListItemRespondFirst = this.repliesCommentListItemRespond.first(); this.repliesCommentListItemRespondTooltip = page.locator('[data-testid="comment-respond-tooltip"]'); this.repliesCommentListItemArticleTitle = page.locator('[data-testid="article-title"]'); + this.muteButton = page.locator('[data-testid="profile-mute-button"]'); + this.mutedUsersBtn = page.getByRole('link', { name: 'Muted Users' }); this.notificationsMenu = page.locator('[data-testid="notifications-local-menu"]'); this.notificationsMenuAllButton = page diff --git a/apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts b/apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts index 57b6d4541..d21a06fb5 100644 --- a/apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts +++ b/apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts @@ -32,7 +32,8 @@ test.describe('Muted user - tests', () => { await expect(denserAutoTest0Page.page.getByRole('link', { name: `${postAuthorName}` })).toBeVisible(); await denserAutoTest0Page.page.getByRole('button', { name: 'unmute' }).click() await expect(denserAutoTest0Page.page.getByRole('status')).toBeVisible() - await expect(denserAutoTest0Page.page.getByText('Muted', { exact: true })) + await expect(denserAutoTest0Page.page.getByText('There are no users on this')).toBeVisible() + await expect(denserAutoTest0Page.page.getByText('Unmuted', { exact: true })).toBeVisible(); }); }); -- GitLab From a55cb6f12b9b9e30c31901bbb06b84140d16657c Mon Sep 17 00:00:00 2001 From: Adrian Dubel Date: Mon, 20 Oct 2025 10:11:33 +0200 Subject: [PATCH 3/5] add improves and second test for muted users --- .../tests/support/pages/profilePage.ts | 5 +++- .../tests/testnet_e2e/mutedUser.spec.ts | 24 +++++++++++++++++-- 2 files changed, 26 insertions(+), 3 deletions(-) diff --git a/apps/blog/playwright/tests/support/pages/profilePage.ts b/apps/blog/playwright/tests/support/pages/profilePage.ts index 8510c02c7..e19841da1 100644 --- a/apps/blog/playwright/tests/support/pages/profilePage.ts +++ b/apps/blog/playwright/tests/support/pages/profilePage.ts @@ -202,7 +202,8 @@ export class ProfilePage { readonly profileStatsString: string; readonly muteButton: Locator; readonly mutedUsersBtn: Locator; - + readonly unmuteButton: Locator; + constructor(page: Page) { this.page = page; this.followBtn = '[data-testid="profile-follow-button"]' @@ -302,6 +303,8 @@ export class ProfilePage { this.repliesCommentListItemArticleTitle = page.locator('[data-testid="article-title"]'); this.muteButton = page.locator('[data-testid="profile-mute-button"]'); this.mutedUsersBtn = page.getByRole('link', { name: 'Muted Users' }); + this.unmuteButton = page.getByRole('button', { name: 'unmute' }) + this.notificationsMenu = page.locator('[data-testid="notifications-local-menu"]'); this.notificationsMenuAllButton = page diff --git a/apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts b/apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts index d21a06fb5..57bfaafd6 100644 --- a/apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts +++ b/apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts @@ -26,14 +26,34 @@ test.describe('Muted user - tests', () => { await denserAutoTest0Page.page.locator(homePage.profileAvatar).click() await expect(denserAutoTest0Page.page.locator(profileUserMenu.profileLinkString)).toBeVisible(); await denserAutoTest0Page.page.locator(profileUserMenu.profileLinkString).click() - await expect(denserAutoTest0Page.page.getByTestId('profile-name')).toContainText('denserautotest0') + await expect(profilePage.profileName).toContainText('denserautotest0') await profilePage.mutedUsersBtn.click() await expect(denserAutoTest0Page.page.getByRole('heading', { name: 'Accounts Muted By' })).toBeVisible(); await expect(denserAutoTest0Page.page.getByRole('link', { name: `${postAuthorName}` })).toBeVisible(); - await denserAutoTest0Page.page.getByRole('button', { name: 'unmute' }).click() + await profilePage.unmuteButton.click() await expect(denserAutoTest0Page.page.getByRole('status')).toBeVisible() await expect(denserAutoTest0Page.page.getByText('There are no users on this')).toBeVisible() await expect(denserAutoTest0Page.page.getByText('Unmuted', { exact: true })).toBeVisible(); }); + + test('Add user to Muted list by - Add Account(s) To List', async ({ denserAutoTest0Page }) => { + const muteUser = `serejandmyself` + + await denserAutoTest0Page.page.locator(homePage.profileAvatar).click() + await expect(denserAutoTest0Page.page.locator(profileUserMenu.profileLinkString)).toBeVisible(); + await denserAutoTest0Page.page.locator(profileUserMenu.profileLinkString).click() + await expect(profilePage.profileName).toContainText('denserautotest0') + await profilePage.mutedUsersBtn.click() + await expect(denserAutoTest0Page.page.getByRole('heading', { name: 'Accounts Muted By' })).toBeVisible(); + await denserAutoTest0Page.page.locator('div').filter({ hasText: /^Add Account\(s\) To List\(single account or comma separated list\)$/ }).getByRole('textbox').fill(muteUser); + await denserAutoTest0Page.page.waitForTimeout(5000) + await denserAutoTest0Page.page.getByRole('button', { name: 'Add to list' }).click(); + await expect(denserAutoTest0Page.page.getByText('serejandmyself unmute')).toBeVisible(); + await expect(denserAutoTest0Page.page.getByText('You have muted serejandmyself.')).toBeVisible(); + await profilePage.unmuteButton.click() + await expect(denserAutoTest0Page.page.getByText('Unmuted', { exact: true })).toBeVisible(); + await expect(denserAutoTest0Page.page.getByText('There are no users on this')).toBeVisible(); + + }); }); -- GitLab From 8944af89df4086034a0d5d47f8099770830ed952 Mon Sep 17 00:00:00 2001 From: Adrian Dubel Date: Thu, 23 Oct 2025 10:23:12 +0200 Subject: [PATCH 4/5] improve test for muted users --- apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts b/apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts index 57bfaafd6..d07c9de6d 100644 --- a/apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts +++ b/apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts @@ -33,8 +33,7 @@ test.describe('Muted user - tests', () => { await profilePage.unmuteButton.click() await expect(denserAutoTest0Page.page.getByRole('status')).toBeVisible() await expect(denserAutoTest0Page.page.getByText('There are no users on this')).toBeVisible() - await expect(denserAutoTest0Page.page.getByText('Unmuted', { exact: true })).toBeVisible(); - + await expect(denserAutoTest0Page.page.getByText('Unmuted', { exact: true })).toBeVisible(); }); test('Add user to Muted list by - Add Account(s) To List', async ({ denserAutoTest0Page }) => { @@ -50,10 +49,9 @@ test.describe('Muted user - tests', () => { await denserAutoTest0Page.page.waitForTimeout(5000) await denserAutoTest0Page.page.getByRole('button', { name: 'Add to list' }).click(); await expect(denserAutoTest0Page.page.getByText('serejandmyself unmute')).toBeVisible(); - await expect(denserAutoTest0Page.page.getByText('You have muted serejandmyself.')).toBeVisible(); + await expect(denserAutoTest0Page.page.getByText(`You have muted ${muteUser}`)).toBeVisible(); await profilePage.unmuteButton.click() await expect(denserAutoTest0Page.page.getByText('Unmuted', { exact: true })).toBeVisible(); await expect(denserAutoTest0Page.page.getByText('There are no users on this')).toBeVisible(); - }); }); -- GitLab From c2b579fe3e141219217bde1ea3a900800bf1a650 Mon Sep 17 00:00:00 2001 From: Adrian Dubel Date: Mon, 27 Oct 2025 10:25:23 +0100 Subject: [PATCH 5/5] tests fix --- apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts b/apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts index d07c9de6d..1895f1484 100644 --- a/apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts +++ b/apps/blog/playwright/tests/testnet_e2e/mutedUser.spec.ts @@ -35,6 +35,7 @@ test.describe('Muted user - tests', () => { await expect(denserAutoTest0Page.page.getByText('There are no users on this')).toBeVisible() await expect(denserAutoTest0Page.page.getByText('Unmuted', { exact: true })).toBeVisible(); }); + test('Add user to Muted list by - Add Account(s) To List', async ({ denserAutoTest0Page }) => { const muteUser = `serejandmyself` -- GitLab