zitadel/console
Elio Bischof fdf0434133
fix(console): remove navigation flakiness (#8439)
# Which Problems Are Solved

The navigation in the console default settings is flaky. Sometimes it
arbitrarily jumps to the organizations page.

# How the Problems Are Solved

The lifecycle hooks were extended to react differently to changes that
come from 'outside' and from the component itself.

# Additional Changes

The e2e tests are supposed to run against Firefox and Chrome. However
they are run twice against Electon. Fixing this revealed the console
navigation flakiness that was less visible on Electron.

The following issues are also fixed with this PR to reduce flakiness in
e2e tests.

- The custom command in the pipeline is removed from the e2e action
step, so the browser argument is respected.
- The npm packages of the e2e tests are updated to their latest version.
- Notification tests run against a clean state now so they don't depend
on each other anymore. This resolved some flakiness and improved
debuggability of the tests.
- E2E page load timeout is increased, reducing flakiness.
- E2E tests wait on some elements to be enabled before they interact
with them, reducing flakiness.

# Additional Context

- Closes #8404 
- Follow-up: https://github.com/zitadel/zitadel/issues/8471

The e2e tests ran three times in a row successfully in the pipeline
against both browsers.

---------

Co-authored-by: Max Peintner <max@caos.ch>
Co-authored-by: Livio Spring <livio.a@gmail.com>
Co-authored-by: Tim Möhlmann <tim+github@zitadel.com>
2024-08-22 09:48:36 +02:00
..
src fix(console): remove navigation flakiness (#8439) 2024-08-22 09:48:36 +02:00
.editorconfig feat(console): integrate frontend (#95) 2020-05-13 14:41:43 +02:00
.eslintrc.js fix(console): update eslint, redirect user without roles, private labeling save and icon (#4459) 2022-09-29 05:25:57 +00:00
.gitignore chore(console): buf stub build (#5215) 2023-02-17 14:09:11 +00:00
.prettierignore chore(e2e): formatting with prettier (#4385) 2022-09-19 19:49:46 +02:00
.prettierrc fix(console): use authService for auth user page (#5233) 2023-02-27 12:03:44 +01:00
angular.json refactor: copy only required frameworks icons from docs in console (#7538) 2024-03-11 08:33:05 +00:00
buf.gen.yaml chore(console): buf stub build (#5215) 2023-02-17 14:09:11 +00:00
karma.conf.js feat(console): integrate frontend (#95) 2020-05-13 14:41:43 +02:00
ngsw-config.json fix: update assets in ngsw-config.json (#1027) 2020-11-27 16:32:14 +01:00
package.json chore(console): upgrade dependencies (#8368) 2024-07-30 16:12:39 +02:00
prebuild.development.js chore(dev): fix fetching http env json (#5921) 2023-05-24 13:07:55 +00:00
README.md docs(contributing): remove guides folder (#4603) 2022-10-24 08:43:24 +02:00
tsconfig.app.json fix(console): angular 15 (#4809) 2023-01-11 13:23:16 +00:00
tsconfig.json feat(console): integrate app (#7417) 2024-02-28 16:52:21 +00:00
tsconfig.spec.json chore(console): dependency update (#5653) 2023-04-18 15:42:29 +02:00
yarn.lock chore(console): upgrade dependencies (#8368) 2024-07-30 16:12:39 +02:00

Console

This project was generated with Angular CLI version 8.3.20.

Development server

Run ng serve for a dev server. Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files.

Code scaffolding

Run ng generate component component-name to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module.

Build

Run ng build to build the project. The build artifacts will be stored in the dist/ directory. Use the --prod flag for a production build.

Running unit tests

Run ng test to execute the unit tests via Karma.

Running end-to-end tests

Please refer to the contributing guide

Further help

To get more help on the Angular CLI use ng help or go check out the Angular CLI README.