diff options
| author | Albin <albin@mullvad.net> | 2024-06-07 18:51:56 +0200 |
|---|---|---|
| committer | Albin <albin@mullvad.net> | 2024-06-10 10:36:18 +0200 |
| commit | f937ea54f41f947de8ddd606f6071f191fb1cdfb (patch) | |
| tree | ab5be555271de269a199dcfae85d6050610415b3 /android/test | |
| parent | 561c4d8262fde4d70c13fb1de0642bee521fbbe3 (diff) | |
| download | mullvadvpn-f937ea54f41f947de8ddd606f6071f191fb1cdfb.tar.xz mullvadvpn-f937ea54f41f947de8ddd606f6071f191fb1cdfb.zip | |
Unify account number naming
Use variations of "account number" rather than
"account token" throughout the kotlin code base.
Diffstat (limited to 'android/test')
18 files changed, 73 insertions, 73 deletions
diff --git a/android/test/common/src/main/kotlin/net/mullvad/mullvadvpn/test/common/interactor/AppInteractor.kt b/android/test/common/src/main/kotlin/net/mullvad/mullvadvpn/test/common/interactor/AppInteractor.kt index 0727d41dd3..07ea1aeca1 100644 --- a/android/test/common/src/main/kotlin/net/mullvad/mullvadvpn/test/common/interactor/AppInteractor.kt +++ b/android/test/common/src/main/kotlin/net/mullvad/mullvadvpn/test/common/interactor/AppInteractor.kt @@ -43,12 +43,12 @@ class AppInteractor( device.wait(Until.hasObject(By.pkg(targetPackageName).depth(0)), APP_LAUNCH_TIMEOUT) } - fun launchAndEnsureLoggedIn(accountToken: String) { + fun launchAndEnsureLoggedIn(accountNumber: String) { launch() device.clickAgreeOnPrivacyDisclaimer() device.clickAllowOnNotificationPermissionPromptIfApiLevel33AndAbove() waitForLoginPrompt() - attemptLogin(accountToken) + attemptLogin(accountNumber) ensureLoggedIn() } @@ -61,10 +61,10 @@ class AppInteractor( ensureAccountCreated() } - fun attemptLogin(accountToken: String) { + fun attemptLogin(accountNumber: String) { val loginObject = device.findObjectWithTimeout(By.clazz("android.widget.EditText")).apply { - text = accountToken + text = accountNumber } loginObject.parent.findObject(By.clazz(Button::class.java)).click() } @@ -73,10 +73,10 @@ class AppInteractor( device.findObjectWithTimeout(By.text("Create account")).click() } - fun ensureAccountCreated(accountToken: String? = null) { + fun ensureAccountCreated(accountNumber: String? = null) { device.findObjectWithTimeout(By.text("Congrats!"), LOGIN_TIMEOUT) - accountToken?.let { - device.findObjectWithTimeout(By.text(accountToken), DEFAULT_INTERACTION_TIMEOUT) + accountNumber?.let { + device.findObjectWithTimeout(By.text(accountNumber), DEFAULT_INTERACTION_TIMEOUT) } } diff --git a/android/test/e2e/README.md b/android/test/e2e/README.md index 7c1271ad97..be41a83341 100644 --- a/android/test/e2e/README.md +++ b/android/test/e2e/README.md @@ -7,14 +7,14 @@ The tests in this module are end-to-end tests that rely on the publicly accessib Set tokens in the below command and then execute the command in the `android` directory to run the tests on a local device: ``` ./gradlew :test:e2e:connectedDebugAndroidTest \ - -Pvalid_test_account_token=XXXX \ - -Pinvalid_test_account_token=XXXX + -Pvalid_test_account_number=XXXX \ + -Pinvalid_test_account_number=XXXX ``` For convenience, the tokens can also be set in `<REPO-ROOT>/android/local.properties` in the following way: ``` -valid_test_account_token=XXXX -invalid_test_account_token=XXXX +valid_test_account_number=XXXX +invalid_test_account_number=XXXX ``` It's also possible to provide the tokens to the test runner during test execution. However note that this requires [the APKs to be installed manually](https://developer.android.com/training/testing/instrumented-tests/androidx-test-libraries/runner#architecture). @@ -22,8 +22,8 @@ It's also possible to provide the tokens to the test runner during test executio adb shell 'CLASSPATH=$(pm path androidx.test.services) app_process / \ androidx.test.services.shellexecutor.ShellMain am instrument -w \ -e clearPackageData true \ - -e valid_test_account_token XXXX \ - -e invalid_test_account_token XXXX \ + -e valid_test_account_number XXXX \ + -e invalid_test_account_number XXXX \ -e targetInstrumentation net.mullvad.mullvadvpn.test.e2e/androidx.test.runner.AndroidJUnitRunner \ androidx.test.orchestrator/.AndroidTestOrchestrator' ``` @@ -41,7 +41,7 @@ gcloud firebase test android run \ --test ./android/test/e2e/build/outputs/apk/debug/e2e-debug.apk \ --device model=redfin,version=30,locale=en,orientation=portrait \ --use-orchestrator \ - --environment-variables clearPackageData=true,valid_test_account_token=XXXX,invalid_test_account_token=XXXX + --environment-variables clearPackageData=true,valid_test_account_number=XXXX,invalid_test_account_number=XXXX ``` If using gcloud via the docker image, the following can be executed in the `android` directory to run the tests (on a Pixel 5e): @@ -52,5 +52,5 @@ docker run --rm --volumes-from gcloud-config -v ${PWD}:/android gcr.io/google.co --test ./android/test/e2e/build/outputs/apk/debug/e2e-debug.apk \ --device model=redfin,version=30,locale=en,orientation=portrait \ --use-orchestrator \ - --environment-variables clearPackageData=true,valid_test_account_token=XXXX,invalid_test_account_token=XXXX + --environment-variables clearPackageData=true,valid_test_account_number=XXXX,invalid_test_account_number=XXXX ``` diff --git a/android/test/e2e/build.gradle.kts b/android/test/e2e/build.gradle.kts index 161e73b510..ce80697240 100644 --- a/android/test/e2e/build.gradle.kts +++ b/android/test/e2e/build.gradle.kts @@ -43,8 +43,8 @@ android { testInstrumentationRunnerArguments += mutableMapOf<String, String>().apply { put("clearPackageData", "true") - addOptionalPropertyAsArgument("valid_test_account_token") - addOptionalPropertyAsArgument("invalid_test_account_token") + addOptionalPropertyAsArgument("valid_test_account_number") + addOptionalPropertyAsArgument("invalid_test_account_number") } } diff --git a/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/LoginTest.kt b/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/LoginTest.kt index 9380589709..2efb299246 100644 --- a/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/LoginTest.kt +++ b/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/LoginTest.kt @@ -17,10 +17,10 @@ class LoginTest : EndToEndTest(BuildConfig.FLAVOR_infrastructure) { @Test fun testLoginWithValidCredentials() { // Given - val validTestAccountToken = accountTestRule.validAccountNumber + val validTestAccountNumber = accountTestRule.validAccountNumber // When - app.launchAndEnsureLoggedIn(validTestAccountToken) + app.launchAndEnsureLoggedIn(validTestAccountNumber) // Then app.ensureLoggedIn() @@ -30,14 +30,14 @@ class LoginTest : EndToEndTest(BuildConfig.FLAVOR_infrastructure) { @Disabled("Disabled to avoid getting rate-limited.") fun testLoginWithInvalidCredentials() { // Given - val invalidDummyAccountToken = accountTestRule.invalidAccountNumber + val invalidDummyAccountNumber = accountTestRule.invalidAccountNumber // When app.launch() device.clickAgreeOnPrivacyDisclaimer() device.clickAllowOnNotificationPermissionPromptIfApiLevel33AndAbove() app.waitForLoginPrompt() - app.attemptLogin(invalidDummyAccountToken) + app.attemptLogin(invalidDummyAccountNumber) // Then device.findObjectWithTimeout(By.text("Invalid account number"), LOGIN_FAILURE_TIMEOUT) diff --git a/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/constant/Constants.kt b/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/constant/Constants.kt index dec8f1e07f..baf3dcae3d 100644 --- a/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/constant/Constants.kt +++ b/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/constant/Constants.kt @@ -2,5 +2,5 @@ package net.mullvad.mullvadvpn.test.e2e.constant const val LOG_TAG = "mullvad-e2e" const val PARTNER_AUTH = "partner_auth" -const val VALID_TEST_ACCOUNT_TOKEN_ARGUMENT_KEY = "valid_test_account_token" -const val INVALID_TEST_ACCOUNT_TOKEN_ARGUMENT_KEY = "invalid_test_account_token" +const val VALID_TEST_ACCOUNT_NUMBER_ARGUMENT_KEY = "valid_test_account_number" +const val INVALID_TEST_ACCOUNT_NUMBER_ARGUMENT_KEY = "invalid_test_account_number" diff --git a/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/interactor/MullvadAccountInteractor.kt b/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/interactor/MullvadAccountInteractor.kt index 8f3f55166f..59c9b49b91 100644 --- a/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/interactor/MullvadAccountInteractor.kt +++ b/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/interactor/MullvadAccountInteractor.kt @@ -4,9 +4,9 @@ import net.mullvad.mullvadvpn.test.e2e.misc.SimpleMullvadHttpClient class MullvadAccountInteractor( private val httpClient: SimpleMullvadHttpClient, - private val testAccountToken: String + private val testAccountNumber: String ) { fun cleanupAccount() { - httpClient.removeAllDevices(testAccountToken) + httpClient.removeAllDevices(testAccountNumber) } } diff --git a/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/misc/AccountTestRule.kt b/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/misc/AccountTestRule.kt index bbd59eba9b..333f4cde88 100644 --- a/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/misc/AccountTestRule.kt +++ b/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/misc/AccountTestRule.kt @@ -1,9 +1,9 @@ package net.mullvad.mullvadvpn.test.e2e.misc import androidx.test.platform.app.InstrumentationRegistry -import net.mullvad.mullvadvpn.test.e2e.constant.INVALID_TEST_ACCOUNT_TOKEN_ARGUMENT_KEY +import net.mullvad.mullvadvpn.test.e2e.constant.INVALID_TEST_ACCOUNT_NUMBER_ARGUMENT_KEY import net.mullvad.mullvadvpn.test.e2e.constant.PARTNER_AUTH -import net.mullvad.mullvadvpn.test.e2e.constant.VALID_TEST_ACCOUNT_TOKEN_ARGUMENT_KEY +import net.mullvad.mullvadvpn.test.e2e.constant.VALID_TEST_ACCOUNT_NUMBER_ARGUMENT_KEY import net.mullvad.mullvadvpn.test.e2e.extension.getRequiredArgument import org.junit.jupiter.api.extension.BeforeEachCallback import org.junit.jupiter.api.extension.ExtensionContext @@ -30,12 +30,12 @@ class AccountTestRule : BeforeEachCallback { ) } else { validAccountNumber = - bundle.getRequiredArgument(VALID_TEST_ACCOUNT_TOKEN_ARGUMENT_KEY) + bundle.getRequiredArgument(VALID_TEST_ACCOUNT_NUMBER_ARGUMENT_KEY) client.removeAllDevices(validAccountNumber) } invalidAccountNumber = - bundle.getRequiredArgument(INVALID_TEST_ACCOUNT_TOKEN_ARGUMENT_KEY) + bundle.getRequiredArgument(INVALID_TEST_ACCOUNT_NUMBER_ARGUMENT_KEY) } } diff --git a/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/misc/CleanupAccountTestRule.kt b/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/misc/CleanupAccountTestRule.kt index ba42862397..f79f78e03b 100644 --- a/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/misc/CleanupAccountTestRule.kt +++ b/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/misc/CleanupAccountTestRule.kt @@ -3,7 +3,7 @@ package net.mullvad.mullvadvpn.test.e2e.misc import android.util.Log import androidx.test.platform.app.InstrumentationRegistry import net.mullvad.mullvadvpn.test.e2e.constant.LOG_TAG -import net.mullvad.mullvadvpn.test.e2e.constant.VALID_TEST_ACCOUNT_TOKEN_ARGUMENT_KEY +import net.mullvad.mullvadvpn.test.e2e.constant.VALID_TEST_ACCOUNT_NUMBER_ARGUMENT_KEY import net.mullvad.mullvadvpn.test.e2e.extension.getRequiredArgument import net.mullvad.mullvadvpn.test.e2e.interactor.MullvadAccountInteractor import org.junit.jupiter.api.extension.BeforeEachCallback @@ -14,10 +14,10 @@ class CleanupAccountTestRule : BeforeEachCallback { override fun beforeEach(context: ExtensionContext) { Log.d(LOG_TAG, "Cleaning up account before test: ${context.requiredTestMethod.name}") val targetContext = InstrumentationRegistry.getInstrumentation().targetContext - val validTestAccountToken = + val validTestAccountNumber = InstrumentationRegistry.getArguments() - .getRequiredArgument(VALID_TEST_ACCOUNT_TOKEN_ARGUMENT_KEY) - MullvadAccountInteractor(SimpleMullvadHttpClient(targetContext), validTestAccountToken) + .getRequiredArgument(VALID_TEST_ACCOUNT_NUMBER_ARGUMENT_KEY) + MullvadAccountInteractor(SimpleMullvadHttpClient(targetContext), validTestAccountNumber) .cleanupAccount() } } diff --git a/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/misc/SimpleMullvadHttpClient.kt b/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/misc/SimpleMullvadHttpClient.kt index dff31b6049..78f5e967e0 100644 --- a/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/misc/SimpleMullvadHttpClient.kt +++ b/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/misc/SimpleMullvadHttpClient.kt @@ -22,17 +22,17 @@ class SimpleMullvadHttpClient(context: Context) { private val queue = Volley.newRequestQueue(context) - fun removeAllDevices(accountToken: String) { + fun removeAllDevices(accountNumber: String) { Log.v(LOG_TAG, "Remove all devices") - val token = login(accountToken) + val token = login(accountNumber) val devices = getDeviceList(token) devices.forEach { removeDevice(token, it) } Log.v(LOG_TAG, "All devices removed") } - fun login(accountToken: String): String { - Log.v(LOG_TAG, "Attempt login with account token: $accountToken") - val json = JSONObject().apply { put("account_number", accountToken) } + fun login(accountNumber: String): String { + Log.v(LOG_TAG, "Attempt login with account token: $accountNumber") + val json = JSONObject().apply { put("account_number", accountNumber) } return sendSimpleSynchronousRequest(Request.Method.POST, AUTH_URL, json)!!.let { response -> response.getString("access_token").also { accessToken -> Log.v(LOG_TAG, "Successfully logged in and received access token: $accessToken") diff --git a/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/AccountExpiryMockApiTest.kt b/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/AccountExpiryMockApiTest.kt index b2699a2c73..c8b6bcd169 100644 --- a/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/AccountExpiryMockApiTest.kt +++ b/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/AccountExpiryMockApiTest.kt @@ -17,10 +17,10 @@ class AccountExpiryMockApiTest : MockApiTest() { @Test fun testAccountExpiryDateUpdated() { // Arrange - val validAccountToken = "1234123412341234" + val validAccountNumber = "1234123412341234" val oldAccountExpiry = currentUtcTimeWithOffsetZero().plusMonths(1) apiDispatcher.apply { - expectedAccountToken = validAccountToken + expectedAccountNumber = validAccountNumber accountExpiry = oldAccountExpiry devices = DEFAULT_DEVICE_LIST.toMutableMap() devicePendingToGetCreated = DUMMY_ID_2 to DUMMY_DEVICE_NAME_2 @@ -32,7 +32,7 @@ class AccountExpiryMockApiTest : MockApiTest() { device.clickAllowOnNotificationPermissionPromptIfApiLevel33AndAbove() device.dismissChangelogDialogIfShown() app.waitForLoginPrompt() - app.attemptLogin(validAccountToken) + app.attemptLogin(validAccountNumber) // Assert logged in app.ensureLoggedIn() @@ -51,10 +51,10 @@ class AccountExpiryMockApiTest : MockApiTest() { @Test fun testAccountTimeExpiredWhileUsingTheAppShouldShowOutOfTimeScreen() { // Arrange - val validAccountToken = "1234123412341234" + val validAccountNumber = "1234123412341234" val oldAccountExpiry = currentUtcTimeWithOffsetZero().plusMonths(1) apiDispatcher.apply { - expectedAccountToken = validAccountToken + expectedAccountNumber = validAccountNumber accountExpiry = oldAccountExpiry devices = DEFAULT_DEVICE_LIST.toMutableMap() devicePendingToGetCreated = DUMMY_ID_2 to DUMMY_DEVICE_NAME_2 @@ -66,7 +66,7 @@ class AccountExpiryMockApiTest : MockApiTest() { device.clickAllowOnNotificationPermissionPromptIfApiLevel33AndAbove() device.dismissChangelogDialogIfShown() app.waitForLoginPrompt() - app.attemptLogin(validAccountToken) + app.attemptLogin(validAccountNumber) // Assert logged in app.ensureLoggedIn() 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 index 56416341ef..ff0faed69a 100644 --- 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 @@ -18,9 +18,9 @@ class AccountHistoryMockApiTest : MockApiTest() { @Test fun testShowAccountHistory() { // Arrange - val validAccountToken = "1234123412341234" + val validAccountNumber = "1234123412341234" apiDispatcher.apply { - expectedAccountToken = validAccountToken + expectedAccountNumber = validAccountNumber accountExpiry = currentUtcTimeWithOffsetZero().plusMonths(1) devices = DEFAULT_DEVICE_LIST.toMutableMap() devicePendingToGetCreated = DUMMY_ID_2 to DUMMY_DEVICE_NAME_2 @@ -32,7 +32,7 @@ class AccountHistoryMockApiTest : MockApiTest() { device.clickAllowOnNotificationPermissionPromptIfApiLevel33AndAbove() device.dismissChangelogDialogIfShown() app.waitForLoginPrompt() - app.attemptLogin(validAccountToken) + app.attemptLogin(validAccountNumber) app.ensureLoggedIn() app.clickAccountCog() app.clickActionButtonByText("Log out") diff --git a/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/CreateAccountMockApiTest.kt b/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/CreateAccountMockApiTest.kt index 538a111096..ce7e84e02e 100644 --- a/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/CreateAccountMockApiTest.kt +++ b/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/CreateAccountMockApiTest.kt @@ -11,9 +11,9 @@ class CreateAccountMockApiTest : MockApiTest() { @Test fun testCreateAccountSuccessful() { // Arrange - val createdAccountToken = "1234123412341234" + val createdAccountNumber = "1234123412341234" apiDispatcher.apply { - expectedAccountToken = createdAccountToken + expectedAccountNumber = createdAccountNumber devicePendingToGetCreated = DUMMY_ID_2 to DUMMY_DEVICE_NAME_2 } app.launch(endpoint) diff --git a/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/Extensions.kt b/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/Extensions.kt index 4626468026..7eb096b499 100644 --- a/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/Extensions.kt +++ b/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/Extensions.kt @@ -11,7 +11,7 @@ fun MockResponse.addJsonHeader(): MockResponse { return addHeader("Content-Type", "application/json") } -fun Buffer.getAccountToken(): String? { +fun Buffer.getAccountNumber(): String? { return try { JSONObject(readUtf8()).getString("account_number") } catch (ex: JSONException) { 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 6b03a65020..1e55932a30 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 @@ -18,9 +18,9 @@ class LoginMockApiTest : MockApiTest() { @Test fun testLoginWithInvalidCredentials() { // Arrange - val validAccountToken = "1234123412341234" + val validAccountNumber = "1234123412341234" apiDispatcher.apply { - expectedAccountToken = null + expectedAccountNumber = null accountExpiry = currentUtcTimeWithOffsetZero().plusDays(1) } app.launch(endpoint) @@ -30,7 +30,7 @@ class LoginMockApiTest : MockApiTest() { device.clickAllowOnNotificationPermissionPromptIfApiLevel33AndAbove() device.dismissChangelogDialogIfShown() app.waitForLoginPrompt() - app.attemptLogin(validAccountToken) + app.attemptLogin(validAccountNumber) // Assert val result = @@ -44,9 +44,9 @@ class LoginMockApiTest : MockApiTest() { @Test fun testLoginWithValidCredentialsToUnexpiredAccount() { // Arrange - val validAccountToken = "1234123412341234" + val validAccountNumber = "1234123412341234" apiDispatcher.apply { - expectedAccountToken = validAccountToken + expectedAccountNumber = validAccountNumber accountExpiry = currentUtcTimeWithOffsetZero().plusDays(1) devices = DEFAULT_DEVICE_LIST.toMutableMap() devicePendingToGetCreated = DUMMY_ID_2 to DUMMY_DEVICE_NAME_2 @@ -58,7 +58,7 @@ class LoginMockApiTest : MockApiTest() { device.clickAllowOnNotificationPermissionPromptIfApiLevel33AndAbove() device.dismissChangelogDialogIfShown() app.waitForLoginPrompt() - app.attemptLogin(validAccountToken) + app.attemptLogin(validAccountNumber) // Assert app.ensureLoggedIn() @@ -67,9 +67,9 @@ class LoginMockApiTest : MockApiTest() { @Test fun testLoginWithValidCredentialsToExpiredAccount() { // Arrange - val validAccountToken = "1234123412341234" + val validAccountNumber = "1234123412341234" apiDispatcher.apply { - expectedAccountToken = validAccountToken + expectedAccountNumber = validAccountNumber accountExpiry = currentUtcTimeWithOffsetZero().minusDays(1) devices = DEFAULT_DEVICE_LIST.toMutableMap() devicePendingToGetCreated = DUMMY_ID_2 to DUMMY_DEVICE_NAME_2 @@ -81,7 +81,7 @@ class LoginMockApiTest : MockApiTest() { device.clickAllowOnNotificationPermissionPromptIfApiLevel33AndAbove() device.dismissChangelogDialogIfShown() app.waitForLoginPrompt() - app.attemptLogin(validAccountToken) + app.attemptLogin(validAccountNumber) // Assert app.ensureOutOfTime() 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 667515636a..e64bb1b3ad 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 @@ -17,9 +17,9 @@ class LogoutMockApiTest : MockApiTest() { @Test fun testLoginWithValidCredentialsToUnexpiredAccountAndLogout() { // Arrange - val validAccountToken = "1234123412341234" + val validAccountNumber = "1234123412341234" apiDispatcher.apply { - expectedAccountToken = validAccountToken + expectedAccountNumber = validAccountNumber accountExpiry = currentUtcTimeWithOffsetZero().plusMonths(1) devices = DEFAULT_DEVICE_LIST.toMutableMap() devicePendingToGetCreated = DUMMY_ID_2 to DUMMY_DEVICE_NAME_2 @@ -31,7 +31,7 @@ class LogoutMockApiTest : MockApiTest() { device.clickAllowOnNotificationPermissionPromptIfApiLevel33AndAbove() device.dismissChangelogDialogIfShown() app.waitForLoginPrompt() - app.attemptLogin(validAccountToken) + app.attemptLogin(validAccountNumber) app.ensureLoggedIn() app.clickAccountCog() app.clickActionButtonByText("Log out") diff --git a/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/MockApiDispatcher.kt b/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/MockApiDispatcher.kt index 39818d195c..abb4813a33 100644 --- a/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/MockApiDispatcher.kt +++ b/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/MockApiDispatcher.kt @@ -23,7 +23,7 @@ import org.json.JSONArray class MockApiDispatcher : Dispatcher() { - var expectedAccountToken: String? = null + var expectedAccountNumber: String? = null var accountExpiry: DateTime? = null var devices: MutableMap<String, String>? = null private val canAddDevices: Boolean @@ -75,9 +75,9 @@ class MockApiDispatcher : Dispatcher() { } private fun handleLoginRequest(requestBody: Buffer): MockResponse { - val accountToken = requestBody.getAccountToken() + val accountNumber = requestBody.getAccountNumber() - return if (accountToken != null && accountToken == expectedAccountToken) { + return if (accountNumber != null && accountNumber == expectedAccountNumber) { MockResponse() .setResponseCode(200) .addJsonHeader() @@ -91,7 +91,7 @@ class MockApiDispatcher : Dispatcher() { } else { Log.e( LOG_TAG, - "Unexpected account token (expected=$expectedAccountToken was=$accountToken)" + "Unexpected account number (expected=$expectedAccountNumber was=$accountNumber)" ) MockResponse().setResponseCode(400) } @@ -168,7 +168,7 @@ class MockApiDispatcher : Dispatcher() { } private fun handleAccountCreationRequest(): MockResponse { - return expectedAccountToken?.let { expectedAccountToken -> + return expectedAccountNumber?.let { expectedAccountNumber -> MockResponse() .setResponseCode(201) .addJsonHeader() @@ -176,7 +176,7 @@ class MockApiDispatcher : Dispatcher() { accountCreationJson( id = DUMMY_ID_1, expiry = DateTime(), - accountToken = expectedAccountToken + accountNumber = expectedAccountNumber ) .toString() ) 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 83354dd347..c652bd403a 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 @@ -24,9 +24,9 @@ class TooManyDevicesMockApiTest : MockApiTest() { @Test fun testRemoveDeviceSuccessfulAndLogin() { // Arrange - val validAccountToken = "1234123412341234" + val validAccountNumber = "1234123412341234" apiDispatcher.apply { - expectedAccountToken = validAccountToken + expectedAccountNumber = validAccountNumber accountExpiry = currentUtcTimeWithOffsetZero().plusMonths(1) devices = mutableMapOf( @@ -45,7 +45,7 @@ class TooManyDevicesMockApiTest : MockApiTest() { device.clickAllowOnNotificationPermissionPromptIfApiLevel33AndAbove() device.dismissChangelogDialogIfShown() app.waitForLoginPrompt() - app.attemptLogin(validAccountToken) + app.attemptLogin(validAccountNumber) // Assert that we have too many devices device.findObjectWithTimeout(By.text("Too many devices")) diff --git a/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/util/JsonUtils.kt b/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/util/JsonUtils.kt index a258d5daf8..2de385c7f8 100644 --- a/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/util/JsonUtils.kt +++ b/android/test/mockapi/src/main/kotlin/net/mullvad/mullvadvpn/test/mockapi/util/JsonUtils.kt @@ -11,8 +11,8 @@ fun accountInfoJson(id: String, expiry: DateTime) = put("can_add_devices", true) } -fun accountCreationJson(id: String, accountToken: String, expiry: DateTime) = - accountInfoJson(id, expiry).apply { put("number", accountToken) } +fun accountCreationJson(id: String, accountNumber: String, expiry: DateTime) = + accountInfoJson(id, expiry).apply { put("number", accountNumber) } fun deviceJson(id: String, name: String, publicKey: String, creationDate: DateTime) = JSONObject().apply { |
