Resolve "e2e tests are passing even though they're not actually running"
Description
Cause of e2e tests not running: wdio beforeCommand was wrong, and did not actually fail if app.js was not compiled. Changed this to a simple, synchronous curl
for app.js.
In addition, the following errors required fixing to get e2e tests passing:
- Re-import templates in JS, do not remove unused imports on save in JS (reason why js did not compile properly)
- Fix failures in e2e tests due to python upgrades (SQLAlchemy join, pydantic optionals, order by not preserved in subquery)
- Make sure database is disconnected on python program exit (avoid dangling connections)
- Ensure API is killed after end of test, so that we don't accumulate connections to the database (exceeded postgres max connections)
Notes to review (code/docs/QA)
All changes under src/webui are reintroduction of previously removed imports.
Related issues
Closes #2241 (closed)
Edited by Øyvind Evju