test: add test for Convert to edgeless by editor header items

This commit is contained in:
tzhangchi
2022-12-23 23:15:32 +08:00
parent 30981abb0b
commit 3ae12ebdfc
4 changed files with 20 additions and 4 deletions
@@ -127,7 +127,7 @@ export const EditorModeSwitch = ({
<AnimateRadioItem
isLeft={false}
label="Edgeless"
data-testid="edgeless-item"
data-testid="switch-edgeless-item"
icon={<EdgelessItem />}
active={mode === 'edgeless'}
status={radioItemStatus.right}
@@ -42,6 +42,7 @@ const PopoverContent = () => {
</MenuItem>
<MenuItem
icon={mode === 'page' ? <EdgelessIcon /> : <PaperIcon />}
data-testid="menus-edgeless-item"
onClick={() => {
changePageMode(id, mode === 'page' ? 'edgeless' : 'page');
}}
@@ -56,7 +56,7 @@ export const Header = ({
setShowWarning(false);
}}
/>
<StyledHeader hasWarning={showWarning}>
<StyledHeader hasWarning={showWarning} data-testid="editor-header-items">
{children}
<StyledHeaderRightSide>
{rightItems.map(itemName => {
+17 -2
View File
@@ -4,7 +4,7 @@ import { loadPage } from './libs/load-page';
loadPage();
test.describe('Change page mode(Paper or Edgeless)', () => {
test('Switch to edgeless', async ({ page }) => {
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();
@@ -14,7 +14,7 @@ test.describe('Change page mode(Paper or Edgeless)', () => {
await page.mouse.move((box?.x ?? 0) + 10, (box?.y ?? 0) + 10);
// await page.waitForTimeout(1000);
const edgelessButton = page.getByTestId('edgeless-item'); // page.getByText('Edgeless').click()
const edgelessButton = page.getByTestId('switch-edgeless-item'); // page.getByText('Edgeless').click()
await edgelessButton.click();
@@ -36,4 +36,19 @@ test.describe('Change page mode(Paper or Edgeless)', () => {
await expect(await edgelessDom.isVisible()).toBe(true);
});
test('Convert to edgeless by editor header items', async ({ page }) => {
await page
.getByTestId('editor-header-items')
.getByRole('button')
.nth(2)
.click();
const menusEdgelessItem = page.getByTestId('menus-edgeless-item');
await menusEdgelessItem.click();
const edgelessDom = page.locator('affine-edgeless-page');
await expect(await edgelessDom.isVisible()).toBe(true);
});
});