summaryrefslogtreecommitdiffhomepage
path: root/android/test/mockapi/src
diff options
context:
space:
mode:
authorJonatan Rhodin <jonatan.rhodin@mullvad.net>2024-01-22 14:26:14 +0100
committerJonatan Rhodin <jonatan.rhodin@mullvad.net>2024-01-25 17:10:20 +0100
commit237680ee0aa42c0cd31679779796645c6f328a4f (patch)
treeb278f9a41372ddf929eae2eb989da9f1078b6dc7 /android/test/mockapi/src
parent0f44ea9ea30a6122037b537b68ac0526819c122d (diff)
downloadmullvadvpn-237680ee0aa42c0cd31679779796645c6f328a4f.tar.xz
mullvadvpn-237680ee0aa42c0cd31679779796645c6f328a4f.zip
Add test for showing and using the account history
Diffstat (limited to 'android/test/mockapi/src')
-rw-r--r--android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/AccountHistoryMockApiTest.kt49
1 files changed, 49 insertions, 0 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()
+ }
+}