Skip to content

refactor(database): avoid modifying all views when editing a single view #7673

refactor(database): avoid modifying all views when editing a single view

refactor(database): avoid modifying all views when editing a single view #7673

Triggered via pull request November 15, 2024 06:20
Status Failure
Total duration 4m 49s
Artifacts 1

test.yml

on: pull_request
Install Dependencies
1m 12s
Install Dependencies
Matrix: E2E Test
Matrix: Unit Test
Build & Test
0s
Build & Test
Fit to window
Zoom out
Zoom in

Annotations

16 errors, 19 warnings, and 20 notices
database/column.spec.ts:39:3 › column operations › should support rename column: tests/database/column.spec.ts#L57
1) database/column.spec.ts:39:3 › column operations › should support rename column ─────────────── Error: expect(received).toBe(expected) // Object.is equality Expected: "abc123" Received: "abc" 55 | expect(await textElement.innerText()).toBe('abc'); 56 | await redoByClick(page); > 57 | expect(await textElement.innerText()).toBe('abc123'); | ^ 58 | }); 59 | 60 | test('should support add new column', async ({ page }) => { at /home/runner/work/blocksuite/blocksuite/tests/database/column.spec.ts:57:43
database/column.spec.ts:39:3 › column operations › should support rename column: tests/database/column.spec.ts#L57
1) database/column.spec.ts:39:3 › column operations › should support rename column ─────────────── Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toBe(expected) // Object.is equality Expected: "abc123" Received: "abc" 55 | expect(await textElement.innerText()).toBe('abc'); 56 | await redoByClick(page); > 57 | expect(await textElement.innerText()).toBe('abc123'); | ^ 58 | }); 59 | 60 | test('should support add new column', async ({ page }) => { at /home/runner/work/blocksuite/blocksuite/tests/database/column.spec.ts:57:43
database/column.spec.ts:39:3 › column operations › should support rename column: tests/database/column.spec.ts#L57
1) database/column.spec.ts:39:3 › column operations › should support rename column ─────────────── Retry #2 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toBe(expected) // Object.is equality Expected: "abc123" Received: "abc" 55 | expect(await textElement.innerText()).toBe('abc'); 56 | await redoByClick(page); > 57 | expect(await textElement.innerText()).toBe('abc123'); | ^ 58 | }); 59 | 60 | test('should support add new column', async ({ page }) => { at /home/runner/work/blocksuite/blocksuite/tests/database/column.spec.ts:57:43
database/column.spec.ts:39:3 › column operations › should support rename column: tests/database/column.spec.ts#L57
1) database/column.spec.ts:39:3 › column operations › should support rename column ─────────────── Retry #3 ─────────────────────────────────────────────────────────────────────────────────────── Error: expect(received).toBe(expected) // Object.is equality Expected: "abc123" Received: "abc" 55 | expect(await textElement.innerText()).toBe('abc'); 56 | await redoByClick(page); > 57 | expect(await textElement.innerText()).toBe('abc123'); | ^ 58 | }); 59 | 60 | test('should support add new column', async ({ page }) => { at /home/runner/work/blocksuite/blocksuite/tests/database/column.spec.ts:57:43
E2E Test (3)
Process completed with exit code 1.
hotkey/multiline.spec.ts:100:1 › should cut work multiple line: tests/hotkey/multiline.spec.ts#L110
1) hotkey/multiline.spec.ts:100:1 › should cut work multiple line ──────────────────────────────── Error: Snapshot comparison failed: { "type": "block", "id": "0", "flavour": "affine:page", "version": 2, "props": { "title": { "$blocksuite:internal:text$": true, "delta": [] } }, "children": [ { "type": "block", "id": "1", "flavour": "affine:note", "version": 1, "props": { "xywh": "[0,0,498,92]", "background": "--affine-note-background-white", "index": "a0", "hidden": false, "displayMode": "both", "edgeless": { "style": { "borderRadius": 8, "borderSize": 4, "borderStyle": "none", "shadowType": "--affine-note-shadow-box" } } }, "children": [ { "type": "block", "id": "2", "flavour": "affine:paragraph", "version": 1, "props": { "type": "text", "text": { "$blocksuite:internal:text$": true, "delta": [ { "insert": "123" } ] } }, "children": [] }, { "type": "block", "id": "3", "flavour": "affine:paragraph", "version": 1, "props": { "type": "text", "text": { "$blocksuite:internal:text$": true, "delta": [ { "insert": "456" } ] } }, "children": [] }, { "type": "block", "id": "4", "flavour": "affine:paragraph", "version": 1, "props": { "type": "text", "text": { "$blocksuite:internal:text$": true, "delta": [ { "insert": "789" } ] } }, "children": [] } ] } ] } Expected: /home/runner/work/blocksuite/blocksuite/tests/snapshots/hotkey/multiline.spec.ts/should-cut-work-multiple-line-init.json Received: /home/runner/work/blocksuite/blocksuite/tests/test-results/hotkey-multiline-should-cut-work-multiple-line/should-cut-work-multiple-line-init-actual.json 108 | // cut 109 | await page.keyboard.press(`${SHORT_KEY}+x`); > 110 | expect(await getPageSnapshot(page, true)).toMatchSnapshot( | ^ 111 | `${testInfo.title}_init.json` 112 | ); 113 | await undoByKeyboard(page); at /home/runner/work/blocksuite/blocksuite/tests/hotkey/multiline.spec.ts:110:45
edgeless/shortcut.spec.ts:119:1 › should not switch shapes in editing: tests/utils/actions/edgeless.ts#L357
1) edgeless/shortcut.spec.ts:119:1 › should not switch shapes in editing ───────────────────────── TimeoutError: locator.click: Timeout 5000ms exceeded. Call log: - waiting for locator('edgeless-slide-menu edgeless-tool-icon-button').filter({ hasText: 'Square' }) - locator resolved to <edgeless-tool-icon-button role="button">…</edgeless-tool-icon-button> - attempting click action - waiting for element to be visible, enabled and stable - element is not stable - retrying click action, attempt #1 - waiting for element to be visible, enabled and stable - element is not stable - retrying click action, attempt #2 - waiting 20ms - waiting for element to be visible, enabled and stable - element was detached from the DOM, retrying at utils/actions/edgeless.ts:357 355 | .locator('edgeless-slide-menu edgeless-tool-icon-button') 356 | .filter({ hasText: shape }); > 357 | await squareShapeButton.click(); | ^ 358 | break; 359 | } 360 | } at setEdgelessTool (/home/runner/work/blocksuite/blocksuite/tests/utils/actions/edgeless.ts:357:31) at /home/runner/work/blocksuite/blocksuite/tests/edgeless/shortcut.spec.ts:137:3
attachment.spec.ts:697:1 › indent attachment block to list: tests/attachment.spec.ts#L69
1) attachment.spec.ts:697:1 › indent attachment block to list ──────────────────────────────────── TimeoutError: page.waitForEvent: Timeout 5000ms exceeded while waiting for event "filechooser" =========================== logs =========================== waiting for event "filechooser" ============================================================ 67 | await expect(slashMenu).toBeVisible(); 68 | > 69 | const fileChooser = page.waitForEvent('filechooser'); | ^ 70 | await pressEnter(page); 71 | await sleep(100); 72 | await (await fileChooser).setFiles(FILE_PATH); at insertAttachment (/home/runner/work/blocksuite/blocksuite/tests/attachment.spec.ts:69:30) at /home/runner/work/blocksuite/blocksuite/tests/attachment.spec.ts:705:3
attachment.spec.ts:725:1 › attachment can be dragged from note to surface top level block: tests/attachment.spec.ts#L69
2) attachment.spec.ts:725:1 › attachment can be dragged from note to surface top level block ───── TimeoutError: page.waitForEvent: Timeout 5000ms exceeded while waiting for event "filechooser" =========================== logs =========================== waiting for event "filechooser" ============================================================ 67 | await expect(slashMenu).toBeVisible(); 68 | > 69 | const fileChooser = page.waitForEvent('filechooser'); | ^ 70 | await pressEnter(page); 71 | await sleep(100); 72 | await (await fileChooser).setFiles(FILE_PATH); at insertAttachment (/home/runner/work/blocksuite/blocksuite/tests/attachment.spec.ts:69:30) at /home/runner/work/blocksuite/blocksuite/tests/attachment.spec.ts:733:3
bookmark.spec.ts:204:1 › press backspace after bookmark block can select bookmark block: tests/utils/asserts.ts#L293
3) bookmark.spec.ts:204:1 › press backspace after bookmark block can select bookmark block ─────── Error: Timed out 5000ms waiting for expect(locator).toHaveCount(expected) Locator: locator('affine-paragraph') Expected: 1 Received: 4 Call log: - expect.toHaveCount with timeout 5000ms - waiting for locator('affine-paragraph') - locator resolved to 4 elements - unexpected value "4" - locator resolved to 4 elements - unexpected value "4" - locator resolved to 4 elements - unexpected value "4" - locator resolved to 4 elements - unexpected value "4" - locator resolved to 4 elements - unexpected value "4" - locator resolved to 4 elements - unexpected value "4" - locator resolved to 4 elements - unexpected value "4" - locator resolved to 4 elements - unexpected value "4" - locator resolved to 4 elements - unexpected value "4" at utils/asserts.ts:293 291 | count: number 292 | ) { > 293 | await expect(page.locator(`affine-${flavour}`)).toHaveCount(count); | ^ 294 | } 295 | export async function assertRowCount(page: Page, count: number) { 296 | await expect(page.locator('.affine-database-block-row')).toHaveCount(count); at assertBlockCount (/home/runner/work/blocksuite/blocksuite/tests/utils/asserts.ts:293:51) at /home/runner/work/blocksuite/blocksuite/tests/bookmark.spec.ts:220:9
selection/native.spec.ts:265:1 › cursor move to up and down with children block: tests/selection/native.spec.ts#L294
1) selection/native.spec.ts:265:1 › cursor move to up and down with children block ─────────────── Error: expect(received).toBeGreaterThanOrEqual(expected) Expected: >= 12 Received: -1 292 | const textTwo = await getInlineSelectionText(page); 293 | expect(textTwo).toBe('arrow down test 1'); > 294 | expect(indexTwo).toBeGreaterThanOrEqual(12); | ^ 295 | expect(indexTwo).toBeLessThanOrEqual(17); 296 | await page.keyboard.press('ArrowDown'); 297 | const textThree = await getInlineSelectionText(page); at /home/runner/work/blocksuite/blocksuite/tests/selection/native.spec.ts:294:20
clipboard/clipboard.spec.ts:325:1 › clipboard copy nested items: tests/clipboard/clipboard.spec.ts#L348
1) clipboard/clipboard.spec.ts:325:1 › clipboard copy nested items ─────────────────────────────── Error: Snapshot comparison failed: bc d Expected: /home/runner/work/blocksuite/blocksuite/tests/snapshots/clipboard/clipboard.spec.ts/clipboard-copy-nested-items-clipboard.md Received: /home/runner/work/blocksuite/blocksuite/tests/test-results/clipboard-clipboard-clipboard-copy-nested-items/clipboard-copy-nested-items-clipboard-actual.md 346 | const html = await getClipboardHTML(page); 347 | const snapshot = await getClipboardSnapshot(page); > 348 | expect(text).toMatchSnapshot(`${testInfo.title}-clipboard.md`); | ^ 349 | expect(JSON.stringify(snapshot.snapshot.content, null, 2)).toMatchSnapshot( 350 | `${testInfo.title}-clipboard.json` 351 | ); at /home/runner/work/blocksuite/blocksuite/tests/clipboard/clipboard.spec.ts:348:16
code/copy-paste.spec.ts:66:1 › drag copy paste: tests/code/copy-paste.spec.ts#L79
2) code/copy-paste.spec.ts:66:1 › drag copy paste ──────────────────────────────────────────────── Error: expect(received).toBe(expected) // Object.is equality Expected: "useuse" Received: "1234use" 77 | 78 | const content = await getInlineSelectionText(page); > 79 | expect(content).toBe('useuse'); | ^ 80 | 81 | await assertRichTextInlineRange(page, 0, 3, 0); 82 | }); at /home/runner/work/blocksuite/blocksuite/tests/code/copy-paste.spec.ts:79:19
latex/inline.spec.ts:94:1 › update inline latex by clicking the node: tests/latex/inline.spec.ts#L126
1) latex/inline.spec.ts:94:1 › update inline latex by clicking the node ────────────────────────── Error: expect(received).toBe(expected) // Object.is equality - Expected - 7 + Received + 1 - <math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><semantics><mtable rowspacing="0.66em" columnalign="center center center" columnlines="dashed dashed" columnspacing="1em" rowlines="none none dashed"><mtr><mtd><mstyle scriptlevel="0" displaystyle="false"><mi>a</mi></mstyle></mtd><mtd><mstyle scriptlevel="0" displaystyle="false"><mi>b</mi></mstyle></mtd><mtd><mstyle scriptlevel="0" displaystyle="false"><mi>c</mi></mstyle></mtd></mtr><mtr><mtd><mstyle scriptlevel="0" displaystyle="false"><mrow></mrow></mstyle></mtd></mtr><mtr><mtd><mstyle scriptlevel="0" displaystyle="false"><mrow><mi>h</mi><mi>l</mi><mi>i</mi><mi>n</mi><mi>e</mi><mi>d</mi></mrow></mstyle></mtd><mtd><mstyle scriptlevel="0" displaystyle="false"><mi>e</mi></mstyle></mtd><mtd><mstyle scriptlevel="0" displaystyle="false"><mi>f</mi></mstyle></mtd></mtr><mtr><mtd><mstyle scriptlevel="0" displaystyle="false"><mi>g</mi></mstyle></mtd><mtd><mstyle scriptlevel="0" displaystyle="false"><mi>h</mi></mstyle></mtd><mtd><mstyle scriptlevel="0" displaystyle="false"><mi>i</mi></mstyle></mtd></mtr></mtable><annotation encoding="application/x-tex">\def\arraystretch{1.5} - \begin{array}{c:c:c} - a &amp; b &amp; c \\ \\ hline - d &amp; e &amp; f \\ - \hdashline - g &amp; h &amp; i - \end{array}</annotation></semantics></math> + <math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><semantics><mrow><mi>E</mi><mo>=</mo><mi>m</mi><msup><mi>c</mi><mn>2</mn></msup></mrow><annotation encoding="application/x-tex">E=mc^2</annotation></semantics></math> 124 | await pressShiftEnter(page); 125 | await type(page, String.raw`\end{array}`); > 126 | expect(await latexElement.locator('.katex').innerHTML()).toBe( | ^ 127 | '<math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><semantics><mtable rowspacing="0.66em" columnalign="center center center" columnlines="dashed dashed" columnspacing="1em" rowlines="none none dashed"><mtr><mtd><mstyle scriptlevel="0" displaystyle="false"><mi>a</mi></mstyle></mtd><mtd><mstyle scriptlevel="0" displaystyle="false"><mi>b</mi></mstyle></mtd><mtd><mstyle scriptlevel="0" displaystyle="false"><mi>c</mi></mstyle></mtd></mtr><mtr><mtd><mstyle scriptlevel="0" displaystyle="false"><mrow></mrow></mstyle></mtd></mtr><mtr><mtd><mstyle scriptlevel="0" displaystyle="false"><mrow><mi>h</mi><mi>l</mi><mi>i</mi><mi>n</mi><mi>e</mi><mi>d</mi></mrow></mstyle></mtd><mtd><mstyle scriptlevel="0" displaystyle="false"><mi>e</mi></mstyle></mtd><mtd><mstyle scriptlevel="0" displaystyle="false"><mi>f</mi></mstyle></mtd></mtr><mtr><mtd><mstyle scriptlevel="0" displaystyle="false"><mi>g</mi></mstyle></mtd><mtd><mstyle scriptlevel="0" displaystyle="false"><mi>h</mi></mstyle></mtd><mtd><mstyle scriptlevel="0" displaystyle="false"><mi>i</mi></mstyle></mtd></mtr></mtable><annotation encoding="application/x-tex">\\def\\arraystretch{1.5}\n\\begin{array}{c:c:c}\na &amp; b &amp; c \\\\ \\\\ hline\nd &amp; e &amp; f \\\\\n\\hdashline\ng &amp; h &amp; i\n\\end{array}</annotation></semantics></math>' 128 | ); 129 | at /home/runner/work/blocksuite/blocksuite/tests/latex/inline.spec.ts:126:60
edgeless/note/drag-handle.spec.ts:122:1 › drag handle should work across multiple notes: tests/edgeless/note/drag-handle.spec.ts#L148
1) edgeless/note/drag-handle.spec.ts:122: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 draggable="true" class="affine-drag-handle-container">…</div> - unexpected value "visible" - locator resolved to <div draggable="true" class="affine-drag-handle-container">…</div> - unexpected value "visible" - locator resolved to <div draggable="true" class="affine-drag-handle-container">…</div> - unexpected value "visible" - locator resolved to <div draggable="true" class="affine-drag-handle-container">…</div> - unexpected value "visible" - locator resolved to <div draggable="true" class="affine-drag-handle-container">…</div> - unexpected value "visible" - locator resolved to <div draggable="true" class="affine-drag-handle-container">…</div> - unexpected value "visible" - locator resolved to <div draggable="true" class="affine-drag-handle-container">…</div> - unexpected value "visible" - locator resolved to <div draggable="true" class="affine-drag-handle-container">…</div> - unexpected value "visible" - locator resolved to <div draggable="true" class="affine-drag-handle-container">…</div> - unexpected value "visible" 146 | await dragHandleFromBlockToBlockBottomById(page, '3', '4'); 147 | await waitNextFrame(page); > 148 | await expect(page.locator('.affine-drag-handle-container')).toBeHidden(); | ^ 149 | await assertRichTexts(page, ['456', '123', '789', '000']); 150 | 151 | await expect(page.locator('selected > *')).toHaveCount(0); at /home/runner/work/blocksuite/blocksuite/tests/edgeless/note/drag-handle.spec.ts:148:63
Build & Test
Process completed with exit code 1.
E2E Test (20)
Codecov: Failed to properly upload report: The process '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov' failed with exit code 1
E2E Test (16)
Codecov: Failed to properly upload report: The process '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov' failed with exit code 1
E2E Test (18)
Codecov: Failed to properly upload report: The process '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov' failed with exit code 1
E2E Test (14)
Codecov: Failed to properly upload report: The process '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov' failed with exit code 1
E2E Test (12)
Codecov: Failed to properly upload report: The process '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov' failed with exit code 1
E2E Test (13)
Codecov: Failed to properly upload report: The process '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov' failed with exit code 1
E2E Test (1)
Codecov: Failed to properly upload report: The process '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov' failed with exit code 1
E2E Test (10)
Codecov: Failed to properly upload report: The process '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov' failed with exit code 1
E2E Test (17)
Codecov: Failed to properly upload report: The process '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov' failed with exit code 1
E2E Test (19)
Codecov: Failed to properly upload report: The process '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov' failed with exit code 1
E2E Test (4)
Codecov: Failed to properly upload report: The process '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov' failed with exit code 1
E2E Test (2)
Codecov: Failed to properly upload report: The process '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov' failed with exit code 1
E2E Test (6)
Codecov: Failed to properly upload report: The process '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov' failed with exit code 1
E2E Test (5)
Codecov: Failed to properly upload report: The process '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov' failed with exit code 1
E2E Test (7)
Codecov: Failed to properly upload report: The process '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov' failed with exit code 1
E2E Test (11)
Codecov: Failed to properly upload report: The process '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov' failed with exit code 1
E2E Test (15)
Codecov: Failed to properly upload report: The process '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov' failed with exit code 1
E2E Test (8)
Codecov: Failed to properly upload report: The process '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov' failed with exit code 1
E2E Test (9)
Codecov: Failed to properly upload report: The process '/home/runner/work/_actions/codecov/codecov-action/v4/dist/codecov' failed with exit code 1
🎭 Playwright Run Summary
3 skipped 44 passed (44.1s)
🎭 Playwright Run Summary
1 failed database/column.spec.ts:39:3 › column operations › should support rename column ──────────────── 4 skipped 43 passed (57.6s)
🎭 Playwright Run Summary
1 skipped 46 passed (47.7s)
🎭 Playwright Run Summary
47 passed (54.8s)
🎭 Playwright Run Summary
1 flaky hotkey/multiline.spec.ts:100:1 › should cut work multiple line ───────────────────────────────── 46 passed (1.0m)
🎭 Playwright Run Summary
1 flaky edgeless/shortcut.spec.ts:119:1 › should not switch shapes in editing ────────────────────────── 2 skipped 44 passed (1.1m)
🎭 Playwright Run Summary
47 passed (1.1m)
🎭 Playwright Run Summary
3 flaky attachment.spec.ts:697:1 › indent attachment block to list ───────────────────────────────────── attachment.spec.ts:725:1 › attachment can be dragged from note to surface top level block ────── bookmark.spec.ts:204:1 › press backspace after bookmark block can select bookmark block ──────── 2 skipped 43 passed (1.1m)
🎭 Playwright Run Summary
1 skipped 46 passed (1.1m)
🎭 Playwright Run Summary
47 passed (51.9s)
🎭 Playwright Run Summary
1 flaky selection/native.spec.ts:265:1 › cursor move to up and down with children block ──────────────── 46 passed (58.1s)
🎭 Playwright Run Summary
47 passed (1.0m)
🎭 Playwright Run Summary
2 flaky clipboard/clipboard.spec.ts:325:1 › clipboard copy nested items ──────────────────────────────── code/copy-paste.spec.ts:66:1 › drag copy paste ───────────────────────────────────────────────── 1 skipped 45 passed (54.1s)
🎭 Playwright Run Summary
47 passed (1.3m)
🎭 Playwright Run Summary
6 skipped 41 passed (1.5m)
🎭 Playwright Run Summary
1 skipped 46 passed (1.6m)
🎭 Playwright Run Summary
1 skipped 46 passed (1.6m)
🎭 Playwright Run Summary
1 flaky latex/inline.spec.ts:94:1 › update inline latex by clicking the node ─────────────────────────── 1 skipped 45 passed (1.1m)
🎭 Playwright Run Summary
47 passed (1.7m)
🎭 Playwright Run Summary
1 flaky edgeless/note/drag-handle.spec.ts:122:1 › drag handle should work across multiple notes ──────── 10 skipped 36 passed (1.6m)

Artifacts

Produced during runtime
Name Size
test-results-e2e-3
3.35 MB