feat: online copilot api test #18220
build-test.yml
on: pull_request
Build Server native
1m 25s
Matrix: build-native
Build @affine/electron renderer
2m 58s
Matrix: Analyze
Matrix: E2E Mobile Test
Matrix: E2E Test
test-build-mobile-app
/
build-android-web
3m 6s
test-build-mobile-app
/
build-ios-web
3m 19s
Lint
5m 51s
Check yarn binary
8s
E2E Migration Test
3m 41s
Matrix: Server Copilot E2E Test
Server Copilot Api Test
5m 51s
Matrix: server-e2e-test
Matrix: desktop-test
3, 2, 1 Launch
0s
Annotations
18 errors, 10 warnings, and 12 notices
Server Copilot E2E Test (3, 3)
Process completed with exit code 1.
|
Server Copilot E2E Test (2, 3)
Process completed with exit code 1.
|
Server Copilot E2E Test (1, 3)
Process completed with exit code 1.
|
[Mobile Safari] › explorer-folder.spec.ts:54:5 › create a sub folder:
tests/affine-mobile/e2e/explorer-folder.spec.ts#L1
1) [Mobile Safari] › explorer-folder.spec.ts:54:5 › create a sub folder ──────────────────────────
Test timeout of 60000ms exceeded.
|
[Mobile Safari] › explorer-folder.spec.ts:54:5 › create a sub folder:
tests/affine-mobile/e2e/explorer-folder.spec.ts#L24
1) [Mobile Safari] › explorer-folder.spec.ts:54:5 › create a sub folder ──────────────────────────
Error: locator.tap: Test timeout of 60000ms exceeded.
Call log:
- waiting for locator('[data-collapsible]:has-text("organize")').locator('~ [data-testid="collapsible-section-content"]').getByTestId('explorer-bar-add-organize-button')
- locator resolved to <div data-testid="explorer-bar-add-organize-button" class="add-item-placeholder_wrapper__vnvu5c0 node_itemRoot__87otjc1">…</div>
- attempting tap action
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying tap action, attempt #1
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying tap action, attempt #2
- waiting 20ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying tap action, attempt #3
- waiting 100ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying tap action, attempt #4
- waiting 100ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying tap action, attempt #5
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying tap action, attempt #6
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying tap action, attempt #7
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying tap action, attempt #8
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying tap action, attempt #9
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying tap action, attempt #10
- waiting 500ms
- waiting for element to be visible, enabled
|
[Mobile Safari] › explorer-folder.spec.ts:62:5 › create a folder and rename it:
tests/affine-mobile/e2e/explorer-folder.spec.ts#L19
1) [Mobile Safari] › explorer-folder.spec.ts:62:5 › create a folder and rename it ────────────────
Error: expect(received).toEqual(expected) // deep equality
Expected: "rename-input"
Received: null
17 | const isRenameInputFocused = async (page: Page) => {
18 | const focusElTestid = await getAttrOfActiveElement(page);
> 19 | expect(focusElTestid).toEqual('rename-input');
| ^
20 | };
21 |
22 | const createRootFolder = async (page: Page, name: string) => {
at isRenameInputFocused (/home/runner/work/AFFiNE/AFFiNE/tests/affine-mobile/e2e/explorer-folder.spec.ts:19:25)
at createRootFolder (/home/runner/work/AFFiNE/AFFiNE/tests/affine-mobile/e2e/explorer-folder.spec.ts:27:3)
at /home/runner/work/AFFiNE/AFFiNE/tests/affine-mobile/e2e/explorer-folder.spec.ts:66:18
|
[Mobile Safari] › explorer-folder.spec.ts:62:5 › create a folder and rename it:
tests/affine-mobile/e2e/explorer-folder.spec.ts#L19
1) [Mobile Safari] › explorer-folder.spec.ts:62:5 › create a folder and rename it ────────────────
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toEqual(expected) // deep equality
Expected: "rename-input"
Received: null
17 | const isRenameInputFocused = async (page: Page) => {
18 | const focusElTestid = await getAttrOfActiveElement(page);
> 19 | expect(focusElTestid).toEqual('rename-input');
| ^
20 | };
21 |
22 | const createRootFolder = async (page: Page, name: string) => {
at isRenameInputFocused (/home/runner/work/AFFiNE/AFFiNE/tests/affine-mobile/e2e/explorer-folder.spec.ts:19:25)
at /home/runner/work/AFFiNE/AFFiNE/tests/affine-mobile/e2e/explorer-folder.spec.ts:69:3
|
[Mobile Safari] › explorer-folder.spec.ts:62:5 › create a folder and rename it:
tests/affine-mobile/e2e/explorer-folder.spec.ts#L1
1) [Mobile Safari] › explorer-folder.spec.ts:62:5 › create a folder and rename it ────────────────
Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
Test timeout of 60000ms exceeded.
|
[Mobile Safari] › explorer-folder.spec.ts:62:5 › create a folder and rename it:
tests/affine-mobile/e2e/explorer-folder.spec.ts#L24
1) [Mobile Safari] › explorer-folder.spec.ts:62:5 › create a folder and rename it ────────────────
Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
Error: locator.tap: Test timeout of 60000ms exceeded.
Call log:
- waiting for locator('[data-collapsible]:has-text("organize")').locator('~ [data-testid="collapsible-section-content"]').getByTestId('explorer-bar-add-organize-button')
- locator resolved to <div data-testid="explorer-bar-add-organize-button" class="add-item-placeholder_wrapper__vnvu5c0 node_itemRoot__87otjc1">…</div>
- attempting tap action
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying tap action, attempt #1
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying tap action, attempt #2
- waiting 20ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying tap action, attempt #3
- waiting 100ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying tap action, attempt #4
- waiting 100ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying tap action, attempt #5
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying tap action, attempt #6
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying tap action, attempt #7
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying tap action, attempt #8
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying tap action, attempt #9
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retryin
|
[Mobile Safari] › explorer-folder.spec.ts:62:5 › create a folder and rename it:
tests/affine-mobile/e2e/explorer-folder.spec.ts#L19
1) [Mobile Safari] › explorer-folder.spec.ts:62:5 › create a folder and rename it ────────────────
Retry #3 ───────────────────────────────────────────────────────────────────────────────────────
Error: expect(received).toEqual(expected) // deep equality
Expected: "rename-input"
Received: null
17 | const isRenameInputFocused = async (page: Page) => {
18 | const focusElTestid = await getAttrOfActiveElement(page);
> 19 | expect(focusElTestid).toEqual('rename-input');
| ^
20 | };
21 |
22 | const createRootFolder = async (page: Page, name: string) => {
at isRenameInputFocused (/home/runner/work/AFFiNE/AFFiNE/tests/affine-mobile/e2e/explorer-folder.spec.ts:19:25)
at createRootFolder (/home/runner/work/AFFiNE/AFFiNE/tests/affine-mobile/e2e/explorer-folder.spec.ts:27:3)
at /home/runner/work/AFFiNE/AFFiNE/tests/affine-mobile/e2e/explorer-folder.spec.ts:66:18
|
E2E Mobile Test (2)
Process completed with exit code 1.
|
Lint
Process completed with exit code 2.
|
quick-search.spec.ts:532:5 › can use slash menu to insert a newly created doc card:
tests/affine-local/e2e/quick-search.spec.ts#L557
1) quick-search.spec.ts:532:5 › can use slash menu to insert a newly created doc card ────────────
Error: Timed out 5000ms waiting for expect(locator).toContainText(expected)
Locator: locator('.affine-embed-linked-doc-content-title')
- Expected string - 1
+ Received string + 13
- test title
+
+
+
+
+
+
+
+
+
+
+ 1
+
+
Call log:
- expect.toContainText with timeout 5000ms
- waiting for locator('.affine-embed-linked-doc-content-title')
- locator resolved to <div class="affine-embed-linked-doc-content-title">…</div>
- unexpected value "
1
"
- locator resolved to <div class="affine-embed-linked-doc-content-title">…</div>
- unexpected value "
1
"
- locator resolved to <div class="affine-embed-linked-doc-content-title">…</div>
- unexpected value "
1
"
- locator resolved to <div class="affine-embed-linked-doc-content-title">…</div>
- unexpected value "
1
"
- locator resolved to <div class="affine-embed-linked-doc-content-title">…</div>
- unexpected value "
1
"
- locator resolved to <div class="affine-embed-linked-doc-content-title">…</div>
- unexpected value "
1
"
- locator resolved to <div class="affine-embed-linked-doc-content-title">…</div>
- unexpected value "
1
"
- locator resolved to <div class="affine-embed-linked-doc-content-title">…</div>
- unexpected value "
1
"
- locator resolved to <div class="affine-embed-linked-doc-content-title">…</div>
- unexpected value "
1
"
555 | await expect(
556 | page.locator('.affine-embed-linked-doc-content-title')
> 557 | ).toContainText(testTitle);
| ^
558 | });
559 |
560 | test('can use slash menu to insert an external link', async ({ page }) => {
at /home/runner/work/AFFiNE/AFFiNE/tests/affine-local/e2e/quick-search.spec.ts:557:5
|
links.spec.ts:239:5 › allow switching to embed view when linking to the other document with mode:
tests/affine-local/e2e/links.spec.ts#L271
1) links.spec.ts:239:5 › allow switching to embed view when linking to the other document with mode
TimeoutError: locator.click: Timeout 5000ms exceeded.
Call log:
- waiting for locator('affine-embed-linked-doc-block')
- locator resolved to <affine-embed-linked-doc-block contenteditable="false" data-block-id="9UbgJesdm5S2TFROmFom2">…</affine-embed-linked-doc-block>
- attempting click action
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying click action, attempt #1
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying click action, attempt #2
- waiting 20ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying click action, attempt #3
- waiting 100ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying click action, attempt #4
- waiting 100ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying click action, attempt #5
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying click action, attempt #6
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying click action, attempt #7
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying click action, attempt #8
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying click action, attempt #9
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- <iframe src="about:blank" id="webpack-dev-server-client-overlay"></iframe> intercepts pointer events
- retrying click action, attempt #10
- waiting 500ms
- waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if
|
Server E2E Test 2/3
Process completed with exit code 1.
|
Server E2E Test 1/3
Process completed with exit code 1.
|
Server E2E Test 3/3
Process completed with exit code 1.
|
3, 2, 1 Launch
Process completed with exit code 1.
|
Slow Test:
tests/affine-mobile/[Mobile Chrome] › explorer-tag.spec.ts#L1
tests/affine-mobile/[Mobile Chrome] › explorer-tag.spec.ts took 46.4s
|
Slow Test:
tests/affine-migration/basic.spec.ts#L1
tests/affine-migration/basic.spec.ts took 1.3m
|
Analyze (javascript)
1 issue was detected with this workflow: CodeQL language 'javascript' is referenced by more than one entry in the 'language' matrix parameter for job 'analyze'. This may result in duplicate alerts. Please edit the 'language' matrix parameter to keep only one of the following: 'javascript', 'typescript'.
|
Slow Test:
tests/affine-mobile/[Mobile Chrome] › explorer-favorite.spec.ts#L1
tests/affine-mobile/[Mobile Chrome] › explorer-favorite.spec.ts took 44.3s
|
Analyze (typescript)
1 issue was detected with this workflow: CodeQL language 'javascript' is referenced by more than one entry in the 'language' matrix parameter for job 'analyze'. This may result in duplicate alerts. Please edit the 'language' matrix parameter to keep only one of the following: 'javascript', 'typescript'.
|
Slow Test:
tests/affine-mobile/[Mobile Safari] › explorer-tag.spec.ts#L1
tests/affine-mobile/[Mobile Safari] › explorer-tag.spec.ts took 1.3m
|
Slow Test:
tests/affine-mobile/[Mobile Safari] › home.spec.ts#L1
tests/affine-mobile/[Mobile Safari] › home.spec.ts took 17.9s
|
Slow Test:
tests/affine-local/local-first-avatar.spec.ts#L1
tests/affine-local/local-first-avatar.spec.ts took 16.5s
|
Slow Test:
tests/affine-local/local-first-show-delete-modal.spec.ts#L1
tests/affine-local/local-first-show-delete-modal.spec.ts took 23.9s
|
Slow Test:
tests/affine-desktop-cloud/basic.spec.ts#L1
tests/affine-desktop-cloud/basic.spec.ts took 57.0s
|
🎭 Playwright Run Summary
6 passed (1.3m)
|
🎭 Playwright Run Summary
4 passed (1.4m)
|
🎭 Playwright Run Summary
6 passed (1.4m)
|
🎭 Playwright Run Summary
6 passed (1.3m)
|
🎭 Playwright Run Summary
1 flaky
[Mobile Safari] › explorer-folder.spec.ts:54:5 › create a sub folder ───────────────────────────
5 passed (2.5m)
|
🎭 Playwright Run Summary
1 failed
[Mobile Safari] › explorer-folder.spec.ts:62:5 › create a folder and rename it ─────────────────
5 passed (2.4m)
|
🎭 Playwright Run Summary
1 flaky
quick-search.spec.ts:532:5 › can use slash menu to insert a newly created doc card ─────────────
32 passed (3.8m)
|
🎭 Playwright Run Summary
1 flaky
links.spec.ts:239:5 › allow switching to embed view when linking to the other document with mode
2 skipped
30 passed (4.2m)
|
🎭 Playwright Run Summary
1 skipped
33 passed (3.6m)
|
🎭 Playwright Run Summary
2 skipped
31 passed (3.7m)
|
🎭 Playwright Run Summary
34 passed (4.1m)
|
🎭 Playwright Run Summary
1 passed (1.2m)
|
Artifacts
Produced during runtime
Name | Size | |
---|---|---|
affine.darwin-arm64.node
|
1.48 MB |
|
affine.darwin-x64.node
|
1.57 MB |
|
affine.linux-x64-gnu.node
|
1.61 MB |
|
affine.win32-x64-msvc.node
|
1.7 MB |
|
android
|
58.4 MB |
|
ios
|
58.4 MB |
|
server-native.node
|
4.32 MB |
|
test-results-e2e-mobile-2
|
4.36 MB |
|
web
|
61.3 MB |
|