-
-
Notifications
You must be signed in to change notification settings - Fork 3.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Galata in JupyterLab #10796
Add Galata in JupyterLab #10796
Conversation
Thanks for making a pull request to JupyterLab! To try out this branch on binder, follow this link: |
4a6b2e7
to
f252d8f
Compare
thanks @fcollonval! looks very interesting! I will take a detailed look. |
Huge thanks for working on this @fcollonval, super exciting! |
@fcollonval I had chance to take a deeper look. The enhancements you implemented such as mocking state & settings and proper cleanup along with overall refactoring are really great and exciting! I checked also from the point of backward compatibility. With these changes, CLI is going away, as far as I understand, along with some features such as connecting to remote browser instances, debugging helpers like --no-headless, --skip-visual-regression. Should we consider bringing back CLI and implement the configuration options provided by those? |
Yes
I would prefer as much as possible to use the playwright CLI as they are moving forward faster than us. So it will be easier if we don't proxy it; especially as they have other tools like |
3c99def
to
f000590
Compare
Homogeneous version Fix tests WIP drop jest WIP playwright First working version WIP mock state and settings Use node-fetch instead of axios Add temporary server test folder fixture Remove html report assets Track sessions and terminals related to a test Finalize notebook tests Set up CI Don't use a single worker by default Delete data.csv Increase timeout to wait for JLab in dev-mode Build the galata assets before the tests Install chromium Upload galata artifacts Bump playwright test runner enhance settings fixture Correct tests Fix integrity Split assests into two artifacts Fix regex and settings setting Fix mockSettings test WIP Convert contextmenu tests galata refactoring All contents helpers use the REST API Correct linter ignore files Correct contextmenu test Migrate debugger tests Start converting general tests Convert general tests convert notebook-run Improve temporary server folder name Convert toc tests Convert notebook create Convert notebook-edit Convert notebook-toolbar Improve test:report Open browser Don't expose local port Fix galata tests Improve test partitioning for sessions and terminals Use Playwright project feat. to merge galata and ui-tests Update test using project structure Fix jupyterlab/galata#69 Upgrade newly added tests Add install Fix build inpage Fix tests More fix Try to fix typedoc Update reference screenshots Use galata.newContentsHelper More robust `page.waitIsReady` Fix types for typedoc Revert change for integrity testing Auto review
This should also fix #10480 |
More robust test
725ae7f
to
24f5b62
Compare
Co-authored-by: Jeremy Tuloup <jeremy.tuloup@gmail.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great, thanks!
@meeseeksdev please backport to 3.2.x |
Owee, I'm MrMeeseeks, Look at me. There seem to be a conflict, please backport manually. Here are approximate instructions:
And apply the correct labels and milestones. Congratulation you did some good work! Hopefully your backport PR will be tested by the continuous integration and merged soon! Remember to remove If these instruction are inaccurate, feel free to suggest an improvement. |
@fcollonval I'll leave the Galata backporting to you ;) |
Backport PR #11179 has been opened |
* Backport PR #10796: Add Galata in JupyterLab * Update @jupyterlab/galata version * Correct galata repository urls * Undo changes to notebook example * Address CI errors * Fix `vega-lite` error * Upgrade vega-lite to v5 * Upgrade screenshots * Fix check release
References
Fixes jupyterlab/galata#67
Fixes #10480
Features:
Code changes
package.json
to resolve typedoc error related to jest typesThis imports galata as a first party package in JupyterLab core to ensure the helpers are in sync with JupyterLab packages.
This also convert galata from a tool to a set of fixtures and helpers on top of Playwright Test Runner - this will allow to catch up quickly all the nice features already and coming into Playwright.
It changes also the logic to fit test framework aka isolation of
test
functions to be able to select a file or a function only as proposed by Playwright Test Runner. To allow that the state and the settings are mocked in memory to avoid changes on the hard drive. The sessions and terminals created during a test are automatically deleted. A unique temporary path can be created for a test to be use on the server to ensure files are not shared between tests.Tasks:
ui-tests
User-facing changes
Packages using galata will need to update their tests to use Playwright Test Runner directly
Backwards-incompatible changes
Galata is no more a tool but a set of helpers and fixtures for Playwright Test Runner.