| Age | Commit message (Collapse) | Author | Files | Lines |
|
The wireguard key view is removed in favor of the new way of managing
devices. Translations and some error handling remain.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This is an intermediate way of handling revoked devices until the proper
screen has been merged.
|
|
|
|
With the advent of the latest nightly, the unused macro expressions are
producing warnings, which fail the CI. So the unused expressions are
removed, and can be added back if they are ever required again.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The webview is added to the debug build type of the main app, but it's
current purpose is only to enable verification as part of e2e tests. One
example is to open the webview on the device while connected and verify
the results of the Mullvad Connection Check.
|
|
|
|
Adds a mechanism to remove all keys/devices of a specified account in
order to start all tests with a known state. This is achieved using a
simple http client included in the e2e test apk, which support login,
listing devices and removing devices.
Two account used for testing _must_ be specified either as gradle
properties or as runtime arguments to the test runner:
* Local properties (local.properties):
valid_test_account_token=XXXX
invalid_test_account_token=XXXX
* Gradle/CLI arguments:
./gradlew :e2e:assembleDebug -Pvalid_test_account_token=XXXX -Pinvalid_test_account_token=XXXX
* Runtime arguments:
am instrument -e valid_test_account_token XXXX -e invalid_test_account_token XXXX # ...
|
|
|
|
This rule will capture screenshot of any failed test and download it to
the host executing the test.
|
|
Most/all tests will inherit from this common base class that will hold
necessary setup steps to run various e2e test scenarios.
|
|
The purpose of this test module is to be able to trigger end-to-end
tests separately from the main app module, mainly because of the flaky
nature of end-to-end tests.
Tests are easiest executed by running the following gradle command:
./gradlew :e2e:connectedDebugAndroidTest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Adds device state communication between the app and service with a
repository backed by a data source to add abstraction layers on the app
side.
Limitations:
* Expiration is not updated correctly.
* The login/creation flow has not been fully adapted to devices.
|
|
|
|
|
|
|
|
Android Studio and ktlint seem to agree on most styling except for
imports. Some settings can be changed in Android Studio, however it
seems to be hard to get lexicographical order (which ktlin wants).
Therefore ktlint should be ran after any formatting has been applied by
Android Studio (otherwise the CI workflow will complain).
|
|
The URL is a left-over after implementing in-app account creation via
the daemon.
|
|
Adapts the Android app to use the device login/logout functionality.
Limitations:
* State will not always be correctly propagated to all components of the
app (i.e. Settings). This will be fixed in later device commits.
* Some temporary error messages will be used in the Login view. These
will change in later commits and/or be replaced with new views (i.e.
when a user has too many devices registered).
|
|
|
|
Initial limited adaption of the daemon device changes. Makes it possible
to launch, login and connect. However, there are some limitiations:
* State is not properly handled thoughout the app.
* The app itself doesn't expose any device functionality to the user.
* The wireguard key actions are disabled (regenerate and verify).
* Accounts are not remembered across app restart.
|
|
Adds a Gradle task that checks whether the JNI directory used for
Mullvad native libs exist. The task is set to run before the pre-build
task.
|
|
|
|
The CVE (CVE-2022-24329) only affects "Multiplatform Gradle Projects"
according to the CVE description, which this is not, and therefore it's
considered a false positive.
|
|
|
|
|
|
|