refactor: support multiple-editors #15047
test.yaml
on: pull_request
Node.js Environment Compatibility
50s
Unit test
1m 11s
Integration test
26s
Inline Editor E2E test
45s
Matrix: Playground E2E test
Annotations
54 errors, 3 warnings, and 11 notices
attachment.spec.ts:261:1 › should rename attachment works:
tests/attachment.spec.ts#L1
1) attachment.spec.ts:261:1 › should rename attachment works ─────────────────────────────────────
Test timeout of 30000ms exceeded.
|
attachment.spec.ts:261:1 › should rename attachment works:
tests/attachment.spec.ts#L68
1) attachment.spec.ts:261:1 › should rename attachment works ─────────────────────────────────────
Error: locator.innerText: Test timeout of 30000ms exceeded.
Call log:
- waiting for locator('affine-attachment').locator('.affine-attachment-name')
66 |
67 | const getName = () =>
> 68 | attachment.locator('.affine-attachment-name').innerText();
| ^
69 |
70 | return {
71 | // locators
at getName (/home/runner/work/blocksuite/blocksuite/tests/attachment.spec.ts:68:51)
at /home/runner/work/blocksuite/blocksuite/tests/attachment.spec.ts:297:16
|
database/column.spec.ts:325:3 › switch column type › switch to progress:
tests/utils/actions/misc.ts#L257
1) database/column.spec.ts:325:3 › switch column type › switch to progress ───────────────────────
Error: Uncaught exception: "TypeError: items is not iterable"
TypeError: items is not iterable
at utils/actions/misc.ts:257
255 | // Log all uncaught errors
256 | page.on('pageerror', exception => {
> 257 | throw new Error(`Uncaught exception: "${exception}"\n${exception.stack}`);
| ^
258 | });
259 |
260 | await initEmptyEditor({
at RepeatDirective._getValuesAndKeys (http://localhost:5173/node_modules/.vite/deps/lit_directives_repeat__js.js?v=7fc13afa:43:24)
at RepeatDirective.update (http://localhost:5173/node_modules/.vite/deps/lit_directives_repeat__js.js?v=7fc13afa:58:55)
at RepeatDirective._$resolve (http://localhost:5173/node_modules/.vite/deps/chunk-556GNVMM.js?v=c162ab7b:30:17)
at resolveDirective (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:323:53)
at _ChildPart._$setValue (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:458:13)
at TemplateInstance._update (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:389:16)
at _ChildPart._commitTemplateResult (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:588:16)
at _ChildPart._$setValue (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:476:12)
at render (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:919:8)
at MultiTagView.update (http://localhost:5173/node_modules/.vite/deps/chunk-XNTR7L6D.js?v=c162ab7b:50:24)
at RepeatDirective._getValuesAndKeys (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/lit_directives_repeat__js.js?v=7fc13afa:43:24)
at RepeatDirective.update (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/lit_directives_repeat__js.js?v=7fc13afa:58:55)
at RepeatDirective._$resolve (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-556GNVMM.js?v=c162ab7b:30:17)
at resolveDirective (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:323:53)
at _ChildPart._$setValue (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:458:13)
at TemplateInstance._update (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:389:16)
at _ChildPart._commitTemplateResult (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:588:16)
at _ChildPart._$setValue (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:476:12)
at render (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:919:8)
at MultiTagView.update (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-XNTR7L6D.js?v=c162ab7b:50:24)
at Page.<anonymous> (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:257:11)
|
database/column.spec.ts:325:3 › switch column type › switch to progress:
tests/utils/actions/misc.ts#L257
1) database/column.spec.ts:325:3 › switch column type › switch to progress ───────────────────────
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: Uncaught exception: "TypeError: items is not iterable"
TypeError: items is not iterable
at utils/actions/misc.ts:257
255 | // Log all uncaught errors
256 | page.on('pageerror', exception => {
> 257 | throw new Error(`Uncaught exception: "${exception}"\n${exception.stack}`);
| ^
258 | });
259 |
260 | await initEmptyEditor({
at RepeatDirective._getValuesAndKeys (http://localhost:5173/node_modules/.vite/deps/lit_directives_repeat__js.js?v=7fc13afa:43:24)
at RepeatDirective.update (http://localhost:5173/node_modules/.vite/deps/lit_directives_repeat__js.js?v=7fc13afa:58:55)
at RepeatDirective._$resolve (http://localhost:5173/node_modules/.vite/deps/chunk-556GNVMM.js?v=c162ab7b:30:17)
at resolveDirective (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:323:53)
at _ChildPart._$setValue (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:458:13)
at TemplateInstance._update (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:389:16)
at _ChildPart._commitTemplateResult (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:588:16)
at _ChildPart._$setValue (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:476:12)
at render (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:919:8)
at MultiTagView.update (http://localhost:5173/node_modules/.vite/deps/chunk-XNTR7L6D.js?v=c162ab7b:50:24)
at RepeatDirective._getValuesAndKeys (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/lit_directives_repeat__js.js?v=7fc13afa:43:24)
at RepeatDirective.update (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/lit_directives_repeat__js.js?v=7fc13afa:58:55)
at RepeatDirective._$resolve (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-556GNVMM.js?v=c162ab7b:30:17)
at resolveDirective (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:323:53)
at _ChildPart._$setValue (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:458:13)
at TemplateInstance._update (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:389:16)
at _ChildPart._commitTemplateResult (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:588:16)
at _ChildPart._$setValue (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:476:12)
at render (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:919:8)
at MultiTagView.update (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-XNTR7L6D.js?v=c162ab7b:50:24)
at Page.<anonymous> (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:257:11)
|
database/column.spec.ts:325:3 › switch column type › switch to progress:
tests/utils/actions/misc.ts#L257
1) database/column.spec.ts:325:3 › switch column type › switch to progress ───────────────────────
Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
Error: Uncaught exception: "TypeError: items is not iterable"
TypeError: items is not iterable
at utils/actions/misc.ts:257
255 | // Log all uncaught errors
256 | page.on('pageerror', exception => {
> 257 | throw new Error(`Uncaught exception: "${exception}"\n${exception.stack}`);
| ^
258 | });
259 |
260 | await initEmptyEditor({
at RepeatDirective._getValuesAndKeys (http://localhost:5173/node_modules/.vite/deps/lit_directives_repeat__js.js?v=7fc13afa:43:24)
at RepeatDirective.update (http://localhost:5173/node_modules/.vite/deps/lit_directives_repeat__js.js?v=7fc13afa:58:55)
at RepeatDirective._$resolve (http://localhost:5173/node_modules/.vite/deps/chunk-556GNVMM.js?v=c162ab7b:30:17)
at resolveDirective (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:323:53)
at _ChildPart._$setValue (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:458:13)
at TemplateInstance._update (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:389:16)
at _ChildPart._commitTemplateResult (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:588:16)
at _ChildPart._$setValue (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:476:12)
at render (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:919:8)
at MultiTagView.update (http://localhost:5173/node_modules/.vite/deps/chunk-XNTR7L6D.js?v=c162ab7b:50:24)
at RepeatDirective._getValuesAndKeys (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/lit_directives_repeat__js.js?v=7fc13afa:43:24)
at RepeatDirective.update (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/lit_directives_repeat__js.js?v=7fc13afa:58:55)
at RepeatDirective._$resolve (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-556GNVMM.js?v=c162ab7b:30:17)
at resolveDirective (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:323:53)
at _ChildPart._$setValue (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:458:13)
at TemplateInstance._update (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:389:16)
at _ChildPart._commitTemplateResult (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:588:16)
at _ChildPart._$setValue (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:476:12)
at render (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:919:8)
at MultiTagView.update (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-XNTR7L6D.js?v=c162ab7b:50:24)
at Page.<anonymous> (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:257:11)
|
database/column.spec.ts:325:3 › switch column type › switch to progress:
tests/utils/actions/misc.ts#L257
1) database/column.spec.ts:325:3 › switch column type › switch to progress ───────────────────────
Retry #3 ───────────────────────────────────────────────────────────────────────────────────────
Error: Uncaught exception: "TypeError: items is not iterable"
TypeError: items is not iterable
at utils/actions/misc.ts:257
255 | // Log all uncaught errors
256 | page.on('pageerror', exception => {
> 257 | throw new Error(`Uncaught exception: "${exception}"\n${exception.stack}`);
| ^
258 | });
259 |
260 | await initEmptyEditor({
at RepeatDirective._getValuesAndKeys (http://localhost:5173/node_modules/.vite/deps/lit_directives_repeat__js.js?v=7fc13afa:43:24)
at RepeatDirective.update (http://localhost:5173/node_modules/.vite/deps/lit_directives_repeat__js.js?v=7fc13afa:58:55)
at RepeatDirective._$resolve (http://localhost:5173/node_modules/.vite/deps/chunk-556GNVMM.js?v=c162ab7b:30:17)
at resolveDirective (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:323:53)
at _ChildPart._$setValue (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:458:13)
at TemplateInstance._update (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:389:16)
at _ChildPart._commitTemplateResult (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:588:16)
at _ChildPart._$setValue (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:476:12)
at render (http://localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:919:8)
at MultiTagView.update (http://localhost:5173/node_modules/.vite/deps/chunk-XNTR7L6D.js?v=c162ab7b:50:24)
at RepeatDirective._getValuesAndKeys (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/lit_directives_repeat__js.js?v=7fc13afa:43:24)
at RepeatDirective.update (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/lit_directives_repeat__js.js?v=7fc13afa:58:55)
at RepeatDirective._$resolve (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-556GNVMM.js?v=c162ab7b:30:17)
at resolveDirective (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:323:53)
at _ChildPart._$setValue (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:458:13)
at TemplateInstance._update (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:389:16)
at _ChildPart._commitTemplateResult (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:588:16)
at _ChildPart._$setValue (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:476:12)
at render (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-A74XXVPS.js?v=c162ab7b:919:8)
at MultiTagView.update (/home/runner/work/blocksuite/blocksuite/http:/localhost:5173/node_modules/.vite/deps/chunk-XNTR7L6D.js?v=c162ab7b:50:24)
at Page.<anonymous> (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:257:11)
|
clipboard.spec.ts:1016:1 › copy canvas element and text note in edgeless mode:
tests/clipboard.spec.ts#L1
2) clipboard.spec.ts:1016:1 › copy canvas element and text note in edgeless mode ─────────────────
Test timeout of 30000ms exceeded.
|
Playground E2E test (2)
Process completed with exit code 1.
|
hotkey.spec.ts:131:1 › multi line rich-text inline code hotkey:
tests/hotkey.spec.ts#L1
1) hotkey.spec.ts:131:1 › multi line rich-text inline code hotkey ────────────────────────────────
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.
|
hotkey.spec.ts:986:1 › should cut work single line:
tests/utils/asserts.ts#L621
2) hotkey.spec.ts:986:1 › should cut work single line ────────────────────────────────────────────
Error: <affine:note
prop:background="--affine-background-secondary-color"
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
@@ -12,9 +12,9 @@
}
prop:hidden={false}
prop:index="a0"
>
<affine:paragraph
- prop:text="ho"
+ prop:text="hello"
prop:type="text"
/>
</affine:note>
at utils/asserts.ts:621
619 | printFunctionName: false,
620 | });
> 621 | expect(formattedJSX, formattedJSX).toEqual(snapshot.trimStart());
| ^
622 | }
623 |
624 | type MimeType = 'text/plain' | 'blocksuite/x-c+w' | 'text/html';
at assertStoreMatchJSX (/home/runner/work/blocksuite/blocksuite/tests/utils/asserts.ts:621:38)
at /home/runner/work/blocksuite/blocksuite/tests/hotkey.spec.ts:995:3
|
image.spec.ts:100:1 › can click and copy image:
tests/utils/asserts.ts#L217
3) image.spec.ts:100:1 › can click and copy image ────────────────────────────────────────────────
Error: expect(received).toEqual(expected) // deep equality
Expected: 2
Received: 1
at utils/asserts.ts:217
215 | const editor = getEditorLocator(page);
216 | const actual = await editor.locator('.resizable-img').count();
> 217 | expect(actual).toEqual(count);
| ^
218 | }
219 |
220 | export async function assertDivider(page: Page, count: number) {
at assertRichImage (/home/runner/work/blocksuite/blocksuite/tests/utils/asserts.ts:217:18)
at /home/runner/work/blocksuite/blocksuite/tests/image.spec.ts:110:3
|
paragraph.spec.ts:1585:1 › paragraph indent and delete in line start:
tests/paragraph.spec.ts#L1
1) paragraph.spec.ts:1585:1 › paragraph indent and delete in line start ──────────────────────────
Test timeout of 30000ms exceeded.
|
paragraph.spec.ts:1585:1 › paragraph indent and delete in line start:
tests/utils/actions/misc.ts#L1224
1) paragraph.spec.ts:1585:1 › paragraph indent and delete in line start ──────────────────────────
Error: page.evaluate: Target page, context or browser has been closed
at utils/actions/misc.ts:1224
1222 |
1223 | export async function getCurrentEditorPageId(page: Page) {
> 1224 | return await page.evaluate(index => {
| ^
1225 | const editor = document.querySelectorAll('affine-editor-container')[index];
1226 | if (!editor) throw new Error("Can't find affine-editor-container");
1227 | const pageId = editor.page.id;
at getCurrentEditorPageId (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:1224:21)
at assertStoreMatchJSX (/home/runner/work/blocksuite/blocksuite/tests/utils/asserts.ts:586:24)
at /home/runner/work/blocksuite/blocksuite/tests/paragraph.spec.ts:1701:9
|
selection/native.spec.ts:514:1 › cursor move up and down through note:
tests/selection/native.spec.ts#L523
2) selection/native.spec.ts:514:1 › cursor move up and down through note ─────────────────────────
Error: expect(received).not.toBe(expected) // Object.is equality
Expected: not "2"
521 | await pressArrowDown(page);
522 | currentId = (await getCursorBlockIdAndHeight(page))[0];
> 523 | expect(id).not.toBe(currentId);
| ^
524 | await pressArrowUp(page);
525 | currentId = (await getCursorBlockIdAndHeight(page))[0];
526 | expect(id).toBe(currentId);
at /home/runner/work/blocksuite/blocksuite/tests/selection/native.spec.ts:523:18
|
list.spec.ts:54:1 › add new toggle list:
tests/list.spec.ts#L1
1) list.spec.ts:54:1 › add new toggle list ───────────────────────────────────────────────────────
Test timeout of 30000ms exceeded.
|
list.spec.ts:54:1 › add new toggle list:
tests/utils/actions/misc.ts#L602
1) list.spec.ts:54:1 › add new toggle list ───────────────────────────────────────────────────────
Error: locator.click: Test timeout of 30000ms exceeded.
Call log:
- waiting for locator('editor-host').first().locator('.inline-editor').first()
- locator resolved to <div data-v-root="true" contenteditable="true" class=…>…</div>
at utils/actions/misc.ts:602
600 | const locator = editor.locator(RICH_TEXT_SELECTOR).nth(i);
601 | // need to set `force` to true when clicking on `affine-selected-blocks`
> 602 | await locator.click({ force: true, position: options?.clickPosition });
| ^
603 | }
604 |
605 | export async function focusRichTextEnd(page: Page, i = 0) {
at focusRichText (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:602:17)
at /home/runner/work/blocksuite/blocksuite/tests/list.spec.ts:60:3
|
list.spec.ts:71:1 › convert to numbered list block:
tests/list.spec.ts#L1
2) list.spec.ts:71:1 › convert to numbered list block ────────────────────────────────────────────
Test timeout of 30000ms exceeded.
|
list.spec.ts:71:1 › convert to numbered list block:
tests/utils/actions/misc.ts#L289
2) list.spec.ts:71:1 › convert to numbered list block ────────────────────────────────────────────
Error: page.waitForTimeout: Test timeout of 30000ms exceeded.
at utils/actions/misc.ts:289
287 | frameTimeout = NEXT_FRAME_TIMEOUT
288 | ) {
> 289 | await page.waitForTimeout(frameTimeout);
| ^
290 | }
291 |
292 | export async function waitForPageReady(page: Page) {
at waitNextFrame (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:289:14)
at updateBlockType (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/block.ts:33:9)
at /home/runner/work/blocksuite/blocksuite/tests/list.spec.ts:78:3
|
list.spec.ts:103:1 › indent list block:
tests/list.spec.ts#L1
3) list.spec.ts:103:1 › indent list block ────────────────────────────────────────────────────────
Test timeout of 30000ms exceeded.
|
selection/native.spec.ts:928:1 › Delete the blank line between two dividers:
tests/utils/asserts.ts#L222
1) selection/native.spec.ts:928:1 › Delete the blank line between two dividers ───────────────────
Error: expect(received).toEqual(expected) // deep equality
Expected: 2
Received: 1
at utils/asserts.ts:222
220 | export async function assertDivider(page: Page, count: number) {
221 | const actual = await page.locator('affine-divider').count();
> 222 | expect(actual).toEqual(count);
| ^
223 | }
224 |
225 | export async function assertRichDragButton(page: Page) {
at assertDivider (/home/runner/work/blocksuite/blocksuite/tests/utils/asserts.ts:222:18)
at /home/runner/work/blocksuite/blocksuite/tests/selection/native.spec.ts:941:3
|
edgeless/shortcut.spec.ts:102:3 › zooming › zoom out:
tests/edgeless/shortcut.spec.ts#L116
1) edgeless/shortcut.spec.ts:102:3 › zooming › zoom out ──────────────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: 50
Received: 75
114 |
115 | zoom = await getZoomLevel(page);
> 116 | expect(zoom).toBe(50);
| ^
117 | });
118 | test('zoom reset', async ({ page }) => {
119 | await enterPlaygroundRoom(page);
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/shortcut.spec.ts:116:18
|
edgeless/shortcut.spec.ts:102:3 › zooming › zoom out:
tests/edgeless/shortcut.spec.ts#L116
1) edgeless/shortcut.spec.ts:102:3 › zooming › zoom out ──────────────────────────────────────────
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: 50
Received: 75
114 |
115 | zoom = await getZoomLevel(page);
> 116 | expect(zoom).toBe(50);
| ^
117 | });
118 | test('zoom reset', async ({ page }) => {
119 | await enterPlaygroundRoom(page);
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/shortcut.spec.ts:116:18
|
edgeless/shortcut.spec.ts:102:3 › zooming › zoom out:
tests/edgeless/shortcut.spec.ts#L116
1) edgeless/shortcut.spec.ts:102:3 › zooming › zoom out ──────────────────────────────────────────
Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: 50
Received: 75
114 |
115 | zoom = await getZoomLevel(page);
> 116 | expect(zoom).toBe(50);
| ^
117 | });
118 | test('zoom reset', async ({ page }) => {
119 | await enterPlaygroundRoom(page);
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/shortcut.spec.ts:116:18
|
edgeless/shortcut.spec.ts:102:3 › zooming › zoom out:
tests/edgeless/shortcut.spec.ts#L116
1) edgeless/shortcut.spec.ts:102:3 › zooming › zoom out ──────────────────────────────────────────
Retry #3 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: 50
Received: 75
114 |
115 | zoom = await getZoomLevel(page);
> 116 | expect(zoom).toBe(50);
| ^
117 | });
118 | test('zoom reset', async ({ page }) => {
119 | await enterPlaygroundRoom(page);
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/shortcut.spec.ts:116:18
|
edgeless/shortcut.spec.ts:118:3 › zooming › zoom reset:
tests/edgeless/shortcut.spec.ts#L129
2) edgeless/shortcut.spec.ts:118:3 › zooming › zoom reset ────────────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: 75
Received: 100
127 |
128 | zoom = await getZoomLevel(page);
> 129 | expect(zoom).toBe(75);
| ^
130 |
131 | await zoomResetByKeyboard(page);
132 |
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/shortcut.spec.ts:129:18
|
edgeless/shortcut.spec.ts:118:3 › zooming › zoom reset:
tests/edgeless/shortcut.spec.ts#L129
2) edgeless/shortcut.spec.ts:118:3 › zooming › zoom reset ────────────────────────────────────────
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: 75
Received: 100
127 |
128 | zoom = await getZoomLevel(page);
> 129 | expect(zoom).toBe(75);
| ^
130 |
131 | await zoomResetByKeyboard(page);
132 |
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/shortcut.spec.ts:129:18
|
edgeless/shortcut.spec.ts:118:3 › zooming › zoom reset:
tests/edgeless/shortcut.spec.ts#L129
2) edgeless/shortcut.spec.ts:118:3 › zooming › zoom reset ────────────────────────────────────────
Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: 75
Received: 100
127 |
128 | zoom = await getZoomLevel(page);
> 129 | expect(zoom).toBe(75);
| ^
130 |
131 | await zoomResetByKeyboard(page);
132 |
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/shortcut.spec.ts:129:18
|
edgeless/shortcut.spec.ts:118:3 › zooming › zoom reset:
tests/edgeless/shortcut.spec.ts#L129
2) edgeless/shortcut.spec.ts:118:3 › zooming › zoom reset ────────────────────────────────────────
Retry #3 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: 75
Received: 100
127 |
128 | zoom = await getZoomLevel(page);
> 129 | expect(zoom).toBe(75);
| ^
130 |
131 | await zoomResetByKeyboard(page);
132 |
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/shortcut.spec.ts:129:18
|
edgeless/shortcut.spec.ts:136:3 › zooming › zoom in:
tests/edgeless/shortcut.spec.ts#L150
3) edgeless/shortcut.spec.ts:136:3 › zooming › zoom in ───────────────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: 150
Received: 125
148 |
149 | zoom = await getZoomLevel(page);
> 150 | expect(zoom).toBe(150);
| ^
151 | });
152 | });
153 |
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/shortcut.spec.ts:150:18
|
edgeless/shortcut.spec.ts:136:3 › zooming › zoom in:
tests/edgeless/shortcut.spec.ts#L150
3) edgeless/shortcut.spec.ts:136:3 › zooming › zoom in ───────────────────────────────────────────
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toBe(expected) // Object.is equality
Expected: 150
Received: 125
148 |
149 | zoom = await getZoomLevel(page);
> 150 | expect(zoom).toBe(150);
| ^
151 | });
152 | });
153 |
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/shortcut.spec.ts:150:18
|
database/selection.spec.ts:39:3 › focus › should support move focus by arrow key:
tests/utils/actions/misc.ts#L1056
1) database/selection.spec.ts:39:3 › focus › should support move focus by arrow key ──────────────
Error: Missing column box
at utils/actions/misc.ts:1056
1054 | export async function getBoundingBox(locator: Locator) {
1055 | const box = await locator.boundingBox();
> 1056 | if (!box) throw new Error('Missing column box');
| ^
1057 | return box;
1058 | }
1059 |
at getBoundingBox (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:1056:19)
at assertRowsSelection (/home/runner/work/blocksuite/blocksuite/tests/database/actions.ts:359:24)
at /home/runner/work/blocksuite/blocksuite/tests/database/selection.spec.ts:48:5
|
database/selection.spec.ts:39:3 › focus › should support move focus by arrow key:
tests/utils/actions/misc.ts#L1056
1) database/selection.spec.ts:39:3 › focus › should support move focus by arrow key ──────────────
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: Missing column box
at utils/actions/misc.ts:1056
1054 | export async function getBoundingBox(locator: Locator) {
1055 | const box = await locator.boundingBox();
> 1056 | if (!box) throw new Error('Missing column box');
| ^
1057 | return box;
1058 | }
1059 |
at getBoundingBox (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:1056:19)
at assertRowsSelection (/home/runner/work/blocksuite/blocksuite/tests/database/actions.ts:359:24)
at /home/runner/work/blocksuite/blocksuite/tests/database/selection.spec.ts:48:5
|
database/selection.spec.ts:39:3 › focus › should support move focus by arrow key:
tests/utils/actions/misc.ts#L1056
1) database/selection.spec.ts:39:3 › focus › should support move focus by arrow key ──────────────
Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
Error: Missing column box
at utils/actions/misc.ts:1056
1054 | export async function getBoundingBox(locator: Locator) {
1055 | const box = await locator.boundingBox();
> 1056 | if (!box) throw new Error('Missing column box');
| ^
1057 | return box;
1058 | }
1059 |
at getBoundingBox (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:1056:19)
at assertRowsSelection (/home/runner/work/blocksuite/blocksuite/tests/database/actions.ts:359:24)
at /home/runner/work/blocksuite/blocksuite/tests/database/selection.spec.ts:48:5
|
database/selection.spec.ts:39:3 › focus › should support move focus by arrow key:
tests/utils/actions/misc.ts#L1056
1) database/selection.spec.ts:39:3 › focus › should support move focus by arrow key ──────────────
Retry #3 ───────────────────────────────────────────────────────────────────────────────────────
Error: Missing column box
at utils/actions/misc.ts:1056
1054 | export async function getBoundingBox(locator: Locator) {
1055 | const box = await locator.boundingBox();
> 1056 | if (!box) throw new Error('Missing column box');
| ^
1057 | return box;
1058 | }
1059 |
at getBoundingBox (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:1056:19)
at assertRowsSelection (/home/runner/work/blocksuite/blocksuite/tests/database/actions.ts:359:24)
at /home/runner/work/blocksuite/blocksuite/tests/database/selection.spec.ts:48:5
|
database/selection.spec.ts:78:3 › focus › should support row selection with dynamic height:
tests/utils/actions/misc.ts#L1056
2) database/selection.spec.ts:78:3 › focus › should support row selection with dynamic height ────
Error: Missing column box
at utils/actions/misc.ts:1056
1054 | export async function getBoundingBox(locator: Locator) {
1055 | const box = await locator.boundingBox();
> 1056 | if (!box) throw new Error('Missing column box');
| ^
1057 | return box;
1058 | }
1059 |
at getBoundingBox (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:1056:19)
at assertRowsSelection (/home/runner/work/blocksuite/blocksuite/tests/database/actions.ts:359:24)
at /home/runner/work/blocksuite/blocksuite/tests/database/selection.spec.ts:93:5
|
database/selection.spec.ts:78:3 › focus › should support row selection with dynamic height:
tests/utils/actions/misc.ts#L1056
2) database/selection.spec.ts:78:3 › focus › should support row selection with dynamic height ────
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: Missing column box
at utils/actions/misc.ts:1056
1054 | export async function getBoundingBox(locator: Locator) {
1055 | const box = await locator.boundingBox();
> 1056 | if (!box) throw new Error('Missing column box');
| ^
1057 | return box;
1058 | }
1059 |
at getBoundingBox (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:1056:19)
at assertRowsSelection (/home/runner/work/blocksuite/blocksuite/tests/database/actions.ts:359:24)
at /home/runner/work/blocksuite/blocksuite/tests/database/selection.spec.ts:93:5
|
database/selection.spec.ts:78:3 › focus › should support row selection with dynamic height:
tests/utils/actions/misc.ts#L1056
2) database/selection.spec.ts:78:3 › focus › should support row selection with dynamic height ────
Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
Error: Missing column box
at utils/actions/misc.ts:1056
1054 | export async function getBoundingBox(locator: Locator) {
1055 | const box = await locator.boundingBox();
> 1056 | if (!box) throw new Error('Missing column box');
| ^
1057 | return box;
1058 | }
1059 |
at getBoundingBox (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:1056:19)
at assertRowsSelection (/home/runner/work/blocksuite/blocksuite/tests/database/actions.ts:359:24)
at /home/runner/work/blocksuite/blocksuite/tests/database/selection.spec.ts:93:5
|
database/selection.spec.ts:78:3 › focus › should support row selection with dynamic height:
tests/utils/actions/misc.ts#L1056
2) database/selection.spec.ts:78:3 › focus › should support row selection with dynamic height ────
Retry #3 ───────────────────────────────────────────────────────────────────────────────────────
Error: Missing column box
at utils/actions/misc.ts:1056
1054 | export async function getBoundingBox(locator: Locator) {
1055 | const box = await locator.boundingBox();
> 1056 | if (!box) throw new Error('Missing column box');
| ^
1057 | return box;
1058 | }
1059 |
at getBoundingBox (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:1056:19)
at assertRowsSelection (/home/runner/work/blocksuite/blocksuite/tests/database/actions.ts:359:24)
at /home/runner/work/blocksuite/blocksuite/tests/database/selection.spec.ts:93:5
|
database/selection.spec.ts:114:3 › row-level selection › should support pressing esc to trigger row selection:
tests/utils/actions/misc.ts#L1056
3) database/selection.spec.ts:114:3 › row-level selection › should support pressing esc to trigger row selection
Error: Missing column box
at utils/actions/misc.ts:1056
1054 | export async function getBoundingBox(locator: Locator) {
1055 | const box = await locator.boundingBox();
> 1056 | if (!box) throw new Error('Missing column box');
| ^
1057 | return box;
1058 | }
1059 |
at getBoundingBox (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:1056:19)
at assertRowsSelection (/home/runner/work/blocksuite/blocksuite/tests/database/actions.ts:359:24)
at /home/runner/work/blocksuite/blocksuite/tests/database/selection.spec.ts:125:5
|
database/selection.spec.ts:114:3 › row-level selection › should support pressing esc to trigger row selection:
tests/utils/actions/misc.ts#L1056
3) database/selection.spec.ts:114:3 › row-level selection › should support pressing esc to trigger row selection
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: Missing column box
at utils/actions/misc.ts:1056
1054 | export async function getBoundingBox(locator: Locator) {
1055 | const box = await locator.boundingBox();
> 1056 | if (!box) throw new Error('Missing column box');
| ^
1057 | return box;
1058 | }
1059 |
at getBoundingBox (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:1056:19)
at assertRowsSelection (/home/runner/work/blocksuite/blocksuite/tests/database/actions.ts:359:24)
at /home/runner/work/blocksuite/blocksuite/tests/database/selection.spec.ts:125:5
|
edgeless/basic.spec.ts:67:1 › can zoom viewport:
tests/edgeless/basic.spec.ts#L1
1) edgeless/basic.spec.ts:67:1 › can zoom viewport ───────────────────────────────────────────────
Test timeout of 30000ms exceeded.
|
edgeless/basic.spec.ts:67:1 › can zoom viewport:
tests/utils/actions/misc.ts#L289
1) edgeless/basic.spec.ts:67:1 › can zoom viewport ───────────────────────────────────────────────
Error: page.waitForTimeout: Test timeout of 30000ms exceeded.
at utils/actions/misc.ts:289
287 | frameTimeout = NEXT_FRAME_TIMEOUT
288 | ) {
> 289 | await page.waitForTimeout(frameTimeout);
| ^
290 | }
291 |
292 | export async function waitForPageReady(page: Page) {
at waitNextFrame (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/misc.ts:289:14)
at getZoomLevel (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/edgeless.ts:641:9)
at assertZoomLevel (/home/runner/work/blocksuite/blocksuite/tests/utils/asserts.ts:893:13)
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/basic.spec.ts:84:3
|
edgeless/basic.spec.ts:118:1 › option/alt mouse drag duplicate a new element:
tests/edgeless/basic.spec.ts#L1
2) 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/drag.ts#L21
2) edgeless/basic.spec.ts:118:1 › option/alt mouse drag duplicate a new 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 optionMouseDrag (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/edgeless.ts:657:3)
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/basic.spec.ts:128:3
|
edgeless/group.spec.ts:270:5 › group › release from group › release group from group:
tests/edgeless/group.spec.ts#L233
1) edgeless/group.spec.ts:270:5 › group › release from group › release group from group ──────────
Test timeout of 30000ms exceeded while running "beforeEach" hook.
231 |
232 | test.describe('release from group', () => {
> 233 | test.beforeEach(async ({ page }) => {
| ^
234 | await init(page);
235 | await createShapeElement(page, [200, 0], [300, 100], Shape.Square);
236 | await selectAllByKeyboard(page);
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/group.spec.ts:233:10
|
edgeless/group.spec.ts:270:5 › group › release from group › release group from group:
tests/utils/actions/drag.ts#L21
1) edgeless/group.spec.ts:270:5 › group › release from group › release group from group ──────────
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:357:3)
at createShapeElement (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/edgeless.ts:1229:3)
at init (/home/runner/work/blocksuite/blocksuite/tests/edgeless/group.spec.ts:42:5)
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/group.spec.ts:234:7
|
edgeless/group.spec.ts:327:5 › group › delete › delete root group:
tests/edgeless/group.spec.ts#L323
2) edgeless/group.spec.ts:327:5 › group › delete › delete root group ─────────────────────────────
Test timeout of 30000ms exceeded while running "beforeEach" hook.
321 |
322 | test.describe('delete', () => {
> 323 | test.beforeEach(async ({ page }) => {
| ^
324 | await init(page);
325 | });
326 |
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/group.spec.ts:323:10
|
edgeless/group.spec.ts:327:5 › group › delete › delete root group:
tests/utils/actions/drag.ts#L21
2) edgeless/group.spec.ts:327:5 › group › delete › delete root group ─────────────────────────────
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:357:3)
at createShapeElement (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/edgeless.ts:1229:3)
at init (/home/runner/work/blocksuite/blocksuite/tests/edgeless/group.spec.ts:42:5)
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/group.spec.ts:324:7
|
edgeless/group.spec.ts:344:5 › group › delete › delete sub-element in group:
tests/edgeless/group.spec.ts#L323
3) edgeless/group.spec.ts:344:5 › group › delete › delete sub-element in group ───────────────────
Test timeout of 30000ms exceeded while running "beforeEach" hook.
321 |
322 | test.describe('delete', () => {
> 323 | test.beforeEach(async ({ page }) => {
| ^
324 | await init(page);
325 | });
326 |
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/group.spec.ts:323:10
|
edgeless/group.spec.ts:344:5 › group › delete › delete sub-element in group:
tests/utils/actions/drag.ts#L21
3) edgeless/group.spec.ts:344:5 › group › delete › delete sub-element in group ───────────────────
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:357:3)
at createShapeElement (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/edgeless.ts:1229:3)
at init (/home/runner/work/blocksuite/blocksuite/tests/edgeless/group.spec.ts:42:5)
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/group.spec.ts:324:7
|
edgeless/note.spec.ts:127:1 › resize note then auto size and custom size:
tests/utils/asserts.ts#L771
4) edgeless/note.spec.ts:127:1 › resize note then auto size and custom size ──────────────────────
Error: expect(received).toBeCloseTo(expected, precision)
Expected: 91
Received: 95
Expected precision: 0
Expected difference: < 0.5
Received difference: 4
at utils/asserts.ts:771
769 | expect(a.y).toBeCloseTo(b.y, 0);
770 | expect(a.w).toBeCloseTo(b.w, 0);
> 771 | expect(a.h).toBeCloseTo(b.h, 0);
| ^
772 | }
773 |
774 | export function assertDOMRectEqual(a: DOMRect, b: DOMRect) {
at assertRectEqual (/home/runner/work/blocksuite/blocksuite/tests/utils/asserts.ts:771:15)
at assertNoteRectEqual (/home/runner/work/blocksuite/blocksuite/tests/utils/asserts.ts:764:3)
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/note.spec.ts:172:3
|
edgeless/note.spec.ts:127:1 › resize note then auto size and custom size:
tests/utils/asserts.ts#L771
4) edgeless/note.spec.ts:127:1 › resize note then auto size and custom size ──────────────────────
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toBeCloseTo(expected, precision)
Expected: 91
Received: 95
Expected precision: 0
Expected difference: < 0.5
Received difference: 4
at utils/asserts.ts:771
769 | expect(a.y).toBeCloseTo(b.y, 0);
770 | expect(a.w).toBeCloseTo(b.w, 0);
> 771 | expect(a.h).toBeCloseTo(b.h, 0);
| ^
772 | }
773 |
774 | export function assertDOMRectEqual(a: DOMRect, b: DOMRect) {
at assertRectEqual (/home/runner/work/blocksuite/blocksuite/tests/utils/asserts.ts:771:15)
at assertNoteRectEqual (/home/runner/work/blocksuite/blocksuite/tests/utils/asserts.ts:764:3)
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/note.spec.ts:172:3
|
edgeless/note.spec.ts:127:1 › resize note then auto size and custom size:
tests/utils/asserts.ts#L771
4) edgeless/note.spec.ts:127:1 › resize note then auto size and custom size ──────────────────────
Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toBeCloseTo(expected, precision)
Expected: 91
Received: 95
Expected precision: 0
Expected difference: < 0.5
Received difference: 4
at utils/asserts.ts:771
769 | expect(a.y).toBeCloseTo(b.y, 0);
770 | expect(a.w).toBeCloseTo(b.w, 0);
> 771 | expect(a.h).toBeCloseTo(b.h, 0);
| ^
772 | }
773 |
774 | export function assertDOMRectEqual(a: DOMRect, b: DOMRect) {
at assertRectEqual (/home/runner/work/blocksuite/blocksuite/tests/utils/asserts.ts:771:15)
at assertNoteRectEqual (/home/runner/work/blocksuite/blocksuite/tests/utils/asserts.ts:764:3)
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/note.spec.ts:172:3
|
edgeless/note.spec.ts:355:1 › drag handle should work across multiple notes:
tests/edgeless/note.spec.ts#L374
5) edgeless/note.spec.ts:355: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"
372 | await page.mouse.dblclick(CENTER_X, CENTER_Y);
373 | await dragHandleFromBlockToBlockBottomById(page, '3', '7');
> 374 | await expect(page.locator('.affine-drag-handle-container')).toBeHidden();
| ^
375 | await waitNextFrame(page);
376 | await assertRichTexts(page, ['456', '789', '000', '123']);
377 |
at /home/runner/work/blocksuite/blocksuite/tests/edgeless/note.spec.ts:374:63
|
Playground E2E test (2)
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/upload-artifact@v2. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
|
Playground E2E test (6)
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/upload-artifact@v2. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
|
Playground E2E test (3)
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/upload-artifact@v2. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
|
🎭 Playwright Run Summary
12 passed (23.6s)
|
🎭 Playwright Run Summary
1 flaky
attachment.spec.ts:261:1 › should rename attachment works ──────────────────────────────────────
16 skipped
48 passed (2.6m)
|
🎭 Playwright Run Summary
1 failed
database/column.spec.ts:325:3 › switch column type › switch to progress ────────────────────────
1 flaky
clipboard.spec.ts:1016:1 › copy canvas element and text note in edgeless mode ──────────────────
7 skipped
55 passed (3.1m)
|
🎭 Playwright Run Summary
3 flaky
hotkey.spec.ts:131:1 › multi line rich-text inline code hotkey ─────────────────────────────────
hotkey.spec.ts:986:1 › should cut work single line ─────────────────────────────────────────────
image.spec.ts:100:1 › can click and copy image ─────────────────────────────────────────────────
5 skipped
56 passed (3.2m)
|
🎭 Playwright Run Summary
2 flaky
paragraph.spec.ts:1585:1 › paragraph indent and delete in line start ───────────────────────────
selection/native.spec.ts:514:1 › cursor move up and down through note ──────────────────────────
1 skipped
61 passed (3.4m)
|
🎭 Playwright Run Summary
3 flaky
list.spec.ts:54:1 › add new toggle list ────────────────────────────────────────────────────────
list.spec.ts:71:1 › convert to numbered list block ─────────────────────────────────────────────
list.spec.ts:103:1 › indent list block ─────────────────────────────────────────────────────────
61 passed (3.5m)
|
🎭 Playwright Run Summary
1 flaky
selection/native.spec.ts:928:1 › Delete the blank line between two dividers ────────────────────
2 skipped
61 passed (3.1m)
|
🎭 Playwright Run Summary
3 failed
edgeless/shortcut.spec.ts:102:3 › zooming › zoom out ───────────────────────────────────────────
edgeless/shortcut.spec.ts:118:3 › zooming › zoom reset ─────────────────────────────────────────
edgeless/shortcut.spec.ts:136:3 › zooming › zoom in ────────────────────────────────────────────
4 flaky
edgeless/shape.spec.ts:65:3 › add shape › with holding shift key ───────────────────────────────
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:309:1 › should format quick bar be able to change background color ──────────
1 skipped
56 passed (4.5m)
|
🎭 Playwright Run Summary
5 failed
database/selection.spec.ts:39:3 › focus › should support move focus by arrow key ───────────────
database/selection.spec.ts:78:3 › focus › should support row selection with dynamic height ─────
database/selection.spec.ts:114:3 › row-level selection › should support pressing esc to trigger row selection
database/selection.spec.ts:155:3 › row-level selection › should support row selection with dynamic height
database/selection.spec.ts:214:3 › cell-level selection › should support backspace key to delete cell's content
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:111:5 › auto-complete › drag on auto-complete button › drag on right auto-complete button to add note
56 passed (4.6m)
|
🎭 Playwright Run Summary
2 flaky
edgeless/basic.spec.ts:67:1 › can zoom viewport ────────────────────────────────────────────────
edgeless/basic.spec.ts:118:1 › option/alt mouse drag duplicate a new element ───────────────────
3 skipped
59 passed (4.3m)
|
🎭 Playwright Run Summary
5 flaky
edgeless/group.spec.ts:270:5 › group › release from group › release group from group ───────────
edgeless/group.spec.ts:327:5 › group › delete › delete root group ──────────────────────────────
edgeless/group.spec.ts:344:5 › group › delete › delete sub-element in group ────────────────────
edgeless/note.spec.ts:127:1 › resize note then auto size and custom size ───────────────────────
edgeless/note.spec.ts:355:1 › drag handle should work across multiple notes ────────────────────
59 passed (4.7m)
|
Artifacts
Produced during runtime
Name | Size | |
---|---|---|
test-results-main
Expired
|
94 MB |
|