diff --git a/tests/change-page-mode.spec.ts b/tests/change-page-mode.spec.ts index 34dbba1ccb..d6e346d456 100644 --- a/tests/change-page-mode.spec.ts +++ b/tests/change-page-mode.spec.ts @@ -1,5 +1,6 @@ import { test, expect } from '@playwright/test'; import { loadPage } from './libs/load-page'; +import { clickPageMoreActions } from './libs/page-logic'; loadPage(); @@ -36,11 +37,7 @@ test.describe('Change page mode(Paper or Edgeless)', () => { }); test('Convert to edgeless by editor header items', async ({ page }) => { - await page - .getByTestId('editor-header-items') - .getByRole('button') - .nth(2) - .click(); + await clickPageMoreActions(page); const menusEdgelessItem = page.getByTestId('editor-option-menu-edgeless'); await menusEdgelessItem.click(); diff --git a/tests/libs/page-logic.ts b/tests/libs/page-logic.ts new file mode 100644 index 0000000000..bd4ae625a5 --- /dev/null +++ b/tests/libs/page-logic.ts @@ -0,0 +1,11 @@ +export async function newPage(page) { + return page.getByTestId('sliderBar').getByText('New Page').click(); +} + +export async function clickPageMoreActions(page) { + return page + .getByTestId('editor-header-items') + .getByRole('button') + .nth(2) + .click(); +} diff --git a/tests/local-first-delete-page.spec.ts b/tests/local-first-delete-page.spec.ts index b4b0be0140..54bd5f7624 100644 --- a/tests/local-first-delete-page.spec.ts +++ b/tests/local-first-delete-page.spec.ts @@ -1,5 +1,6 @@ import { test, expect } from '@playwright/test'; import { loadPage } from './libs/load-page'; +import { newPage } from './libs/page-logic'; loadPage(); @@ -7,7 +8,7 @@ test.describe('Local first delete page', () => { test('New a page , then delete it in all pages, permanently delete it', async ({ page, }) => { - await page.getByText('New Page').click(); + await newPage(page); await page.getByPlaceholder('Title').click(); await page.getByPlaceholder('Title').fill('this is a new page to restore'); const originPageUrl = page.url(); diff --git a/tests/local-first-export-page.spec.ts b/tests/local-first-export-page.spec.ts index fbf7a19357..90be01ace5 100644 --- a/tests/local-first-export-page.spec.ts +++ b/tests/local-first-export-page.spec.ts @@ -1,6 +1,6 @@ import { test, expect } from '@playwright/test'; import { loadPage } from './libs/load-page'; - +import { newPage, clickPageMoreActions } from './libs/page-logic'; loadPage(); test.describe('Local first export page', () => { @@ -18,11 +18,7 @@ test.describe('Local first export page', () => { expect(cell).not.toBeUndefined(); await cell.click(); - await page - .getByTestId('editor-header-items') - .getByRole('button') - .nth(2) - .click(); + await clickPageMoreActions(page); const exportParentBtn = page.getByRole('tooltip', { name: 'Add to favourites Convert to Edgeless Export Delete', }); @@ -37,7 +33,7 @@ test.describe('Local first export page', () => { }); test('New a page ,then open it and export markdown', async ({ page }) => { - await page.getByText('New Page').click(); + await newPage(page); await page.getByPlaceholder('Title').click(); await page .getByPlaceholder('Title') @@ -49,11 +45,7 @@ test.describe('Local first export page', () => { expect(cell).not.toBeUndefined(); await cell.click(); - await page - .getByTestId('editor-header-items') - .getByRole('button') - .nth(2) - .click(); + await clickPageMoreActions(page); const exportParentBtn = page.getByRole('tooltip', { name: 'Add to favourites Convert to Edgeless Export Delete', }); diff --git a/tests/local-first-favorite-page.spec.ts b/tests/local-first-favorite-page.spec.ts index aa95da1b89..75eb312e24 100644 --- a/tests/local-first-favorite-page.spec.ts +++ b/tests/local-first-favorite-page.spec.ts @@ -1,11 +1,11 @@ import { test, expect } from '@playwright/test'; import { loadPage } from './libs/load-page'; - +import { newPage, clickPageMoreActions } from './libs/page-logic'; loadPage(); test.describe('Local first favorite and cancel favorite page', () => { test('New a page and open it ,then favorite it', async ({ page }) => { - await page.getByText('New Page').click(); + await newPage(page); await page.getByPlaceholder('Title').click(); await page.getByPlaceholder('Title').fill('this is a new page to favorite'); await page.getByRole('link', { name: 'All pages' }).click(); @@ -15,16 +15,12 @@ test.describe('Local first favorite and cancel favorite page', () => { expect(cell).not.toBeUndefined(); await cell.click(); - await page - .getByTestId('editor-header-items') - .getByRole('button') - .nth(2) - .click(); + await clickPageMoreActions(page); const favoriteBtn = page.getByTestId('editor-option-menu-favorite'); await favoriteBtn.click(); }); test('Cancel favorite', async ({ page }) => { - await page.getByText('New Page').click(); + await newPage(page); await page.getByPlaceholder('Title').click(); await page.getByPlaceholder('Title').fill('this is a new page to favorite'); await page.getByRole('link', { name: 'All pages' }).click(); @@ -34,11 +30,7 @@ test.describe('Local first favorite and cancel favorite page', () => { expect(cell).not.toBeUndefined(); await cell.click(); - await page - .getByTestId('editor-header-items') - .getByRole('button') - .nth(2) - .click(); + await clickPageMoreActions(page); const favoriteBtn = page.getByTestId('editor-option-menu-favorite'); await favoriteBtn.click(); diff --git a/tests/local-first-favorites-items.spec.ts b/tests/local-first-favorites-items.spec.ts index 68e6fbb5ad..bf05995abd 100644 --- a/tests/local-first-favorites-items.spec.ts +++ b/tests/local-first-favorites-items.spec.ts @@ -1,11 +1,11 @@ import { test, expect } from '@playwright/test'; import { loadPage } from './libs/load-page'; - +import { newPage, clickPageMoreActions } from './libs/page-logic'; loadPage(); test.describe('Local first favorite items ui', () => { test('Show favorite items in sidebar', async ({ page }) => { - await page.getByText('New Page').click(); + await newPage(page); await page.getByPlaceholder('Title').click(); await page.getByPlaceholder('Title').fill('this is a new page to favorite'); const newPageId = page.url().split('/').reverse()[0]; @@ -15,11 +15,7 @@ test.describe('Local first favorite items ui', () => { }); expect(cell).not.toBeUndefined(); await cell.click(); - await page - .getByTestId('editor-header-items') - .getByRole('button') - .nth(2) - .click(); + await clickPageMoreActions(page); const favoriteBtn = page.getByTestId('editor-option-menu-favorite'); await favoriteBtn.click(); @@ -32,7 +28,7 @@ test.describe('Local first favorite items ui', () => { }); test('Show favorite items in favorite list', async ({ page }) => { - await page.getByText('New Page').click(); + await newPage(page); await page.getByPlaceholder('Title').click(); await page.getByPlaceholder('Title').fill('this is a new page to favorite'); await page.getByRole('link', { name: 'All pages' }).click(); @@ -41,11 +37,7 @@ test.describe('Local first favorite items ui', () => { }); expect(cell).not.toBeUndefined(); await cell.click(); - await page - .getByTestId('editor-header-items') - .getByRole('button') - .nth(2) - .click(); + await clickPageMoreActions(page); const favoriteBtn = page.getByTestId('editor-option-menu-favorite'); await favoriteBtn.click(); diff --git a/tests/local-first-new-page.spec.ts b/tests/local-first-new-page.spec.ts index 6a59ad94bb..7a4f5bd698 100644 --- a/tests/local-first-new-page.spec.ts +++ b/tests/local-first-new-page.spec.ts @@ -1,18 +1,18 @@ import { test, expect } from '@playwright/test'; import { loadPage } from './libs/load-page'; - +import { newPage } from './libs/page-logic'; loadPage(); test.describe('local first new page', () => { test('click btn new page', async ({ page }) => { const originPageId = page.url().split('/').reverse()[0]; - await page.getByText('New Page').click(); + await newPage(page); const newPageId = page.url().split('/').reverse()[0]; expect(newPageId).not.toBe(originPageId); }); test('click btn bew page and find it in all pages', async ({ page }) => { - await page.getByText('New Page').click(); + await newPage(page); await page.getByPlaceholder('Title').click(); await page.getByPlaceholder('Title').fill('this is a new page'); await page.getByRole('link', { name: 'All pages' }).click(); diff --git a/tests/local-first-openpage-newtab.spec.ts b/tests/local-first-openpage-newtab.spec.ts index d1a13671aa..0375bbed88 100644 --- a/tests/local-first-openpage-newtab.spec.ts +++ b/tests/local-first-openpage-newtab.spec.ts @@ -1,11 +1,11 @@ import { test, expect } from '@playwright/test'; import { loadPage } from './libs/load-page'; - +import { newPage } from './libs/page-logic'; loadPage(); test.describe('local first new page', () => { test('click btn bew page and open in tab', async ({ page }) => { - await page.getByText('New Page').click(); + await newPage(page); await page.getByPlaceholder('Title').click(); await page.getByPlaceholder('Title').fill('this is a new page'); const newPageUrl = page.url(); diff --git a/tests/local-first-restore-page.spec.ts b/tests/local-first-restore-page.spec.ts index 8b3d2ccae5..b750931433 100644 --- a/tests/local-first-restore-page.spec.ts +++ b/tests/local-first-restore-page.spec.ts @@ -1,13 +1,13 @@ import { test, expect } from '@playwright/test'; import { loadPage } from './libs/load-page'; - +import { newPage } from './libs/page-logic'; loadPage(); test.describe('Local first delete page', () => { test('New a page , then delete it in all pages, restore it', async ({ page, }) => { - await page.getByText('New Page').click(); + await newPage(page); await page.getByPlaceholder('Title').click(); await page.getByPlaceholder('Title').fill('this is a new page to restore'); const originPageUrl = page.url(); diff --git a/tests/local-first-show-delete-modal.spec.ts b/tests/local-first-show-delete-modal.spec.ts index 0ec72e3bdc..902f89d535 100644 --- a/tests/local-first-show-delete-modal.spec.ts +++ b/tests/local-first-show-delete-modal.spec.ts @@ -1,11 +1,11 @@ import { test, expect } from '@playwright/test'; import { loadPage } from './libs/load-page'; - +import { newPage, clickPageMoreActions } from './libs/page-logic'; loadPage(); test.describe('Local first delete page', () => { test('New a page ,then open it and show delete modal', async ({ page }) => { - await page.getByText('New Page').click(); + await newPage(page); await page.getByPlaceholder('Title').click(); await page.getByPlaceholder('Title').fill('this is a new page to delete'); await page.getByRole('link', { name: 'All pages' }).click(); @@ -15,11 +15,7 @@ test.describe('Local first delete page', () => { expect(cell).not.toBeUndefined(); await cell.click(); - await page - .getByTestId('editor-header-items') - .getByRole('button') - .nth(2) - .click(); + await clickPageMoreActions(page); const deleteBtn = page.getByTestId('editor-option-menu-delete'); await deleteBtn.click(); const confirmTip = page.getByText('Delete page?'); @@ -29,7 +25,7 @@ test.describe('Local first delete page', () => { test('New a page ,then go to all pages and show delete modal', async ({ page, }) => { - await page.getByText('New Page').click(); + await newPage(page); await page.getByPlaceholder('Title').click(); await page.getByPlaceholder('Title').fill('this is a new page to delete'); const newPageId = page.url().split('/').reverse()[0]; diff --git a/tests/local-first-trash-page.spec.ts b/tests/local-first-trash-page.spec.ts index 9360a618e3..093c51cc83 100644 --- a/tests/local-first-trash-page.spec.ts +++ b/tests/local-first-trash-page.spec.ts @@ -1,13 +1,13 @@ import { test, expect } from '@playwright/test'; import { loadPage } from './libs/load-page'; - +import { newPage } from './libs/page-logic'; loadPage(); test.describe('Local first trash page', () => { test('New a page , then delete it in all pages, finally find it in trash', async ({ page, }) => { - await page.getByText('New Page').click(); + await newPage(page); await page.getByPlaceholder('Title').click(); await page.getByPlaceholder('Title').fill('this is a new page to delete'); const newPageId = page.url().split('/').reverse()[0];