summaryrefslogtreecommitdiffhomepage
path: root/android
AgeCommit message (Collapse)AuthorFilesLines
2022-06-15Improve state handlingAlbin5-68/+97
2022-06-15Ensure all device events are propagatedAlbin2-5/+6
2022-06-14Fix missing IPC event unregistrationAlbin2-2/+21
2022-06-14Fix failing test due to non-loaded di modulesAlbin1-1/+18
2022-06-13Perform a clippy --fixjonathan3-14/+11
This is a giant commit which performs only a clippy --fix. Auditing can happen in two ways, either by reading every line or by running a `cargo clippy --fix` on the previous commit and make sure that the result is the same.
2022-05-31Fix lifecycle owner view crashAlbin1-3/+2
2022-05-31Use Koin for login vmAlbin4-32/+11
2022-05-31Adapt device repo to new service managementAlbin9-60/+82
2022-05-31Refactor Android service connection managementAlbin12-94/+172
This refactor aims to be a step in decoupling the service connection from the main activity and fragment inheritance. The goal is to avoid or minimize the fragment inheritance and instead let each domain observe service connection changes and adjust accordingly.
2022-05-31Fix Koin lifecycle crashAlbin2-2/+2
2022-05-25Simplify device removal eventDavid Lönnhager1-1/+0
2022-05-20Avoid loading the UI DI module in all processesAlbin2-8/+15
Loads the UI specific DI module only in the process/activity where it's used. Before, the UI module and its dependencies would be loaded in the service and tile processes as well.
2022-05-20Rename Android UI DI moduleAlbin2-3/+3
Rename the UI specific DI module to avoid potential confusion with the Application class.
2022-05-18Remove Android wireguard key viewAlbin15-640/+1
The wireguard key view is removed in favor of the new way of managing devices. Translations and some error handling remain.
2022-05-17Refactor Android account clearingAlbin1-9/+8
2022-05-17Remove expiry invalidationAlbin6-26/+8
2022-05-17Fix login vm unit testsAlbin2-105/+38
2022-05-17Cleanup login statusAlbin7-69/+12
2022-05-17Refactor account expiryAlbin13-191/+148
2022-05-17Fix Android history fetchingAlbin4-2/+17
2022-05-17Refactor Android account historyAlbin7-26/+49
2022-05-17Add Android login eventAlbin5-29/+45
2022-05-17Use separate event for Android account creationAlbin5-2/+53
2022-05-17Fix app stuck at launch if device revokedAlbin1-0/+9
This is an intermediate way of handling revoked devices until the proper screen has been merged.
2022-05-17Fix Android device state refreshAlbin2-13/+14
2022-05-13Remove unused macro expressionsEmīls1-50/+0
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.
2022-05-12Adapt new device event/state to AndroidAlbin8-25/+31
2022-05-05Adapt Android naming to AccountAndDeviceAlbin3-8/+8
2022-05-05Hide private device type in `mullvad-daemon`David Lönnhager4-9/+9
2022-04-25Fix Android gradle release configAlbin1-0/+3
2022-04-22Add Android e2e test readmeAlbin1-0/+56
2022-04-20Fix/suppress dependency audit issuesAlbin6-5/+21
2022-04-20Exclude e2e lintClassPath from dependency checkAlbin1-0/+8
2022-04-20Adapt e2e test to updated conncheck pageAlbin1-3/+3
2022-04-20Add Android e2e connection testAlbin10-4/+178
2022-04-20Add webview to enable e2e test verificationAlbin4-0/+59
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.
2022-04-20Add basic Android e2e login testsAlbin3-0/+83
2022-04-20Add mechanism to reset an account before e2e testsAlbin10-3/+284
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 # ...
2022-04-20Add Android e2e test to open web linkAlbin6-0/+69
2022-04-20Add Android e2e screenshot ruleAlbin5-0/+76
This rule will capture screenshot of any failed test and download it to the host executing the test.
2022-04-20Add Android e2e base test classAlbin5-30/+66
Most/all tests will inherit from this common base class that will hold necessary setup steps to run various e2e test scenarios.
2022-04-20Add Android e2e test moduleAlbin9-0/+98
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
2022-04-20Add login vm testsAlbin5-3/+228
2022-04-20Fix missing account number in welcome viewAlbin1-1/+7
2022-04-20Refactor login view to use a view modelAlbin3-114/+224
2022-04-20Show device name in account viewAlbin5-1/+34
2022-04-20Fix initial device refreshAlbin2-4/+6
2022-03-31Add update_device to Android interfaceDavid Lönnhager1-0/+3
2022-03-30Propagate device state over service connectionAlbin16-51/+206
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.
2022-03-28Cleanup empty else branch of when-statementsAlbin1-12/+6