Skip to content

Remove need for message index in YChat API methods #433

Remove need for message index in YChat API methods

Remove need for message index in YChat API methods #433

Triggered via pull request December 16, 2024 20:36
Status Success
Total duration 12m 41s
Artifacts 3

build.yml

on: pull_request
Build chat extension
2m 24s
Build chat extension
Python test on extensions
2m 13s
Python test on extensions
Integration tests
7m 10s
Integration tests
Integration tests notebook
1m 34s
Integration tests notebook
Fit to window
Zoom out
Zoom in

Annotations

9 errors, 8 warnings, and 2 notices
tests/chat-file.spec.ts:166:7 › #ychat › should add an id to the chat metadata: ui-tests/tests/chat-file.spec.ts#L1
1) 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: ui-tests/http:/localhost:8888/static/lab/jlab_core.65f3a9357549aad3de7f.js?v=65f3a9357549aad3de7f#L1
1) 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.65f3a9357549aad3de7f.js?v=65f3a9357549aad3de7f:1:1432099) at async m.get (http://localhost:8888/static/lab/jlab_core.65f3a9357549aad3de7f.js?v=65f3a9357549aad3de7f:1:1376888) 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/ui-tests/http:/localhost:8888/static/lab/jlab_core.65f3a9357549aad3de7f.js?v=65f3a9357549aad3de7f:1:1432099) at async m.get (/home/runner/work/jupyter-chat/jupyter-chat/ui-tests/http:/localhost:8888/static/lab/jlab_core.65f3a9357549aad3de7f.js?v=65f3a9357549aad3de7f:1:1376888) at async eval (/home/runner/work/jupyter-chat/jupyter-chat/ui-tests/eval at evaluate (:226:30), <anonymous>:2:12) at /home/runner/work/jupyter-chat/jupyter-chat/ui-tests/async <anonymous>:252:30 at readFileContent (/home/runner/work/jupyter-chat/jupyter-chat/ui-tests/tests/chat-file.spec.ts:32:21) at hasId (/home/runner/work/jupyter-chat/jupyter-chat/ui-tests/tests/chat-file.spec.ts:173:27) at Timeout.check (/home/runner/work/jupyter-chat/jupyter-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: ui-tests/tests/notifications.spec.ts#L1
2) 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: ui-tests/tests/test-utils.ts#L84
2) tests/notifications.spec.ts:108:7 › #notifications › should remove notification when the message is read Error: locator.click: Target page, context or browser has been closed Call log: - waiting for getByRole('main').getByRole('tabpanel', { name: 'my-chat.chat' }).locator('.jp-chat-input-container .jp-chat-send-button') - locator resolved to <button tabindex="0" type="button" title="Send message (…>…</button> - 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 - <div tabindex="-1" class="lm-Widget jp-Spinner">…</div> 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 - <div tabindex="-1" class="lm-Widget jp-Spinner">…</div> 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 - <div tabindex="-1" class="lm-Widget jp-Spinner">…</div> 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 - <div tabindex="-1" class="lm-Widget jp-Spinner">…</div> 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 - <div tabindex="-1" class="lm-Widget jp-Spinner">…</div> 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 - <div tabindex="-1" class="lm-Widget jp-Spinner">…</div> 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 - <div tabindex="-1" class="lm-Widget jp-Spinner">…</div> 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 - <div tabindex="-1" class="lm-Widget jp-Spinner">…</div> 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 - <div tabindex="-1" class="lm-Widget jp-Spinner">…</div> 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 - <div tabindex="-1" class="lm-Widget jp-Spinner">…</div> 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 needed - done scrolling - <div tabindex="-1" class="lm-Widget jp-Spinner">…</div> intercepts pointer events - retrying
tests/notifications.spec.ts:108:7 › #notifications › should remove notification when the message is read: ui-tests/tests/notifications.spec.ts#L1
2) tests/notifications.spec.ts:108:7 › #notifications › should remove notification when the message is read Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── Test timeout of 60000ms exceeded.
tests/notifications.spec.ts:108:7 › #notifications › should remove notification when the message is read: ui-tests/tests/test-utils.ts#L50
2) tests/notifications.spec.ts:108:7 › #notifications › should remove notification when the message is read Retry #1 ─────────────────────────────────────────────────────────────────────────────────────── 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/ui-tests/node_modules/@jupyterlab/galata/src/utils.ts:311:17) at ActivityHelper.isTabActive (/home/runner/work/jupyter-chat/jupyter-chat/ui-tests/node_modules/@jupyterlab/galata/src/helpers/activity.ts:46:21) at /home/runner/work/jupyter-chat/jupyter-chat/ui-tests/tests/test-utils.ts:50:37 at Timeout.check (/home/runner/work/jupyter-chat/jupyter-chat/ui-tests/node_modules/@jupyterlab/galata/src/utils.ts:183:33)
tests/notifications.spec.ts:128:7 › #notifications › should update existing notification on new message: ui-tests/tests/notifications.spec.ts#L1
3) tests/notifications.spec.ts:128:7 › #notifications › should update existing notification on new message Test timeout of 60000ms exceeded.
tests/notifications.spec.ts:128:7 › #notifications › should update existing notification on new message: ui-tests/tests/test-utils.ts#L50
3) tests/notifications.spec.ts:128:7 › #notifications › should update existing notification on new message 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/ui-tests/node_modules/@jupyterlab/galata/src/utils.ts:311:17) at ActivityHelper.isTabActive (/home/runner/work/jupyter-chat/jupyter-chat/ui-tests/node_modules/@jupyterlab/galata/src/helpers/activity.ts:46:21) at /home/runner/work/jupyter-chat/jupyter-chat/ui-tests/tests/test-utils.ts:50:37 at Timeout.check (/home/runner/work/jupyter-chat/jupyter-chat/ui-tests/node_modules/@jupyterlab/galata/src/utils.ts:183:33)
tests/unread.spec.ts:56:9 › #messagesNavigation › navigation without unread message › should navigate to last message: ui-tests/tests/unread.spec.ts#L64
4) tests/unread.spec.ts:56:9 › #messagesNavigation › navigation without unread message › should navigate to last message Error: Timed out 5000ms waiting for expect(locator).toBeAttached() Locator: getByRole('main').getByRole('tabpanel', { name: 'my-chat.chat' }).locator('.jp-chat-navigation-bottom') Expected: attached Received: <element(s) not found> Call log: - expect.toBeAttached with timeout 5000ms - waiting for getByRole('main').getByRole('tabpanel', { name: 'my-chat.chat' }).locator('.jp-chat-navigation-bottom') 62 | await messages.first().scrollIntoViewIfNeeded(); 63 | > 64 | await expect(navigationBottom).toBeAttached(); | ^ 65 | 66 | // FIXME: This test uses the fact that some messages are marked as read even if 67 | // they are not displayed, because the unread state is computed before the full at /home/runner/work/jupyter-chat/jupyter-chat/ui-tests/tests/unread.spec.ts:64:38
Check Links
ubuntu-latest pipelines will use ubuntu-24.04 soon. For more details, see https://github.com/actions/runner-images/issues/10636
Typing test
ubuntu-latest pipelines will use ubuntu-24.04 soon. For more details, see https://github.com/actions/runner-images/issues/10636
Build jupyter_chat
ubuntu-latest pipelines will use ubuntu-24.04 soon. For more details, see https://github.com/actions/runner-images/issues/10636
Python test on extensions
ubuntu-latest pipelines will use ubuntu-24.04 soon. For more details, see https://github.com/actions/runner-images/issues/10636
Build chat extension
ubuntu-latest pipelines will use ubuntu-24.04 soon. For more details, see https://github.com/actions/runner-images/issues/10636
Integration tests notebook
ubuntu-latest pipelines will use ubuntu-24.04 soon. For more details, see https://github.com/actions/runner-images/issues/10636
Integration tests
ubuntu-latest pipelines will use ubuntu-24.04 soon. For more details, see https://github.com/actions/runner-images/issues/10636
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_chat-artifacts", "jupyterlab_chat-notebook-playwright-tests", "jupyterlab_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/
🎭 Playwright Run Summary
2 passed (12.4s)
🎭 Playwright Run Summary
4 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:128:7 › #notifications › should update existing notification on new message tests/unread.spec.ts:56:9 › #messagesNavigation › navigation without unread message › should navigate to last message 2 skipped 82 passed (5.8m)

Artifacts

Produced during runtime
Name Size
jupyterlab_chat-artifacts
1.68 MB
jupyterlab_chat-notebook-playwright-tests
436 KB
jupyterlab_chat-playwright-tests
1.16 MB