The new Makefile-based command ``make serve-selenium-notebooks`` will serve notebooks in lib/galaxy_test/selenium/jupyter.
The notebooks will target a Galaxy host running on port 8080 - but are parameterized to be run with papermill (https://papermill.readthedocs.io/) for automate targeting different Galaxy servers, remote Selenium servers, etc..
Screenshots will be embedded right into the notebook.
Example notebooks setup to target just the library code in ``galaxy-selenium`` as well as one appropriate to leverage the Galaxy testing framework are included and documented in depth via modules docstring for ``galaxy_test.selenium.jupyter``.
An extended version of the library functions in #10783 - to allow interacting with workflows, etc.. creating using the API from Selenium. Should make my test prototyping environment in #10784 a bit closer to test case enviornments and allow more rapid development of test cases.
- Rename get_master_api_key to get_admin_api_key - less offesnive and more accurate since it doesn't need to be the bootstrap key.
- Add types and cleanup docstrings.
- Consistent abstract methods with consistent implementation signatures.
- Add a bunch of types to methods to ensure mypy gets in there and checks everything it can while also improving the docs.
- Fix a bunch of issues where Base*Populators were using ``galaxy_interactor`` instances directly - which is bad since the whole point is to not require one of those to execute those methods.
sphinx isn't rendering the types on the abstract properties - which makes me sad but I'm confident that will be fixed at some point. I did change some dependents around to ensure the type annotations are being used by mypy in this case and and they are.
The InvocationStepProvider updates the invocation state in 3 second
intervals, and with it the jobs array. The new jobs in the array don't
have the _showDetails attribute, so all expanded view will be reset.
This fixes that by keeping a component local state for the _showDetails
attribute.