diff options
| author | Oskar Nyberg <oskar@mullvad.net> | 2022-12-12 13:24:38 +0100 |
|---|---|---|
| committer | Oskar Nyberg <oskar@mullvad.net> | 2022-12-14 10:39:00 +0100 |
| commit | b4ff5c5a566bdfaf8588ce3466d80cd64e3eced5 (patch) | |
| tree | 26fe53dd7cccd8ea0de95df30acf1be1a1d6b681 /gui | |
| parent | b31f28baad2ea8e0b726629831544b3e78e230df (diff) | |
| download | mullvadvpn-b4ff5c5a566bdfaf8588ce3466d80cd64e3eced5.tar.xz mullvadvpn-b4ff5c5a566bdfaf8588ce3466d80cd64e3eced5.zip | |
Add readme to gui directory
Diffstat (limited to 'gui')
| -rw-r--r-- | gui/README.md | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/gui/README.md b/gui/README.md new file mode 100644 index 0000000000..068b5dd70e --- /dev/null +++ b/gui/README.md @@ -0,0 +1,54 @@ +# Mullvad VPN Electron app + +This directory contains the files specific to the Electron app for the desktop platforms. + +## Building and running the app + +See the [build instructions](../BuildInstructions.md) for help building or running the app in +development mode. + + +## Automated tests + +The app has unit tests and integration tests located in test/: +- **test/unit** (`npm run test`): Unit tests for specific parts of the app. +- **test/e2e**: End-to-end tests running against the UI. + - **test/e2e/mocked** (`npm run e2e`): Tests running against the renderer process with a mocked + main process (And therefore no daemon). + - **test/e2e/installed** (`npm run e2e:installed <tests to run>`): Tests running against the app + at its install path (See [Standalone test executable](#standalone-test-executable) for more info). + - **test/e2e/installed/state-dependent** (`npm run e2e:installed state-dependent`): Tests + requireing the daemon to be set into a specific state first. + +### Standalone test executable + +The tests in **test/e2e/installed** are run against the already installed app using the currently +running daemon. It's possible to run these tests on any machine with the app installed by running +``` +npm run e2e:installed +``` +or without building by running +``` +npm run e2e:installed:no-build +``` + +It is also possible to build these tests along with all its dependencies into an executable that can +be run on any computer that has the app installed. The command for building the test executable is: +``` +npm run build-test-executable +``` +The executable for all platforms are outputted to `/dist/`. + +The build is configured in `standalone-tests.ts` + +The artifact can be run by either calling without arguments or with specific tests. A lot of the +tests are depending on the daemon already being in a specific state and will fail if it's not. +``` +./mullvadvpn-app-e2e-tests-linux state-dependent/location.spec +``` + + +## Other READMEs +- [scripts/README.md](scripts/README.md) +- [locales/README.md](locales/README.md) +- [assets/images/menubar icons/README.md](assets/images/menubar%20icons/README.md) |
