mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-07-20 19:46:32 +08:00
chore: remove redundant await in test cases
This commit is contained in:
@@ -7,7 +7,7 @@ test.describe('Change page mode(Paper or Edgeless)', () => {
|
||||
test('Switch to edgeless by switch edgeless item', async ({ page }) => {
|
||||
const switcher = page.locator('[data-testid=editor-mode-switcher]');
|
||||
const box = await switcher.boundingBox();
|
||||
await expect(box?.x).not.toBeUndefined();
|
||||
expect(box?.x).not.toBeUndefined();
|
||||
|
||||
// mouse hover trigger animation for showing full switcher
|
||||
// await page.mouse.move((box?.x ?? 0) + 5, (box?.y ?? 0) + 5);
|
||||
@@ -15,7 +15,6 @@ test.describe('Change page mode(Paper or Edgeless)', () => {
|
||||
|
||||
// await page.waitForTimeout(1000);
|
||||
const edgelessButton = page.getByTestId('switch-edgeless-item'); // page.getByText('Edgeless').click()
|
||||
|
||||
await edgelessButton.click();
|
||||
|
||||
// // mouse move to edgeless button
|
||||
@@ -32,9 +31,8 @@ test.describe('Change page mode(Paper or Edgeless)', () => {
|
||||
// (box?.y ?? 0) + 5
|
||||
// );
|
||||
|
||||
const edgelessDom = page.locator('affine-edgeless-page');
|
||||
|
||||
await expect(await edgelessDom.isVisible()).toBe(true);
|
||||
const edgeless = page.locator('affine-edgeless-page');
|
||||
expect(await edgeless.isVisible()).toBe(true);
|
||||
});
|
||||
|
||||
test('Convert to edgeless by editor header items', async ({ page }) => {
|
||||
@@ -44,11 +42,9 @@ test.describe('Change page mode(Paper or Edgeless)', () => {
|
||||
.nth(2)
|
||||
.click();
|
||||
const menusEdgelessItem = page.getByTestId('editor-option-menu-edgeless');
|
||||
|
||||
await menusEdgelessItem.click();
|
||||
|
||||
const edgelessDom = page.locator('affine-edgeless-page');
|
||||
|
||||
await expect(await edgelessDom.isVisible()).toBe(true);
|
||||
const edgeless = page.locator('affine-edgeless-page');
|
||||
expect(await edgeless.isVisible()).toBe(true);
|
||||
});
|
||||
});
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { test, expect, type Page } from '@playwright/test';
|
||||
import { test, expect } from '@playwright/test';
|
||||
import { loadPage } from './libs/load-page';
|
||||
|
||||
loadPage();
|
||||
@@ -7,9 +7,8 @@ test.describe('Open contact us', () => {
|
||||
test('Click about us', async ({ page }) => {
|
||||
const currentWorkspace = page.getByTestId('current-workspace');
|
||||
await currentWorkspace.click();
|
||||
page.waitForTimeout(1000);
|
||||
// await page.waitForTimeout(1000);
|
||||
await page.getByText('About AFFiNE').click();
|
||||
|
||||
const contactUsModal = page.locator(
|
||||
'[data-testid=contact-us-modal-content]'
|
||||
);
|
||||
@@ -18,16 +17,16 @@ test.describe('Open contact us', () => {
|
||||
test('Click right-bottom corner contact icon', async ({ page }) => {
|
||||
const faqIcon = page.locator('[data-testid=faq-icon]');
|
||||
const box = await faqIcon.boundingBox();
|
||||
await expect(box?.x).not.toBeUndefined();
|
||||
await page.mouse.move((box?.x ?? 0) + 10, (box?.y ?? 0) + 10);
|
||||
expect(box?.x).not.toBeUndefined();
|
||||
|
||||
await page.mouse.move((box?.x ?? 0) + 10, (box?.y ?? 0) + 10);
|
||||
await page.mouse.move((box?.x ?? 0) + 5, (box?.y ?? 0) + 5);
|
||||
const rightBottomContactUs = page.locator(
|
||||
'[data-testid=right-bottom-contact-us-icon]'
|
||||
);
|
||||
await expect(await rightBottomContactUs.isVisible()).toEqual(true);
|
||||
expect(await rightBottomContactUs.isVisible()).toEqual(true);
|
||||
|
||||
await rightBottomContactUs.click();
|
||||
|
||||
const contactUsModal = page.locator(
|
||||
'[data-testid=contact-us-modal-content]'
|
||||
);
|
||||
|
||||
@@ -8,8 +8,7 @@ test.describe('exception page', () => {
|
||||
test('visit 404 page', async ({ page }) => {
|
||||
await page.goto('http://localhost:8080/404');
|
||||
await page.waitForTimeout(1000);
|
||||
const notFoundTipDom = await page.getByText('404 - Page Not Found');
|
||||
|
||||
await expect(await notFoundTipDom.isVisible()).toBe(true);
|
||||
const notFoundTip = page.getByText('404 - Page Not Found');
|
||||
expect(await notFoundTip.isVisible()).toBe(true);
|
||||
});
|
||||
});
|
||||
|
||||
@@ -8,9 +8,6 @@ test.describe('invite code page', () => {
|
||||
test('the link has expired', async ({ page }) => {
|
||||
await page.goto('http://localhost:8080//invite/abc');
|
||||
await page.waitForTimeout(1000);
|
||||
|
||||
await expect(
|
||||
await page.getByText('The link has expired')
|
||||
).not.toBeUndefined();
|
||||
expect(page.getByText('The link has expired')).not.toBeUndefined();
|
||||
});
|
||||
});
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { test, expect, type Page } from '@playwright/test';
|
||||
import { test, expect } from '@playwright/test';
|
||||
import { loadPage } from './libs/load-page';
|
||||
|
||||
loadPage();
|
||||
@@ -6,25 +6,20 @@ loadPage();
|
||||
test.describe('Layout ui', () => {
|
||||
test('Collapse Sidebar', async ({ page }) => {
|
||||
await page.getByTestId('sliderBar-arrowButton').click();
|
||||
|
||||
const sliderBarArea = await page.getByText(
|
||||
const sliderBarArea = page.getByText(
|
||||
'Quick search All pagesFavouritesNo item Import Trash New Page'
|
||||
);
|
||||
|
||||
await expect(sliderBarArea).not.toBeVisible();
|
||||
});
|
||||
|
||||
test('Expand Sidebar', async ({ page }) => {
|
||||
await page.getByTestId('sliderBar-arrowButton').click();
|
||||
|
||||
const sliderBarArea = await page.getByText(
|
||||
const sliderBarArea = page.getByText(
|
||||
'Quick search All pagesFavouritesNo item Import Trash New Page'
|
||||
);
|
||||
|
||||
await expect(sliderBarArea).not.toBeVisible();
|
||||
|
||||
await page.getByTestId('sliderBar-arrowButton').click();
|
||||
|
||||
await expect(sliderBarArea).toBeVisible();
|
||||
});
|
||||
});
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
import type { Page } from '@playwright/test';
|
||||
|
||||
const IS_MAC = process.platform === 'darwin';
|
||||
// const IS_WINDOWS = process.platform === 'win32';
|
||||
// const IS_LINUX = !IS_MAC && !IS_WINDOWS;
|
||||
|
||||
async function keyDownCtrlOrMeta(page: Page) {
|
||||
if (IS_MAC) {
|
||||
@@ -19,21 +17,6 @@ async function keyUpCtrlOrMeta(page: Page) {
|
||||
await page.keyboard.up('Control');
|
||||
}
|
||||
}
|
||||
async function keyDownOptionMeta(page: Page) {
|
||||
if (IS_MAC) {
|
||||
await page.keyboard.down('Alt');
|
||||
} else {
|
||||
await page.keyboard.down('Shift');
|
||||
}
|
||||
}
|
||||
|
||||
async function keyUpOptionMeta(page: Page) {
|
||||
if (IS_MAC) {
|
||||
await page.keyboard.up('Alt');
|
||||
} else {
|
||||
await page.keyboard.up('Shift');
|
||||
}
|
||||
}
|
||||
|
||||
// It's not good enough, but better than calling keyDownCtrlOrMeta and keyUpCtrlOrMeta separately
|
||||
export const withCtrlOrMeta = async (page: Page, fn: () => Promise<void>) => {
|
||||
|
||||
@@ -8,29 +8,21 @@ test.describe('Local first delete page', () => {
|
||||
await page.getByText('New Page').click();
|
||||
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();
|
||||
|
||||
const cell = await page.getByRole('cell', {
|
||||
const cell = page.getByRole('cell', {
|
||||
name: 'this is a new page to delete',
|
||||
});
|
||||
|
||||
expect(cell).not.toBeUndefined();
|
||||
|
||||
await cell.click();
|
||||
|
||||
await page
|
||||
.getByTestId('editor-header-items')
|
||||
.getByRole('button')
|
||||
.nth(2)
|
||||
.click();
|
||||
|
||||
const deleteBtn = page.getByTestId('editor-option-menu-delete');
|
||||
|
||||
await deleteBtn.click();
|
||||
|
||||
const confirmTip = page.getByText('Delete page?');
|
||||
|
||||
expect(confirmTip).not.toBeUndefined();
|
||||
});
|
||||
|
||||
@@ -42,11 +34,9 @@ test.describe('Local first delete page', () => {
|
||||
await page.getByPlaceholder('Title').fill('this is a new page to delete');
|
||||
const newPageId = page.url().split('/').reverse()[0];
|
||||
await page.getByRole('link', { name: 'All pages' }).click();
|
||||
|
||||
const cell = await page.getByRole('cell', {
|
||||
const cell = page.getByRole('cell', {
|
||||
name: 'this is a new page to delete',
|
||||
});
|
||||
|
||||
expect(cell).not.toBeUndefined();
|
||||
|
||||
await page
|
||||
@@ -54,13 +44,9 @@ test.describe('Local first delete page', () => {
|
||||
.getByRole('button')
|
||||
.first()
|
||||
.click();
|
||||
|
||||
const deleteBtn = page.getByRole('button', { name: 'Delete' });
|
||||
|
||||
await deleteBtn.click();
|
||||
|
||||
const confirmTip = page.getByText('Delete page?');
|
||||
|
||||
expect(confirmTip).not.toBeUndefined();
|
||||
});
|
||||
});
|
||||
|
||||
@@ -10,34 +10,27 @@ test.describe('Local first export page', () => {
|
||||
await page
|
||||
.getByPlaceholder('Title')
|
||||
.fill('this is a new page to export html content');
|
||||
|
||||
await page.getByRole('link', { name: 'All pages' }).click();
|
||||
|
||||
const cell = await page.getByRole('cell', {
|
||||
const cell = page.getByRole('cell', {
|
||||
name: 'this is a new page to export html content',
|
||||
});
|
||||
|
||||
expect(cell).not.toBeUndefined();
|
||||
|
||||
await cell.click();
|
||||
|
||||
await page
|
||||
.getByTestId('editor-header-items')
|
||||
.getByRole('button')
|
||||
.nth(2)
|
||||
.click();
|
||||
|
||||
const exportParentBtn = page.getByRole('tooltip', {
|
||||
name: 'Add to favourites Convert to Edgeless Export Delete',
|
||||
});
|
||||
|
||||
await exportParentBtn.click();
|
||||
|
||||
const [download] = await Promise.all([
|
||||
page.waitForEvent('download'),
|
||||
page.getByRole('button', { name: 'Export to HTML' }).click(),
|
||||
]);
|
||||
|
||||
expect(download.suggestedFilename()).toBe(
|
||||
'this is a new page to export html content.html'
|
||||
);
|
||||
@@ -49,34 +42,26 @@ test.describe('Local first export page', () => {
|
||||
await page
|
||||
.getByPlaceholder('Title')
|
||||
.fill('this is a new page to export markdown content');
|
||||
|
||||
await page.getByRole('link', { name: 'All pages' }).click();
|
||||
|
||||
const cell = await page.getByRole('cell', {
|
||||
const cell = page.getByRole('cell', {
|
||||
name: 'this is a new page to export markdown content',
|
||||
});
|
||||
|
||||
expect(cell).not.toBeUndefined();
|
||||
|
||||
await cell.click();
|
||||
|
||||
await page
|
||||
.getByTestId('editor-header-items')
|
||||
.getByRole('button')
|
||||
.nth(2)
|
||||
.click();
|
||||
|
||||
const exportParentBtn = page.getByRole('tooltip', {
|
||||
name: 'Add to favourites Convert to Edgeless Export Delete',
|
||||
});
|
||||
|
||||
await exportParentBtn.click();
|
||||
|
||||
const [download] = await Promise.all([
|
||||
page.waitForEvent('download'),
|
||||
page.getByRole('button', { name: 'Export to Markdown' }).click(),
|
||||
]);
|
||||
|
||||
expect(download.suggestedFilename()).toBe(
|
||||
'this is a new page to export markdown content.md'
|
||||
);
|
||||
|
||||
@@ -8,25 +8,19 @@ test.describe('Local first favorite page', () => {
|
||||
await page.getByText('New Page').click();
|
||||
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();
|
||||
|
||||
const cell = await page.getByRole('cell', {
|
||||
const cell = page.getByRole('cell', {
|
||||
name: 'this is a new page to favorite',
|
||||
});
|
||||
|
||||
expect(cell).not.toBeUndefined();
|
||||
|
||||
await cell.click();
|
||||
|
||||
await page
|
||||
.getByTestId('editor-header-items')
|
||||
.getByRole('button')
|
||||
.nth(2)
|
||||
.click();
|
||||
|
||||
const favoriteBtn = page.getByTestId('editor-option-menu-favorite');
|
||||
|
||||
await favoriteBtn.click();
|
||||
});
|
||||
|
||||
@@ -35,17 +29,12 @@ test.describe('Local first favorite 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];
|
||||
|
||||
await page.getByRole('link', { name: 'All pages' }).click();
|
||||
|
||||
const cell = await page.getByRole('cell', {
|
||||
const cell = page.getByRole('cell', {
|
||||
name: 'this is a new page to favorite',
|
||||
});
|
||||
|
||||
expect(cell).not.toBeUndefined();
|
||||
|
||||
await cell.click();
|
||||
|
||||
await page
|
||||
.getByTestId('editor-header-items')
|
||||
.getByRole('button')
|
||||
@@ -53,13 +42,10 @@ test.describe('Local first favorite page', () => {
|
||||
.click();
|
||||
|
||||
const favoriteBtn = page.getByTestId('editor-option-menu-favorite');
|
||||
|
||||
await favoriteBtn.click();
|
||||
|
||||
const favoriteListItemInSidebar = await page.getByTestId(
|
||||
const favoriteListItemInSidebar = page.getByTestId(
|
||||
'favorite-list-item-' + newPageId
|
||||
);
|
||||
|
||||
expect(await favoriteListItemInSidebar.textContent()).toBe(
|
||||
'this is a new page to favorite'
|
||||
);
|
||||
@@ -69,17 +55,12 @@ test.describe('Local first favorite page', () => {
|
||||
await page.getByText('New Page').click();
|
||||
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();
|
||||
|
||||
const cell = await page.getByRole('cell', {
|
||||
const cell = page.getByRole('cell', {
|
||||
name: 'this is a new page to favorite',
|
||||
});
|
||||
|
||||
expect(cell).not.toBeUndefined();
|
||||
|
||||
await cell.click();
|
||||
|
||||
await page
|
||||
.getByTestId('editor-header-items')
|
||||
.getByRole('button')
|
||||
@@ -87,13 +68,11 @@ test.describe('Local first favorite page', () => {
|
||||
.click();
|
||||
|
||||
const favoriteBtn = page.getByTestId('editor-option-menu-favorite');
|
||||
|
||||
await favoriteBtn.click();
|
||||
|
||||
await page.getByRole('link', { name: 'Favourites' }).click();
|
||||
|
||||
expect(
|
||||
await page.getByRole('cell', { name: 'this is a new page to favorite' })
|
||||
page.getByRole('cell', { name: 'this is a new page to favorite' })
|
||||
).not.toBeUndefined();
|
||||
});
|
||||
|
||||
@@ -101,17 +80,13 @@ test.describe('Local first favorite page', () => {
|
||||
await page.getByText('New Page').click();
|
||||
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();
|
||||
|
||||
const cell = await page.getByRole('cell', {
|
||||
const cell = page.getByRole('cell', {
|
||||
name: 'this is a new page to favorite',
|
||||
});
|
||||
|
||||
expect(cell).not.toBeUndefined();
|
||||
|
||||
await cell.click();
|
||||
|
||||
await page
|
||||
.getByTestId('editor-header-items')
|
||||
.getByRole('button')
|
||||
@@ -119,24 +94,22 @@ test.describe('Local first favorite page', () => {
|
||||
.click();
|
||||
|
||||
const favoriteBtn = page.getByTestId('editor-option-menu-favorite');
|
||||
|
||||
await favoriteBtn.click();
|
||||
|
||||
// expect it in favorite list
|
||||
await page.getByRole('link', { name: 'Favourites' }).click();
|
||||
expect(
|
||||
await page.getByRole('cell', { name: 'this is a new page to favorite' })
|
||||
page.getByRole('cell', { name: 'this is a new page to favorite' })
|
||||
).not.toBeUndefined();
|
||||
|
||||
// cancel favorite
|
||||
await page.getByRole('link', { name: 'All pages' }).click();
|
||||
|
||||
await page.getByTestId('favourited-icon').click();
|
||||
|
||||
//expect it not in favorite list
|
||||
// expect it not in favorite list
|
||||
await page.getByRole('link', { name: 'Favourites' }).click();
|
||||
expect(
|
||||
await page.getByText(
|
||||
page.getByText(
|
||||
'Tips: Click Add to Favourites/Trash and the page will appear here.'
|
||||
)
|
||||
).not.toBeUndefined();
|
||||
|
||||
@@ -8,7 +8,6 @@ test.describe('Local first new page', () => {
|
||||
const originPageUrl = page.url();
|
||||
await page.getByText('New Page').click();
|
||||
const newPageUrl = page.url();
|
||||
|
||||
expect(newPageUrl).not.toBe(originPageUrl);
|
||||
expect(newPageUrl.length).toBe(originPageUrl.length);
|
||||
});
|
||||
@@ -17,11 +16,8 @@ test.describe('Local first new page', () => {
|
||||
await page.getByText('New Page').click();
|
||||
await page.getByPlaceholder('Title').click();
|
||||
await page.getByPlaceholder('Title').fill('this is a new page');
|
||||
|
||||
await page.getByRole('link', { name: 'All pages' }).click();
|
||||
|
||||
const cell = await page.getByRole('cell', { name: 'this is a new page' });
|
||||
|
||||
const cell = page.getByRole('cell', { name: 'this is a new page' });
|
||||
expect(cell).not.toBeUndefined();
|
||||
});
|
||||
});
|
||||
|
||||
@@ -5,12 +5,12 @@ loadPage();
|
||||
|
||||
test.describe('Local first default workspace', () => {
|
||||
test('Default workspace name', async ({ page }) => {
|
||||
const workspaceName = await page.getByTestId('workspace-name');
|
||||
const workspaceName = page.getByTestId('workspace-name');
|
||||
expect(await workspaceName.textContent()).toBe('AFFiNE');
|
||||
});
|
||||
|
||||
test('Default workspace avatar', async ({ page }) => {
|
||||
const workspaceAvatar = await page.getByTestId('workspace-avatar');
|
||||
const workspaceAvatar = page.getByTestId('workspace-avatar');
|
||||
expect(await workspaceAvatar.innerHTML()).toBe(
|
||||
'<svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.5" y="0.5" width="39" height="39" rx="19.5" stroke="#6880FF" fill="#FFF"></rect><path fill-rule="evenodd" clip-rule="evenodd" d="M18.6303 8.79688L11.2559 29.8393H15.5752L20.2661 15.2858L24.959 29.8393H29.2637L21.8881 8.79688H18.6303Z" fill="#6880FF"></path></svg>'
|
||||
);
|
||||
|
||||
+2
-4
@@ -1,4 +1,4 @@
|
||||
import { test, expect, type Page } from '@playwright/test';
|
||||
import { test, expect } from '@playwright/test';
|
||||
import { loadPage } from './libs/load-page';
|
||||
|
||||
loadPage();
|
||||
@@ -39,8 +39,6 @@ test.describe('Login Flow', () => {
|
||||
.click(),
|
||||
]);
|
||||
|
||||
expect(await firebasePage.url()).toContain(
|
||||
'.firebaseapp.com/__/auth/handler'
|
||||
);
|
||||
expect(firebasePage.url()).toContain('.firebaseapp.com/__/auth/handler');
|
||||
});
|
||||
});
|
||||
|
||||
@@ -3,9 +3,6 @@ import { loadPage } from './libs/load-page';
|
||||
import { withCtrlOrMeta } from './libs/keyboard';
|
||||
|
||||
loadPage();
|
||||
const IS_MAC = process.platform === 'darwin';
|
||||
// const IS_WINDOWS = process.platform === 'win32';
|
||||
// const IS_LINUX = !IS_MAC && !IS_WINDOWS;
|
||||
|
||||
const openQuickSearchByShortcut = async (page: Page) =>
|
||||
await withCtrlOrMeta(page, () => page.keyboard.press('k', { delay: 50 }));
|
||||
@@ -44,6 +41,7 @@ test.describe('Open quick search', () => {
|
||||
const quickSearch = page.locator('[data-testid=quickSearch]');
|
||||
await expect(quickSearch).toBeVisible();
|
||||
});
|
||||
|
||||
test('Click arrowDown icon after title', async ({ page }) => {
|
||||
//header-quickSearchButton
|
||||
const quickSearchButton = page.locator(
|
||||
@@ -53,6 +51,7 @@ test.describe('Open quick search', () => {
|
||||
const quickSearch = page.locator('[data-testid=quickSearch]');
|
||||
await expect(quickSearch).toBeVisible();
|
||||
});
|
||||
|
||||
test('Press the shortcut key cmd+k', async ({ page }) => {
|
||||
await openQuickSearchByShortcut(page);
|
||||
const quickSearch = page.locator('[data-testid=quickSearch]');
|
||||
@@ -61,13 +60,14 @@ test.describe('Open quick search', () => {
|
||||
});
|
||||
|
||||
test.describe('Add new page in quick search', () => {
|
||||
//TODO FIXME: This test is not working
|
||||
// FIXME: not working
|
||||
test.skip('Create a new page without keyword', async ({ page }) => {
|
||||
await openQuickSearchByShortcut(page);
|
||||
const addNewPage = page.locator('[data-testid=quickSearch-addNewPage]');
|
||||
await addNewPage.click();
|
||||
await assertTitleTexts(page, [''], { delay: 50 });
|
||||
});
|
||||
|
||||
test.skip('Create a new page with keyword', async ({ page }) => {
|
||||
await openQuickSearchByShortcut(page);
|
||||
await page.keyboard.insertText('test');
|
||||
@@ -95,6 +95,7 @@ test.describe('Search and select', () => {
|
||||
await openQuickSearchByShortcut(page);
|
||||
await page.keyboard.insertText('Welcome');
|
||||
await assertResultList(page, ['Welcome to the AFFiNE Alpha', 'Welcome']);
|
||||
|
||||
await page.keyboard.press('ArrowDown', { delay: 50 });
|
||||
await page.keyboard.press('Enter', { delay: 50 });
|
||||
await assertTitleTexts(page, ['Welcome'], {
|
||||
|
||||
@@ -7,14 +7,13 @@ test.describe('Shortcuts Modal', () => {
|
||||
test('Open shortcuts modal', async ({ page }) => {
|
||||
const faqIcon = page.locator('[data-testid=faq-icon]');
|
||||
const box = await faqIcon.boundingBox();
|
||||
await expect(box?.x).not.toBeUndefined();
|
||||
expect(box?.x).not.toBeUndefined();
|
||||
await page.mouse.move((box?.x ?? 0) + 5, (box?.y ?? 0) + 5);
|
||||
|
||||
const shortcutsIcon = page.locator('[data-testid=shortcuts-icon]');
|
||||
await expect(await shortcutsIcon.isVisible()).toEqual(true);
|
||||
expect(await shortcutsIcon.isVisible()).toEqual(true);
|
||||
|
||||
await shortcutsIcon.click();
|
||||
|
||||
const shortcutsModal = page.locator('[data-testid=shortcuts-modal]');
|
||||
await expect(shortcutsModal).toContainText('Keyboard Shortcuts');
|
||||
});
|
||||
|
||||
+7
-11
@@ -1,4 +1,4 @@
|
||||
import { test, expect, type Page } from '@playwright/test';
|
||||
import { test, expect } from '@playwright/test';
|
||||
import { loadPage } from './libs/load-page';
|
||||
|
||||
loadPage();
|
||||
@@ -9,14 +9,13 @@ test.describe('Change Theme', () => {
|
||||
const themeMode = await root.evaluate(element =>
|
||||
window.getComputedStyle(element).getPropertyValue('--affine-theme-mode')
|
||||
);
|
||||
|
||||
await expect(themeMode).toBe('light');
|
||||
expect(themeMode).toBe('light');
|
||||
|
||||
const lightButton = page.locator('[data-testid=change-theme-light]');
|
||||
const buttonPositionTop = await lightButton.evaluate(
|
||||
element => window.getComputedStyle(element).top
|
||||
);
|
||||
await expect(buttonPositionTop).toBe('0px');
|
||||
expect(buttonPositionTop).toBe('0px');
|
||||
});
|
||||
|
||||
test('change theme to dark', async ({ page }) => {
|
||||
@@ -24,24 +23,21 @@ test.describe('Change Theme', () => {
|
||||
'[data-testid=change-theme-container]'
|
||||
);
|
||||
const box = await changeThemeContainer.boundingBox();
|
||||
await expect(box?.x).not.toBeUndefined();
|
||||
expect(box?.x).not.toBeUndefined();
|
||||
|
||||
await page.mouse.move((box?.x ?? 0) + 5, (box?.y ?? 0) + 5);
|
||||
|
||||
await page.waitForTimeout(1000);
|
||||
|
||||
const darkButton = page.locator('[data-testid=change-theme-dark]');
|
||||
const darkButtonPositionTop = await darkButton.evaluate(
|
||||
element => element.getBoundingClientRect().y
|
||||
);
|
||||
await expect(darkButtonPositionTop).toBe(box?.y);
|
||||
expect(darkButtonPositionTop).toBe(box?.y);
|
||||
|
||||
await page.mouse.click((box?.x ?? 0) + 5, (box?.y ?? 0) + 5);
|
||||
|
||||
const root = page.locator('html');
|
||||
const themeMode = await root.evaluate(element =>
|
||||
window.getComputedStyle(element).getPropertyValue('--affine-theme-mode')
|
||||
);
|
||||
|
||||
await expect(themeMode).toBe('dark');
|
||||
expect(themeMode).toBe('dark');
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user