summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJonatan Rhodin <jonatan.rhodin@mullvad.net>2024-01-25 17:10:44 +0100
committerJonatan Rhodin <jonatan.rhodin@mullvad.net>2024-01-25 17:10:44 +0100
commita51de7c55e70146d5915f1e9bd1ea8a92efc3ad9 (patch)
tree6dcf0964089c04e136ad4aa2b4b9a7e8dd625d4c
parent0f44ea9ea30a6122037b537b68ac0526819c122d (diff)
parent9cfecc933e8bbbf0d2dd9c4f9d2ebe769fd00944 (diff)
downloadmullvadvpn-a51de7c55e70146d5915f1e9bd1ea8a92efc3ad9.tar.xz
mullvadvpn-a51de7c55e70146d5915f1e9bd1ea8a92efc3ad9.zip
Merge branch 'automate-account-history-tests-using-mockapi-droid-591'
-rw-r--r--android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/AccountHistoryMockApiTest.kt49
-rw-r--r--android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/LoginMockApiTest.kt2
-rw-r--r--android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/LogoutMockApiTest.kt2
-rw-r--r--android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/TooManyDevicesMockApiTest.kt2
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()
}
}