diff options
| author | Jonatan Rhodin <jonatan.rhodin@mullvad.net> | 2024-01-25 17:10:44 +0100 |
|---|---|---|
| committer | Jonatan Rhodin <jonatan.rhodin@mullvad.net> | 2024-01-25 17:10:44 +0100 |
| commit | a51de7c55e70146d5915f1e9bd1ea8a92efc3ad9 (patch) | |
| tree | 6dcf0964089c04e136ad4aa2b4b9a7e8dd625d4c | |
| parent | 0f44ea9ea30a6122037b537b68ac0526819c122d (diff) | |
| parent | 9cfecc933e8bbbf0d2dd9c4f9d2ebe769fd00944 (diff) | |
| download | mullvadvpn-a51de7c55e70146d5915f1e9bd1ea8a92efc3ad9.tar.xz mullvadvpn-a51de7c55e70146d5915f1e9bd1ea8a92efc3ad9.zip | |
Merge branch 'automate-account-history-tests-using-mockapi-droid-591'
4 files changed, 52 insertions, 3 deletions
diff --git a/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/AccountHistoryMockApiTest.kt b/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/AccountHistoryMockApiTest.kt new file mode 100644 index 0000000000..f43eadf5c0 --- /dev/null +++ b/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/AccountHistoryMockApiTest.kt @@ -0,0 +1,49 @@ +package net.mullvad.mullvadvpn.test.mockapi + +import androidx.test.uiautomator.By +import net.mullvad.mullvadvpn.compose.test.LOGIN_INPUT_TEST_TAG +import net.mullvad.mullvadvpn.lib.common.util.groupWithSpaces +import net.mullvad.mullvadvpn.test.common.extension.clickAgreeOnPrivacyDisclaimer +import net.mullvad.mullvadvpn.test.common.extension.clickAllowOnNotificationPermissionPromptIfApiLevel33AndAbove +import net.mullvad.mullvadvpn.test.common.extension.dismissChangelogDialogIfShown +import net.mullvad.mullvadvpn.test.common.extension.findObjectWithTimeout +import net.mullvad.mullvadvpn.test.mockapi.constant.DEFAULT_DEVICE_LIST +import net.mullvad.mullvadvpn.test.mockapi.constant.DUMMY_DEVICE_NAME_2 +import net.mullvad.mullvadvpn.test.mockapi.constant.DUMMY_ID_2 +import net.mullvad.mullvadvpn.test.mockapi.util.currentUtcTimeWithOffsetZero +import org.junit.jupiter.api.Assertions.assertNotNull +import org.junit.jupiter.api.Test + +class AccountHistoryMockApiTest : MockApiTest() { + + @Test + fun testShowAccountHistory() { + // Arrange + val validAccountToken = "1234123412341234" + apiDispatcher.apply { + expectedAccountToken = validAccountToken + accountExpiry = currentUtcTimeWithOffsetZero().plusMonths(1) + devices = DEFAULT_DEVICE_LIST.toMutableMap() + devicePendingToGetCreated = DUMMY_ID_2 to DUMMY_DEVICE_NAME_2 + } + + // Act + app.launch(endpoint) + device.clickAgreeOnPrivacyDisclaimer() + device.clickAllowOnNotificationPermissionPromptIfApiLevel33AndAbove() + device.dismissChangelogDialogIfShown() + app.waitForLoginPrompt() + app.attemptLogin(validAccountToken) + app.ensureLoggedIn() + app.clickAccountCog() + app.clickActionButtonByText("Log out") + device.findObjectWithTimeout(By.res(LOGIN_INPUT_TEST_TAG)).click() + + // Assert + assertNotNull(device.findObjectWithTimeout(By.text(validAccountToken.groupWithSpaces()))) + + // Try to login with the same account again + device.findObjectWithTimeout(By.text(validAccountToken.groupWithSpaces())).click() + app.ensureLoggedIn() + } +} diff --git a/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/LoginMockApiTest.kt b/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/LoginMockApiTest.kt index 75925a08d5..0dcbc308dc 100644 --- a/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/LoginMockApiTest.kt +++ b/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/LoginMockApiTest.kt @@ -62,7 +62,7 @@ class LoginMockApiTest : MockApiTest() { app.attemptLogin(validAccountToken) // Assert - device.findObjectWithTimeout(By.text("UNSECURED CONNECTION")) + app.ensureLoggedIn() } @Test diff --git a/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/LogoutMockApiTest.kt b/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/LogoutMockApiTest.kt index 1fd266c5d6..667515636a 100644 --- a/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/LogoutMockApiTest.kt +++ b/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/LogoutMockApiTest.kt @@ -32,7 +32,7 @@ class LogoutMockApiTest : MockApiTest() { device.dismissChangelogDialogIfShown() app.waitForLoginPrompt() app.attemptLogin(validAccountToken) - device.findObjectWithTimeout(By.text("UNSECURED CONNECTION")) + app.ensureLoggedIn() app.clickAccountCog() app.clickActionButtonByText("Log out") diff --git a/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/TooManyDevicesMockApiTest.kt b/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/TooManyDevicesMockApiTest.kt index b4963b5272..83354dd347 100644 --- a/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/TooManyDevicesMockApiTest.kt +++ b/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/TooManyDevicesMockApiTest.kt @@ -62,6 +62,6 @@ class TooManyDevicesMockApiTest : MockApiTest() { app.clickActionButtonByText("Continue with login") // Assert that we are logged in - device.findObjectWithTimeout(By.text("UNSECURED CONNECTION")) + app.ensureLoggedIn() } } |
