Fix the ui tests for jupyterlab 4.3 #358
build.yml
on: pull_request
Build jupyter_chat
2m 26s
Check Links
1m 25s
Matrix: build_extensions
Python test on extensions
3m 0s
Matrix: integration-tests
Annotations
10 errors, 8 warnings, and 2 notices
tests/ui-config.spec.ts:97:7 › #stackedMessages › messages should be stacked by default:
python/jupyterlab-collaborative-chat/ui-tests/tests/ui-config.spec.ts#L110
1) tests/ui-config.spec.ts:97:7 › #stackedMessages › messages should be stacked by default ───────
Error: Screenshot comparison failed:
Expected an image 950px by 108px, received 950px by 101px.
Expected: /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/tests/ui-config.spec.ts-snapshots/stacked-messages-linux.png
Received: /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/test-results/tests-ui-config--stackedMe-dc9c3-hould-be-stacked-by-default/stacked-messages-actual.png
Diff: /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/test-results/tests-ui-config--stackedMe-dc9c3-hould-be-stacked-by-default/stacked-messages-diff.png
108 | );
109 |
> 110 | expect(await messagesContainer.screenshot()).toMatchSnapshot(
| ^
111 | 'stacked-messages.png'
112 | );
113 | });
at /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/tests/ui-config.spec.ts:110:50
|
tests/ui-config.spec.ts:97:7 › #stackedMessages › messages should be stacked by default:
python/jupyterlab-collaborative-chat/ui-tests/tests/ui-config.spec.ts#L110
1) tests/ui-config.spec.ts:97:7 › #stackedMessages › messages should be stacked by default ───────
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: Screenshot comparison failed:
Expected an image 950px by 108px, received 950px by 101px.
Expected: /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/tests/ui-config.spec.ts-snapshots/stacked-messages-linux.png
Received: /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/test-results/tests-ui-config--stackedMe-dc9c3-hould-be-stacked-by-default-retry1/stacked-messages-actual.png
Diff: /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/test-results/tests-ui-config--stackedMe-dc9c3-hould-be-stacked-by-default-retry1/stacked-messages-diff.png
108 | );
109 |
> 110 | expect(await messagesContainer.screenshot()).toMatchSnapshot(
| ^
111 | 'stacked-messages.png'
112 | );
113 | });
at /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/tests/ui-config.spec.ts:110:50
|
tests/ui-config.spec.ts:97:7 › #stackedMessages › messages should be stacked by default:
python/jupyterlab-collaborative-chat/ui-tests/tests/ui-config.spec.ts#L110
1) tests/ui-config.spec.ts:97:7 › #stackedMessages › messages should be stacked by default ───────
Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
Error: Screenshot comparison failed:
Expected an image 950px by 108px, received 950px by 101px.
Expected: /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/tests/ui-config.spec.ts-snapshots/stacked-messages-linux.png
Received: /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/test-results/tests-ui-config--stackedMe-dc9c3-hould-be-stacked-by-default-retry2/stacked-messages-actual.png
Diff: /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/test-results/tests-ui-config--stackedMe-dc9c3-hould-be-stacked-by-default-retry2/stacked-messages-diff.png
108 | );
109 |
> 110 | expect(await messagesContainer.screenshot()).toMatchSnapshot(
| ^
111 | 'stacked-messages.png'
112 | );
113 | });
at /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/tests/ui-config.spec.ts:110:50
|
tests/ui-config.spec.ts:115:7 › #stackedMessages › should update settings value stackMessages on existing chat:
python/jupyterlab-collaborative-chat/ui-tests/tests/ui-config.spec.ts#L152
2) tests/ui-config.spec.ts:115:7 › #stackedMessages › should update settings value stackMessages on existing chat
Error: Screenshot comparison failed:
Expected an image 950px by 158px, received 950px by 151px.
Expected: /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/tests/ui-config.spec.ts-snapshots/not-stacked-messages-linux.png
Received: /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/test-results/tests-ui-config--stackedMe-5963f-ckMessages-on-existing-chat/not-stacked-messages-actual.png
Diff: /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/test-results/tests-ui-config--stackedMe-5963f-ckMessages-on-existing-chat/not-stacked-messages-diff.png
150 | );
151 |
> 152 | expect(await messagesContainer.screenshot()).toMatchSnapshot(
| ^
153 | 'not-stacked-messages.png'
154 | );
155 | });
at /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/tests/ui-config.spec.ts:152:50
|
tests/ui-config.spec.ts:115:7 › #stackedMessages › should update settings value stackMessages on existing chat:
python/jupyterlab-collaborative-chat/ui-tests/tests/ui-config.spec.ts#L152
2) tests/ui-config.spec.ts:115:7 › #stackedMessages › should update settings value stackMessages on existing chat
Retry #1 ───────────────────────────────────────────────────────────────────────────────────────
Error: Screenshot comparison failed:
Expected an image 950px by 158px, received 950px by 151px.
Expected: /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/tests/ui-config.spec.ts-snapshots/not-stacked-messages-linux.png
Received: /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/test-results/tests-ui-config--stackedMe-5963f-ckMessages-on-existing-chat-retry1/not-stacked-messages-actual.png
Diff: /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/test-results/tests-ui-config--stackedMe-5963f-ckMessages-on-existing-chat-retry1/not-stacked-messages-diff.png
150 | );
151 |
> 152 | expect(await messagesContainer.screenshot()).toMatchSnapshot(
| ^
153 | 'not-stacked-messages.png'
154 | );
155 | });
at /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/tests/ui-config.spec.ts:152:50
|
tests/ui-config.spec.ts:115:7 › #stackedMessages › should update settings value stackMessages on existing chat:
python/jupyterlab-collaborative-chat/ui-tests/tests/ui-config.spec.ts#L143
2) tests/ui-config.spec.ts:115:7 › #stackedMessages › should update settings value stackMessages on existing chat
Retry #2 ───────────────────────────────────────────────────────────────────────────────────────
Error: Timed out 5000ms waiting for expect(locator).toHaveCount(expected)
Locator: getByRole('main').getByRole('tabpanel', { name: 'my-chat.chat' }).locator('.jp-chat-messages-container').locator('.jp-chat-message')
Expected: 2
Received: 0
Call log:
- expect.toHaveCount with timeout 5000ms
- waiting for getByRole('main').getByRole('tabpanel', { name: 'my-chat.chat' }).locator('.jp-chat-messages-container').locator('.jp-chat-message')
- locator resolved to 0 elements
- unexpected value "0"
- locator resolved to 0 elements
- unexpected value "0"
- locator resolved to 0 elements
- unexpected value "0"
- locator resolved to 0 elements
- unexpected value "0"
- locator resolved to 0 elements
- unexpected value "0"
- locator resolved to 0 elements
- unexpected value "0"
- locator resolved to 0 elements
- unexpected value "0"
- locator resolved to 0 elements
- unexpected value "0"
- locator resolved to 0 elements
- unexpected value "0"
141 | const messagesContainer = chatPanel.locator('.jp-chat-messages-container');
142 | const messages = messagesContainer.locator('.jp-chat-message');
> 143 | await expect(messages).toHaveCount(2);
| ^
144 |
145 | // Hide the time to avoid time zone diff
146 | await messages
at /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/tests/ui-config.spec.ts:143:28
|
tests/chat-file.spec.ts:166:7 › #ychat › should add an id to the chat metadata:
python/jupyterlab-collaborative-chat/ui-tests/tests/chat-file.spec.ts#L1
3) tests/chat-file.spec.ts:166:7 › #ychat › should add an id to the chat metadata ────────────────
Test timeout of 60000ms exceeded.
|
tests/chat-file.spec.ts:166:7 › #ychat › should add an id to the chat metadata:
python/jupyterlab-collaborative-chat/ui-tests/http:/localhost:8888/static/lab/jlab_core.30ac71af4fabafb542d8.js?v=30ac71af4fabafb542d8#L1
3) tests/chat-file.spec.ts:166:7 › #ychat › should add an id to the chat metadata ────────────────
Error: proxy.evaluate: Error: Invalid response: 404 Not Found
at i.create (http://localhost:8888/static/lab/jlab_core.30ac71af4fabafb542d8.js?v=30ac71af4fabafb542d8:1:1429663)
at async m.get (http://localhost:8888/static/lab/jlab_core.30ac71af4fabafb542d8.js?v=30ac71af4fabafb542d8:1:1374452)
at async eval (eval at evaluate (:226:30), <anonymous>:2:12)
at async <anonymous>:252:30
at i.create (/home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/http:/localhost:8888/static/lab/jlab_core.30ac71af4fabafb542d8.js?v=30ac71af4fabafb542d8:1:1429663)
at async m.get (/home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/http:/localhost:8888/static/lab/jlab_core.30ac71af4fabafb542d8.js?v=30ac71af4fabafb542d8:1:1374452)
at async eval (/home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/eval at evaluate (:226:30), <anonymous>:2:12)
at /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/async <anonymous>:252:30
at readFileContent (/home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/tests/chat-file.spec.ts:32:21)
at hasId (/home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/tests/chat-file.spec.ts:173:27)
at Timeout.check (/home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/node_modules/@jupyterlab/galata/src/utils.ts:183:33)
|
tests/notifications.spec.ts:108:7 › #notifications › should remove notification when the message is read:
python/jupyterlab-collaborative-chat/ui-tests/tests/notifications.spec.ts#L1
4) tests/notifications.spec.ts:108:7 › #notifications › should remove notification when the message is read
Test timeout of 60000ms exceeded.
|
tests/notifications.spec.ts:108:7 › #notifications › should remove notification when the message is read:
python/jupyterlab-collaborative-chat/ui-tests/tests/test-utils.ts#L50
4) tests/notifications.spec.ts:108:7 › #notifications › should remove notification when the message is read
Error: locator.isChecked: Target page, context or browser has been closed
at tests/test-utils.ts:50
48 | const tabName = splitPath[splitPath.length - 1];
49 | await page.waitForCondition(
> 50 | async () => await page.activity.isTabActive(tabName)
| ^
51 | );
52 | return (await page.activity.getPanelLocator(tabName)) as Locator;
53 | };
at Object.isInSimpleMode (/home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/node_modules/@jupyterlab/galata/src/utils.ts:311:17)
at ActivityHelper.isTabActive (/home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/node_modules/@jupyterlab/galata/src/helpers/activity.ts:46:21)
at /home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/tests/test-utils.ts:50:37
at Timeout.check (/home/runner/work/jupyter-chat/jupyter-chat/python/jupyterlab-collaborative-chat/ui-tests/node_modules/@jupyterlab/galata/src/utils.ts:183:33)
|
Check Links
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
|
Build jupyter_chat
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
|
Build ws chat extension
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3, actions/upload-artifact@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
|
Build collaborative chat extension
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3, actions/upload-artifact@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
|
Python test on extensions
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
|
ws integration tests
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3, actions/download-artifact@v3, actions/cache@v3, actions/upload-artifact@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
|
Deprecation notice: v1, v2, and v3 of the artifact actions
The following artifacts were uploaded using a version of actions/upload-artifact that is scheduled for deprecation: "jupyterlab_collaborative_chat-artifacts", "jupyterlab_collaborative_chat-playwright-tests", "jupyterlab_ws_chat-artifacts", "jupyterlab_ws_chat-playwright-tests".
Please update your workflow to use v4 of the artifact actions.
Learn more: https://github.blog/changelog/2024-04-16-deprecation-notice-v3-of-the-artifact-actions/
|
collaborative integration tests
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3, actions/download-artifact@v3, actions/cache@v3, actions/upload-artifact@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
|
🎭 Playwright Run Summary
1 passed (6.2s)
|
🎭 Playwright Run Summary
2 failed
tests/ui-config.spec.ts:97:7 › #stackedMessages › messages should be stacked by default ────────
tests/ui-config.spec.ts:115:7 › #stackedMessages › should update settings value stackMessages on existing chat
6 flaky
tests/chat-file.spec.ts:166:7 › #ychat › should add an id to the chat metadata ─────────────────
tests/notifications.spec.ts:108:7 › #notifications › should remove notification when the message is read
tests/notifications.spec.ts:153:7 › #notifications › should remove notifications from settings ─
tests/raw-time.spec.ts:58:7 › #raw_time › message timestamp should be raw according to file content
tests/unread.spec.ts:56:9 › #messagesNavigation › navigation without unread message › should navigate to last message
tests/unread.spec.ts:197:9 › #messagesNavigation › navigation with new unread message › should navigate to new unread message
2 skipped
78 passed (6.8m)
|
Artifacts
Produced during runtime
Name | Size | |
---|---|---|
jupyterlab_collaborative_chat-artifacts
|
1.69 MB |
|
jupyterlab_collaborative_chat-playwright-tests
|
1.33 MB |
|
jupyterlab_ws_chat-artifacts
|
1.34 MB |
|
jupyterlab_ws_chat-playwright-tests
|
426 KB |
|