Skip to content

fix: cursor cannot be moved as expected in firefox #16169

fix: cursor cannot be moved as expected in firefox

fix: cursor cannot be moved as expected in firefox #16169

Triggered via pull request February 20, 2024 13:44
Status Success
Total duration 6m 5s
Artifacts

test.yaml

on: pull_request
Node.js Environment Compatibility
53s
Node.js Environment Compatibility
Unit test
1m 14s
Unit test
Integration test
30s
Integration test
Inline Editor E2E test
47s
Inline Editor E2E test
Matrix: Playground E2E test
Fit to window
Zoom out
Zoom in

Annotations

48 errors, 14 warnings, and 11 notices
linked-page.spec.ts:867:1 › should [[Selected text]] converted to linked page: tests/linked-page.spec.ts#L1
1) linked-page.spec.ts:867:1 › should [[Selected text]] converted to linked page ───────────────── Test finished within timeout of 30000ms, but tearing down "context" ran out of time. Please allow more time for the test, since teardown is attributed towards the test timeout budget.
paragraph.spec.ts:1287:1 › press arrow up in the second line should move caret to the first line: tests/utils/asserts.ts#L149
2) paragraph.spec.ts:1287:1 › press arrow up in the second line should move caret to the first line Error: expect(received).toBe(expected) // Object.is equality Expected: "1" Received: "" at utils/asserts.ts:149 147 | const inlineEditor = editor.locator('.doc-title-container').first(); 148 | const vText = inlineEditorInnerTextToString(await inlineEditor.innerText()); > 149 | expect(vText).toBe(text); | ^ 150 | } 151 | 152 | export async function assertInlineEditorDeltas( at assertTitle (/home/runner/work/blocksuite/blocksuite/tests/utils/asserts.ts:149:17) at /home/runner/work/blocksuite/blocksuite/tests/paragraph.spec.ts:1327:3
selection/native.spec.ts:882:1 › drag to select tagged text: tests/selection/native.spec.ts#L1
1) selection/native.spec.ts:882:1 › drag to select tagged text, and input character ────────────── Test finished within timeout of 30000ms, but tearing down "context" ran out of time. Please allow more time for the test, since teardown is attributed towards the test timeout budget.
selection/native.spec.ts:902:1 › Change title when first content is divider: tests/selection/native.spec.ts#L1
2) selection/native.spec.ts:902:1 › Change title when first content is divider ─────────────────── Test timeout of 30000ms exceeded.
selection/native.spec.ts:902:1 › Change title when first content is divider: tests/utils/actions/keyboard.ts#L27
2) selection/native.spec.ts:902:1 › Change title when first content is divider ─────────────────── Error: keyboard.type: Test timeout of 30000ms exceeded. at utils/actions/keyboard.ts:27 25 | 26 | export async function type(page: Page, content: string, delay = 20) { > 27 | await page.keyboard.type(content, { delay }); | ^ 28 | } 29 | 30 | export async function withPressKey( at type (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/keyboard.ts:27:23) at /home/runner/work/blocksuite/blocksuite/tests/selection/native.spec.ts:913:9
selection/native.spec.ts:917:1 › ArrowUp and ArrowDown to select divider and copy: tests/selection/native.spec.ts#L1
3) selection/native.spec.ts:917:1 › ArrowUp and ArrowDown to select divider and copy ───────────── Test finished within timeout of 30000ms, but tearing down "context" ran out of time. Please allow more time for the test, since teardown is attributed towards the test timeout budget.
clipboard.spec.ts:762:1 › pasting into empty list should not convert the list into paragraph: tests/clipboard.spec.ts#L1
1) clipboard.spec.ts:762:1 › pasting into empty list should not convert the list into paragraph ── Test timeout of 30000ms exceeded.
clipboard.spec.ts:762:1 › pasting into empty list should not convert the list into paragraph: tests/utils/actions/misc.ts#L642
1) clipboard.spec.ts:762:1 › pasting into empty list should not convert the list into paragraph ── Error: locator.click: Test timeout of 30000ms exceeded. Call log: - waiting for locator('editor-host').first().locator('.inline-editor').first() at utils/actions/misc.ts:642 640 | const locator = editor.locator(RICH_TEXT_SELECTOR).nth(i); 641 | // need to set `force` to true when clicking on `affine-selected-blocks` > 642 | await locator.click({ force: true, position: options?.clickPosition }); | ^ 643 | } 644 | 645 | export async function focusRichTextEnd(page: Page, i = 0) { at focusRichText (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:642:17) at /home/runner/work/blocksuite/blocksuite/tests/clipboard.spec.ts:767:5
clipboard.spec.ts:917:1 › should copy and paste of database work: tests/clipboard.spec.ts#L1
2) clipboard.spec.ts:917:1 › should copy and paste of database work ────────────────────────────── Test timeout of 30000ms exceeded.
clipboard.spec.ts:917:1 › should copy and paste of database work: tests/database/actions.ts#L27
2) clipboard.spec.ts:917:1 › should copy and paste of database work ────────────────────────────── Error: locator.click: Test timeout of 30000ms exceeded. Call log: - waiting for locator('affine-editor-container').first().locator('.header-add-column-button') at database/actions.ts:27 25 | await editor.locator('affine-data-view-table-group').first().hover(); 26 | const columnAddBtn = editor.locator('.header-add-column-button'); > 27 | await columnAddBtn.click(); | ^ 28 | await waitNextFrame(page, 100); 29 | 30 | if (title) { at initDatabaseColumn (/home/runner/work/blocksuite/blocksuite/tests/database/actions.ts:27:22) at /home/runner/work/blocksuite/blocksuite/tests/clipboard.spec.ts:922:3
clipboard.spec.ts:1016:1 › copy canvas element and text note in edgeless mode: tests/clipboard.spec.ts#L1
3) clipboard.spec.ts:1016:1 › copy canvas element and text note in edgeless mode ───────────────── Test timeout of 30000ms exceeded.
clipboard.spec.ts:1016:1 › copy canvas element and text note in edgeless mode: tests/utils/actions/edgeless.ts#L108
3) clipboard.spec.ts:1016:1 › copy canvas element and text note in edgeless mode ───────────────── Error: page.click: Test timeout of 30000ms exceeded. Call log: - waiting for locator('sl-tooltip[content="Switch Editor"]') - locator resolved to <sl-tooltip hoist="" placement="bottom" content="Switch Edit…>…</sl-tooltip> - attempting click action - waiting for element to be visible, enabled and stable at utils/actions/edgeless.ts:108 106 | 107 | export async function switchEditorMode(page: Page) { > 108 | await page.click('sl-tooltip[content="Switch Editor"]'); | ^ 109 | // FIXME: listen to editor loaded event 110 | await waitNextFrame(page); 111 | } at switchEditorMode (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/edgeless.ts:108:14) at /home/runner/work/blocksuite/blocksuite/tests/clipboard.spec.ts:1019:9
clipboard.spec.ts:1036:1 › copy when text note active in edgeless: tests/utils/asserts.ts#L187
4) clipboard.spec.ts:1036:1 › copy when text note active in edgeless ───────────────────────────── Error: expect(received).toBe(expected) // Object.is equality Expected: "12345551234" Received: "1234555test" at utils/asserts.ts:187 185 | export async function assertText(page: Page, text: string, i = 0) { 186 | const actual = await getStringFromRichText(page, i); > 187 | expect(actual).toBe(text); | ^ 188 | } 189 | 190 | export async function assertTextContain(page: Page, text: string, i = 0) { at assertText (/home/runner/work/blocksuite/blocksuite/tests/utils/asserts.ts:187:18) at /home/runner/work/blocksuite/blocksuite/tests/clipboard.spec.ts:1051:3
hotkey.spec.ts:1004:1 › should cut work single line: tests/utils/asserts.ts#L632
1) hotkey.spec.ts:1004:1 › should cut work single line ─────────────────────────────────────────── Error: <affine:note prop:background="--affine-background-secondary-color" prop:displayMode="both" prop:edgeless={ Object { "style": Object { "borderRadius": 8, "borderSize": 4, "borderStyle": "solid", "shadowType": "--affine-note-shadow-box", }, } } prop:hidden={false} prop:index="a0" > <affine:paragraph prop:text="hello" prop:type="text" /> </affine:note> expect(received).toEqual(expected) // deep equality - Expected - 1 + Received + 1 @@ -13,9 +13,9 @@ } prop:hidden={false} prop:index="a0" > <affine:paragraph - prop:text="ho" + prop:text="hello" prop:type="text" /> </affine:note> at utils/asserts.ts:632 630 | printFunctionName: false, 631 | }); > 632 | expect(formattedJSX, formattedJSX).toEqual(snapshot.trimStart()); | ^ 633 | } 634 | 635 | type MimeType = 'text/plain' | 'blocksuite/x-c+w' | 'text/html'; at assertStoreMatchJSX (/home/runner/work/blocksuite/blocksuite/tests/utils/asserts.ts:632:38) at /home/runner/work/blocksuite/blocksuite/tests/hotkey.spec.ts:1013:3
image.spec.ts:87:1 › can click and delete image: tests/utils/asserts.ts#L228
2) image.spec.ts:87:1 › can click and delete image ─────────────────────────────────────────────── Error: expect(received).toEqual(expected) // deep equality Expected: 1 Received: 0 at utils/asserts.ts:228 226 | const editor = getEditorLocator(page); 227 | const actual = await editor.locator('.resizable-img').count(); > 228 | expect(actual).toEqual(count); | ^ 229 | } 230 | 231 | export async function assertDivider(page: Page, count: number) { at assertRichImage (/home/runner/work/blocksuite/blocksuite/tests/utils/asserts.ts:228:18) at /home/runner/work/blocksuite/blocksuite/tests/image.spec.ts:97:3
image.spec.ts:103:1 › can click and copy image: tests/utils/asserts.ts#L228
3) image.spec.ts:103:1 › can click and copy image ──────────────────────────────────────────────── Error: expect(received).toEqual(expected) // deep equality Expected: 2 Received: 1 at utils/asserts.ts:228 226 | const editor = getEditorLocator(page); 227 | const actual = await editor.locator('.resizable-img').count(); > 228 | expect(actual).toEqual(count); | ^ 229 | } 230 | 231 | export async function assertDivider(page: Page, count: number) { at assertRichImage (/home/runner/work/blocksuite/blocksuite/tests/utils/asserts.ts:228:18) at /home/runner/work/blocksuite/blocksuite/tests/image.spec.ts:115:3
link.spec.ts:358:1 › convert link to card: tests/link.spec.ts#L373
4) link.spec.ts:358:1 › convert link to card ───────────────────────────────────────────────────── Error: Timed out 5000ms waiting for expect(locator).toBeVisible() Locator: locator('.affine-link-popover') Expected: visible Received: hidden Call log: - expect.toBeVisible with timeout 5000ms - waiting for locator('.affine-link-popover') 371 | await waitNextFrame(page); 372 | const linkPopoverLocator = page.locator('.affine-link-popover'); > 373 | await expect(linkPopoverLocator).toBeVisible(); | ^ 374 | const linkPopoverInput = page.locator('.affine-link-popover-input'); 375 | await expect(linkPopoverInput).toBeVisible(); 376 | await type(page, link); at /home/runner/work/blocksuite/blocksuite/tests/link.spec.ts:373:36
attachment.spec.ts:122:1 › can insert attachment from slash menu: tests/attachment.spec.ts#L1
1) attachment.spec.ts:122:1 › can insert attachment from slash menu ────────────────────────────── Test timeout of 30000ms exceeded.
attachment.spec.ts:122:1 › can insert attachment from slash menu: tests/utils/actions/misc.ts#L280
1) attachment.spec.ts:122:1 › can insert attachment from slash menu ────────────────────────────── Error: page.goto: Test timeout of 30000ms exceeded. Call log: - navigating to "http://localhost:5173/starter/?room=playwright-98458264&blobStorage=idb", waiting until "load" at utils/actions/misc.ts:280 278 | url.searchParams.set('room', room); 279 | url.searchParams.set('blobStorage', blobStorage?.join(',') || 'idb'); > 280 | await page.goto(url.toString()); | ^ 281 | // const readyPromise = waitForPageReady(page); 282 | 283 | // See https://github.com/microsoft/playwright/issues/5546 at enterPlaygroundRoom (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:280:14) at /home/runner/work/blocksuite/blocksuite/tests/attachment.spec.ts:123:9
attachment.spec.ts:172:1 › should undo/redo works for attachment: tests/attachment.spec.ts#L1
2) attachment.spec.ts:172:1 › should undo/redo works for attachment ────────────────────────────── Test timeout of 30000ms exceeded.
attachment.spec.ts:172:1 › should undo/redo works for attachment: tests/utils/actions/misc.ts#L331
2) attachment.spec.ts:172:1 › should undo/redo works for attachment ────────────────────────────── Error: page.waitForTimeout: Test timeout of 30000ms exceeded. at utils/actions/misc.ts:331 329 | frameTimeout = NEXT_FRAME_TIMEOUT 330 | ) { > 331 | await page.waitForTimeout(frameTimeout); | ^ 332 | } 333 | 334 | export async function waitForPageReady(page: Page) { at waitNextFrame (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:331:14) at initEmptyEditor (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:182:9) at enterPlaygroundRoom (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:302:3) at /home/runner/work/blocksuite/blocksuite/tests/attachment.spec.ts:173:3
attachment.spec.ts:279:1 › should rename attachment works: tests/attachment.spec.ts#L1
3) attachment.spec.ts:279:1 › should rename attachment works ───────────────────────────────────── Test timeout of 30000ms exceeded.
attachment.spec.ts:279:1 › should rename attachment works: tests/utils/actions/misc.ts#L280
3) attachment.spec.ts:279:1 › should rename attachment works ───────────────────────────────────── Error: page.goto: Test timeout of 30000ms exceeded. Call log: - navigating to "http://localhost:5173/starter/?room=playwright-00667896&blobStorage=idb", waiting until "load" at utils/actions/misc.ts:280 278 | url.searchParams.set('room', room); 279 | url.searchParams.set('blobStorage', blobStorage?.join(',') || 'idb'); > 280 | await page.goto(url.toString()); | ^ 281 | // const readyPromise = waitForPageReady(page); 282 | 283 | // See https://github.com/microsoft/playwright/issues/5546 at enterPlaygroundRoom (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:280:14) at /home/runner/work/blocksuite/blocksuite/tests/attachment.spec.ts:284:9
selection/native.spec.ts:65:1 › click on blank area: tests/utils/asserts.ts#L312
1) selection/native.spec.ts:65:1 › click on blank area ─────────────────────────────────────────── Error: expect(received).toEqual(expected) // deep equality - Expected - 1 + Received + 1 Object { "index": 0, - "length": 0, + "length": 3, } at utils/asserts.ts:312 310 | [richTextIndex, currentEditorIndex] 311 | ); > 312 | expect(actual).toEqual({ index: rangeIndex, length: rangeLength }); | ^ 313 | } 314 | 315 | export async function assertNativeSelectionRangeCount( at assertRichTextInlineRange (/home/runner/work/blocksuite/blocksuite/tests/utils/asserts.ts:312:18) at /home/runner/work/blocksuite/blocksuite/tests/selection/native.spec.ts:84:3
database/column.spec.ts:398:3 › select column tag action › should support select tag renaming: tests/database/column.spec.ts#L1
1) database/column.spec.ts:398:3 › select column tag action › should support select tag renaming ─ Test finished within timeout of 30000ms, but tearing down "context" ran out of time. Please allow more time for the test, since teardown is attributed towards the test timeout budget.
database/column.spec.ts:415:3 › select column tag action › should select tag renaming support shortcut key: tests/database/column.spec.ts#L1
2) database/column.spec.ts:415:3 › select column tag action › should select tag renaming support shortcut key Test finished within timeout of 30000ms, but tearing down "context" ran out of time. Please allow more time for the test, since teardown is attributed towards the test timeout budget.
edgeless/auto-complete.spec.ts:112:5 › auto-complete › drag on auto-complete button › drag on right auto-complete button to add note: tests/utils/asserts.ts#L207
3) edgeless/auto-complete.spec.ts:112:5 › auto-complete › drag on auto-complete button › drag on right auto-complete button to add note Error: expect(received).toEqual(expected) // deep equality - Expected - 1 + Received + 1 Array [ - "hello", + "", ] at utils/asserts.ts:207 205 | }); 206 | }, currentEditorIndex); > 207 | expect(actualTexts).toEqual(texts); | ^ 208 | } 209 | 210 | export async function assertEdgelessCanvasText(page: Page, text: string) { at assertRichTexts (/home/runner/work/blocksuite/blocksuite/tests/utils/asserts.ts:207:23) at /home/runner/work/blocksuite/blocksuite/tests/edgeless/auto-complete.spec.ts:128:7
edgeless/shape.spec.ts:92:1 › delete shape by component-toolbar: tests/edgeless/shape.spec.ts#L1
1) edgeless/shape.spec.ts:92:1 › delete shape by component-toolbar ─────────────────────────────── Test timeout of 30000ms exceeded.
edgeless/shape.spec.ts:92:1 › delete shape by component-toolbar: tests/utils/actions/drag.ts#L21
1) edgeless/shape.spec.ts:92:1 › delete shape by component-toolbar ─────────────────────────────── Error: mouse.move: Test timeout of 30000ms exceeded. at utils/actions/drag.ts:21 19 | await page.mouse.move(x1, y1); 20 | await page.mouse.down(); > 21 | await page.mouse.move(x2, y2, { steps }); | ^ 22 | await options?.beforeMouseUp?.(); 23 | await page.mouse.up(); 24 | } at dragBetweenCoords (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/drag.ts:21:20) at addBasicBrushElement (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/edgeless.ts:345:3) at /home/runner/work/blocksuite/blocksuite/tests/edgeless/shape.spec.ts:99:3
edgeless/shape.spec.ts:131:1 › change shape stroke color: tests/edgeless/shape.spec.ts#L1
2) edgeless/shape.spec.ts:131:1 › change shape stroke color ────────────────────────────────────── Test timeout of 30000ms exceeded.
edgeless/shape.spec.ts:131:1 › change shape stroke color: tests/utils/actions/drag.ts#L21
2) edgeless/shape.spec.ts:131:1 › change shape stroke color ────────────────────────────────────── Error: mouse.move: Test timeout of 30000ms exceeded. at utils/actions/drag.ts:21 19 | await page.mouse.move(x1, y1); 20 | await page.mouse.down(); > 21 | await page.mouse.move(x2, y2, { steps }); | ^ 22 | await options?.beforeMouseUp?.(); 23 | await page.mouse.up(); 24 | } at dragBetweenCoords (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/drag.ts:21:20) at addBasicRectShapeElement (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/edgeless.ts:355:3) at /home/runner/work/blocksuite/blocksuite/tests/edgeless/shape.spec.ts:140:3
format-bar.spec.ts:312:1 › should format quick bar be able to change background color: tests/format-bar.spec.ts#L433
3) format-bar.spec.ts:312:1 › should format quick bar be able to change background color ───────── TimeoutError: locator.click: Timeout 5000ms exceeded. Call log: - waiting for locator('.affine-format-bar-widget').getByTestId('unset') - locator resolved to <icon-button width="100%" tabindex="0" height="32px" data-tes…>…</icon-button> - attempting click action - waiting for element to be visible, enabled and stable - element is visible, enabled and stable - scrolling into view if needed - element is not visible - retrying click action, attempt #1 - waiting for element to be visible, enabled and stable - element is not visible - waiting... 431 | 432 | await expect(highlight.defaultColorBtn).toBeVisible(); > 433 | await highlight.defaultColorBtn.click(); | ^ 434 | 435 | await assertStoreMatchJSX( 436 | page, at /home/runner/work/blocksuite/blocksuite/tests/format-bar.spec.ts:433:35
format-bar.spec.ts:1543:1 › can extend format bar: tests/format-bar.spec.ts#L1549
4) format-bar.spec.ts:1543:1 › can extend format bar ───────────────────────────────────────────── Error: Timed out 5000ms waiting for expect(locator).toBeVisible() Locator: getByTestId('custom-format-bar-element') Expected: visible Received: hidden Call log: - expect.toBeVisible with timeout 5000ms - waiting for getByTestId('custom-format-bar-element') 1547 | await extendFormatBar(page); 1548 | await dragBetweenIndices(page, [0, 0], [2, 3]); > 1549 | await expect(page.getByTestId('custom-format-bar-element')).toBeVisible(); | ^ 1550 | }); 1551 | 1552 | test('format quick bar should not break cursor jumping', async ({ page }) => { at /home/runner/work/blocksuite/blocksuite/tests/format-bar.spec.ts:1549:63
edgeless/basic.spec.ts:118:1 › option/alt mouse drag duplicate a new element: tests/edgeless/basic.spec.ts#L1
1) edgeless/basic.spec.ts:118:1 › option/alt mouse drag duplicate a new element ────────────────── Test timeout of 30000ms exceeded.
edgeless/basic.spec.ts:118:1 › option/alt mouse drag duplicate a new element: tests/utils/actions/edgeless.ts#L690
1) edgeless/basic.spec.ts:118:1 › option/alt mouse drag duplicate a new element ────────────────── Error: keyboard.down: Test timeout of 30000ms exceeded. at utils/actions/edgeless.ts:690 688 | start = await toViewCoord(page, start); 689 | end = await toViewCoord(page, end); > 690 | await page.keyboard.down('Alt'); | ^ 691 | await dragBetweenCoords( 692 | page, 693 | { x: start[0], y: start[1] }, at optionMouseDrag (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/edgeless.ts:690:23) at /home/runner/work/blocksuite/blocksuite/tests/edgeless/basic.spec.ts:128:3
edgeless/basic.spec.ts:139:1 › should cancel select when the selected point is outside the current selected element: tests/edgeless/basic.spec.ts#L1
2) edgeless/basic.spec.ts:139:1 › should cancel select when the selected point is outside the current selected element Test timeout of 30000ms exceeded.
edgeless/basic.spec.ts:139:1 › should cancel select when the selected point is outside the current selected element: tests/utils/actions/drag.ts#L21
2) edgeless/basic.spec.ts:139:1 › should cancel select when the selected point is outside the current selected element Error: mouse.move: Test timeout of 30000ms exceeded. at utils/actions/drag.ts:21 19 | await page.mouse.move(x1, y1); 20 | await page.mouse.down(); > 21 | await page.mouse.move(x2, y2, { steps }); | ^ 22 | await options?.beforeMouseUp?.(); 23 | await page.mouse.up(); 24 | } at dragBetweenCoords (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/drag.ts:21:20) at addBasicRectShapeElement (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/edgeless.ts:355:3) at /home/runner/work/blocksuite/blocksuite/tests/edgeless/basic.spec.ts:149:3
edgeless/basic.spec.ts:164:1 › the tooltip of more button should be hidden when the action menu is shown: tests/edgeless/basic.spec.ts#L1
3) edgeless/basic.spec.ts:164:1 › the tooltip of more button should be hidden when the action menu is shown Test timeout of 30000ms exceeded.
edgeless/basic.spec.ts:164:1 › the tooltip of more button should be hidden when the action menu is shown: tests/utils/actions/drag.ts#L21
3) edgeless/basic.spec.ts:164:1 › the tooltip of more button should be hidden when the action menu is shown Error: mouse.move: Test timeout of 30000ms exceeded. at utils/actions/drag.ts:21 19 | await page.mouse.move(x1, y1); 20 | await page.mouse.down(); > 21 | await page.mouse.move(x2, y2, { steps }); | ^ 22 | await options?.beforeMouseUp?.(); 23 | await page.mouse.up(); 24 | } at dragBetweenCoords (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/drag.ts:21:20) at addBasicBrushElement (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/edgeless.ts:345:3) at /home/runner/work/blocksuite/blocksuite/tests/edgeless/basic.spec.ts:173:3
edgeless/group.spec.ts:467:5 › group › group title › edit group title by dbclick: tests/edgeless/group.spec.ts#L452
1) edgeless/group.spec.ts:467:5 › group › group title › edit group title by dbclick ────────────── Test timeout of 30000ms exceeded while running "beforeEach" hook. 450 | 451 | test.describe('group title', () => { > 452 | test.beforeEach(async ({ page }) => { | ^ 453 | await init(page); 454 | await selectAllByKeyboard(page); 455 | await triggerComponentToolbarAction(page, 'addGroup'); at /home/runner/work/blocksuite/blocksuite/tests/edgeless/group.spec.ts:452:10
edgeless/group.spec.ts:467:5 › group › group title › edit group title by dbclick: tests/utils/actions/drag.ts#L21
1) edgeless/group.spec.ts:467:5 › group › group title › edit group title by dbclick ────────────── Error: mouse.move: Test timeout of 30000ms exceeded. at utils/actions/drag.ts:21 19 | await page.mouse.move(x1, y1); 20 | await page.mouse.down(); > 21 | await page.mouse.move(x2, y2, { steps }); | ^ 22 | await options?.beforeMouseUp?.(); 23 | await page.mouse.up(); 24 | } at dragBetweenCoords (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/drag.ts:21:20) at addBasicShapeElement (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/edgeless.ts:365:3) at createShapeElement (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/edgeless.ts:1320:3) at init (/home/runner/work/blocksuite/blocksuite/tests/edgeless/group.spec.ts:46:5) at /home/runner/work/blocksuite/blocksuite/tests/edgeless/group.spec.ts:453:7
edgeless/group.spec.ts:479:5 › group › group title › blur unmount group editor: tests/edgeless/group.spec.ts#L452
2) edgeless/group.spec.ts:479:5 › group › group title › blur unmount group editor ──────────────── Test timeout of 30000ms exceeded while running "beforeEach" hook. 450 | 451 | test.describe('group title', () => { > 452 | test.beforeEach(async ({ page }) => { | ^ 453 | await init(page); 454 | await selectAllByKeyboard(page); 455 | await triggerComponentToolbarAction(page, 'addGroup'); at /home/runner/work/blocksuite/blocksuite/tests/edgeless/group.spec.ts:452:10
edgeless/group.spec.ts:479:5 › group › group title › blur unmount group editor: tests/utils/actions/drag.ts#L21
2) edgeless/group.spec.ts:479:5 › group › group title › blur unmount group editor ──────────────── Error: mouse.move: Test timeout of 30000ms exceeded. at utils/actions/drag.ts:21 19 | await page.mouse.move(x1, y1); 20 | await page.mouse.down(); > 21 | await page.mouse.move(x2, y2, { steps }); | ^ 22 | await options?.beforeMouseUp?.(); 23 | await page.mouse.up(); 24 | } at dragBetweenCoords (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/drag.ts:21:20) at addBasicShapeElement (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/edgeless.ts:365:3) at createShapeElement (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/edgeless.ts:1320:3) at init (/home/runner/work/blocksuite/blocksuite/tests/edgeless/group.spec.ts:46:5) at /home/runner/work/blocksuite/blocksuite/tests/edgeless/group.spec.ts:453:7
edgeless/group.spec.ts:490:5 › group › group title › enter unmount group editor: tests/edgeless/group.spec.ts#L452
3) edgeless/group.spec.ts:490:5 › group › group title › enter unmount group editor ─────────────── Test timeout of 30000ms exceeded while running "beforeEach" hook. 450 | 451 | test.describe('group title', () => { > 452 | test.beforeEach(async ({ page }) => { | ^ 453 | await init(page); 454 | await selectAllByKeyboard(page); 455 | await triggerComponentToolbarAction(page, 'addGroup'); at /home/runner/work/blocksuite/blocksuite/tests/edgeless/group.spec.ts:452:10
edgeless/group.spec.ts:490:5 › group › group title › enter unmount group editor: tests/utils/actions/drag.ts#L21
3) edgeless/group.spec.ts:490:5 › group › group title › enter unmount group editor ─────────────── Error: mouse.move: Test timeout of 30000ms exceeded. at utils/actions/drag.ts:21 19 | await page.mouse.move(x1, y1); 20 | await page.mouse.down(); > 21 | await page.mouse.move(x2, y2, { steps }); | ^ 22 | await options?.beforeMouseUp?.(); 23 | await page.mouse.up(); 24 | } at dragBetweenCoords (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/drag.ts:21:20) at addBasicShapeElement (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/edgeless.ts:365:3) at createShapeElement (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/edgeless.ts:1320:3) at init (/home/runner/work/blocksuite/blocksuite/tests/edgeless/group.spec.ts:46:5) at /home/runner/work/blocksuite/blocksuite/tests/edgeless/group.spec.ts:453:7
edgeless/note.spec.ts:356:1 › drag handle should work across multiple notes: tests/edgeless/note.spec.ts#L382
4) edgeless/note.spec.ts:356:1 › drag handle should work across multiple notes ─────────────────── Error: Timed out 5000ms waiting for expect(locator).toBeHidden() Locator: locator('.affine-drag-handle-container') Expected: hidden Received: visible Call log: - expect.toBeHidden with timeout 5000ms - waiting for locator('.affine-drag-handle-container') - locator resolved to <div class="affine-drag-handle-container">…</div> - unexpected value "visible" - locator resolved to <div class="affine-drag-handle-container">…</div> - unexpected value "visible" - locator resolved to <div class="affine-drag-handle-container">…</div> - unexpected value "visible" - locator resolved to <div class="affine-drag-handle-container">…</div> - unexpected value "visible" - locator resolved to <div class="affine-drag-handle-container">…</div> - unexpected value "visible" - locator resolved to <div class="affine-drag-handle-container">…</div> - unexpected value "visible" - locator resolved to <div class="affine-drag-handle-container">…</div> - unexpected value "visible" - locator resolved to <div class="affine-drag-handle-container">…</div> - unexpected value "visible" - locator resolved to <div class="affine-drag-handle-container">…</div> - unexpected value "visible" 380 | await dragHandleFromBlockToBlockBottomById(page, '3', '4'); 381 | await waitNextFrame(page); > 382 | await expect(page.locator('.affine-drag-handle-container')).toBeHidden(); | ^ 383 | await assertRichTexts(page, ['456', '123', '789', '000']); 384 | 385 | await expect(page.locator('selected > *')).toHaveCount(0); at /home/runner/work/blocksuite/blocksuite/tests/edgeless/note.spec.ts:382:63
edgeless/note.spec.ts:730:1 › continuous undo and redo (note block add operation) should work: tests/utils/actions/misc.ts#L290
5) edgeless/note.spec.ts:730:1 › continuous undo and redo (note block add operation) should work ─ Error: expect(received).toBe(expected) // Object.is equality - Expected - 1 + Received + 7 - Please remove the "console.log" or declare `expectConsoleMessage` before `enterPlaygroundRoom`. It is advised not to output logs in a production environment. + Unexpected console message: Error: val does not exist + at assertExists (http://localhost:5173/@fs/home/runner/work/blocksuite/blocksuite/packages/framework/global/src/utils/assert.ts:1309:11) + at Clipboard.readFromClipboard (http://localhost:5173/@fs/home/runner/work/blocksuite/blocksuite/packages/framework/block-std/src/clipboard/index.ts:2752:5) + at EdgelessClipboardController._onPaste (http://localhost:5173/@fs/home/runner/work/blocksuite/blocksuite/packages/blocks/src/page-block/edgeless/controllers/clipboard.ts:11410:66) + at host.handleEvent.global (http://localhost:5173/@fs/home/runner/work/blocksuite/blocksuite/packages/blocks/src/page-block/edgeless/controllers/clipboard.ts:11238:14) + at UIEventDispatcher.run (http://localhost:5173/@fs/home/runner/work/blocksuite/blocksuite/packages/framework/block-std/src/event/dispatcher.ts:2934:49) + at ClipboardControl._paste (http://localhost:5173/@fs/home/runner/work/blocksuite/blocksuite/packages/framework/block-std/src/event/control/clipboard.ts:572:24) at utils/actions/misc.ts:290 288 | expect 289 | .soft('Unexpected console message: ' + message.text()) > 290 | .toBe( | ^ 291 | 'Please remove the "console.log" or declare `expectConsoleMessage` before `enterPlaygroundRoom`. It is advised not to output logs in a production environment.' 292 | ); 293 | } at Page.<anonymous> (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:290:10)
edgeless/note.spec.ts:730:1 › continuous undo and redo (note block add operation) should work: tests/edgeless/note.spec.ts#L757
5) edgeless/note.spec.ts:730:1 › continuous undo and redo (note block add operation) should work ─ Error: expect(received).toBe(expected) // Object.is equality Expected: 4 Received: 3 755 | 756 | count = await countBlock(page, 'affine-note'); > 757 | expect(count).toBe(4); | ^ 758 | 759 | await undoByClick(page); 760 | count = await countBlock(page, 'affine-note'); at /home/runner/work/blocksuite/blocksuite/tests/edgeless/note.spec.ts:757:17
🎭 Playwright Run Summary
12 passed (23.6s)
🎭 Playwright Run Summary
2 flaky linked-page.spec.ts:867:1 › should [[Selected text]] converted to linked page ────────────────── paragraph.spec.ts:1287:1 › press arrow up in the second line should move caret to the first line 1 skipped 62 passed (3.2m)
🎭 Playwright Run Summary
3 flaky selection/native.spec.ts:882:1 › drag to select tagged text, and input character ─────────────── selection/native.spec.ts:902:1 › Change title when first content is divider ──────────────────── selection/native.spec.ts:917:1 › ArrowUp and ArrowDown to select divider and copy ────────────── 2 skipped 60 passed (3.3m)
🎭 Playwright Run Summary
4 flaky clipboard.spec.ts:762:1 › pasting into empty list should not convert the list into paragraph ─── clipboard.spec.ts:917:1 › should copy and paste of database work ─────────────────────────────── clipboard.spec.ts:1016:1 › copy canvas element and text note in edgeless mode ────────────────── clipboard.spec.ts:1036:1 › copy when text note active in edgeless ────────────────────────────── 8 skipped 54 passed (3.3m)
🎭 Playwright Run Summary
4 flaky hotkey.spec.ts:1004:1 › should cut work single line ──────────────────────────────────────────── image.spec.ts:87:1 › can click and delete image ──────────────────────────────────────────────── image.spec.ts:103:1 › can click and copy image ───────────────────────────────────────────────── link.spec.ts:358:1 › convert link to card ────────────────────────────────────────────────────── 4 skipped 57 passed (3.4m)
🎭 Playwright Run Summary
3 flaky attachment.spec.ts:122:1 › can insert attachment from slash menu ─────────────────────────────── attachment.spec.ts:172:1 › should undo/redo works for attachment ─────────────────────────────── attachment.spec.ts:279:1 › should rename attachment works ────────────────────────────────────── 16 skipped 47 passed (3.3m)
🎭 Playwright Run Summary
1 flaky selection/native.spec.ts:65:1 › click on blank area ──────────────────────────────────────────── 1 skipped 63 passed (3.3m)
🎭 Playwright Run Summary
3 flaky database/column.spec.ts:398:3 › select column tag action › should support select tag renaming ── database/column.spec.ts:415:3 › select column tag action › should select tag renaming support shortcut key edgeless/auto-complete.spec.ts:112:5 › auto-complete › drag on auto-complete button › drag on right auto-complete button to add note 63 passed (3.8m)
🎭 Playwright Run Summary
4 flaky edgeless/shape.spec.ts:92:1 › delete shape by component-toolbar ──────────────────────────────── edgeless/shape.spec.ts:131:1 › change shape stroke color ─────────────────────────────────────── format-bar.spec.ts:312:1 › should format quick bar be able to change background color ────────── format-bar.spec.ts:1543:1 › can extend format bar ────────────────────────────────────────────── 1 skipped 60 passed (3.8m)
🎭 Playwright Run Summary
3 flaky edgeless/basic.spec.ts:118:1 › option/alt mouse drag duplicate a new element ─────────────────── edgeless/basic.spec.ts:139:1 › should cancel select when the selected point is outside the current selected element edgeless/basic.spec.ts:164:1 › the tooltip of more button should be hidden when the action menu is shown 3 skipped 60 passed (4.7m)
🎭 Playwright Run Summary
5 flaky edgeless/group.spec.ts:467:5 › group › group title › edit group title by dbclick ─────────────── edgeless/group.spec.ts:479:5 › group › group title › blur unmount group editor ───────────────── edgeless/group.spec.ts:490:5 › group › group title › enter unmount group editor ──────────────── edgeless/note.spec.ts:356:1 › drag handle should work across multiple notes ──────────────────── edgeless/note.spec.ts:730:1 › continuous undo and redo (note block add operation) should work ── 60 passed (4.8m)
Integration test
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: pnpm/action-setup@v2, actions/setup-node@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Inline Editor E2E test
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: pnpm/action-setup@v2, actions/setup-node@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Node.js Environment Compatibility
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: pnpm/action-setup@v2, actions/setup-node@v3, actions/cache@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Unit test
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: pnpm/action-setup@v2, actions/setup-node@v3, codecov/codecov-action@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Playground E2E test (8)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: pnpm/action-setup@v2, actions/setup-node@v3, actions/cache@v3, codecov/codecov-action@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Playground E2E test (10)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: pnpm/action-setup@v2, actions/setup-node@v3, actions/cache@v3, codecov/codecov-action@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Playground E2E test (2)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: pnpm/action-setup@v2, actions/setup-node@v3, actions/cache@v3, codecov/codecov-action@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Playground E2E test (7)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: pnpm/action-setup@v2, actions/setup-node@v3, actions/cache@v3, codecov/codecov-action@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Playground E2E test (1)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: pnpm/action-setup@v2, actions/setup-node@v3, actions/cache@v3, codecov/codecov-action@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Playground E2E test (9)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: pnpm/action-setup@v2, actions/setup-node@v3, actions/cache@v3, codecov/codecov-action@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Playground E2E test (3)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: pnpm/action-setup@v2, actions/setup-node@v3, actions/cache@v3, codecov/codecov-action@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Playground E2E test (6)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: pnpm/action-setup@v2, actions/setup-node@v3, actions/cache@v3, codecov/codecov-action@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Playground E2E test (4)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: pnpm/action-setup@v2, actions/setup-node@v3, actions/cache@v3, codecov/codecov-action@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Playground E2E test (5)
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: pnpm/action-setup@v2, actions/setup-node@v3, actions/cache@v3, codecov/codecov-action@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.