diff options
| author | Oskar Nyberg <oskar@mullvad.net> | 2023-01-02 17:05:21 +0100 |
|---|---|---|
| committer | Oskar Nyberg <oskar@mullvad.net> | 2023-01-03 14:38:25 +0100 |
| commit | bdc93d1ee708ced697eacf7f4fed2d10874c6029 (patch) | |
| tree | ca59401b04261453ce8dae1ae2544028de0a95f5 | |
| parent | 6da3db4c8e9b64c08e29e2ea6bc15874b68028ae (diff) | |
| download | mullvadvpn-bdc93d1ee708ced697eacf7f4fed2d10874c6029.tar.xz mullvadvpn-bdc93d1ee708ced697eacf7f4fed2d10874c6029.zip | |
Add comments to navigation utils
| -rw-r--r-- | gui/test/e2e/utils.ts | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gui/test/e2e/utils.ts b/gui/test/e2e/utils.ts index b00c3dbdde..b812cdd84e 100644 --- a/gui/test/e2e/utils.ts +++ b/gui/test/e2e/utils.ts @@ -58,7 +58,10 @@ const waitForNavigationFactory = ( app: ElectronApplication, page: Page, ) => { + // Wait for navigation animation to finish. A function can be provided that initiates the + // navigation, e.g. clicks a button. return async (initiateNavigation?: () => Promise<void> | void) => { + // Wait for route to change after optionally initiating the navigation. const [route] = await Promise.all([ waitForNextRoute(app), initiateNavigation?.(), @@ -67,6 +70,7 @@ const waitForNavigationFactory = ( // Wait for view corresponding to new route to appear await page.getByTestId(route).isVisible(); + // Wait until there's only one transitionContents const transitionContents = page.getByTestId('transition-content'); let transitionContentsCount; do { @@ -81,6 +85,7 @@ const waitForNavigationFactory = ( }; }; +// Returns the route when it changes const waitForNextRoute = async (app: ElectronApplication): Promise<string> => { return await app.evaluate(({ ipcMain }) => { return new Promise((resolve) => { |
