diff options
Diffstat (limited to 'android/app/src/androidTest')
| -rw-r--r-- | android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/AdvancedSettingsScreenTest.kt | 60 |
1 files changed, 36 insertions, 24 deletions
diff --git a/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/AdvancedSettingsScreenTest.kt b/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/AdvancedSettingsScreenTest.kt index 340b903886..970e877b80 100644 --- a/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/AdvancedSettingsScreenTest.kt +++ b/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/AdvancedSettingsScreenTest.kt @@ -3,10 +3,13 @@ package net.mullvad.mullvadvpn.compose.screen import androidx.compose.material.ExperimentalMaterialApi import androidx.compose.ui.test.assertIsEnabled import androidx.compose.ui.test.assertIsNotEnabled +import androidx.compose.ui.test.hasTestTag import androidx.compose.ui.test.junit4.createComposeRule import androidx.compose.ui.test.onNodeWithContentDescription +import androidx.compose.ui.test.onNodeWithTag import androidx.compose.ui.test.onNodeWithText import androidx.compose.ui.test.performClick +import androidx.compose.ui.test.performScrollToNode import androidx.compose.ui.test.performTextInput import io.mockk.MockKAnnotations import io.mockk.mockk @@ -15,6 +18,8 @@ import io.mockk.verifyAll import kotlinx.coroutines.flow.MutableSharedFlow import kotlinx.coroutines.flow.asSharedFlow import net.mullvad.mullvadvpn.compose.state.AdvancedSettingsUiState +import net.mullvad.mullvadvpn.compose.test.LAZY_LIST_LAST_ITEM_TEST_TAG +import net.mullvad.mullvadvpn.compose.test.LAZY_LIST_TEST_TAG import net.mullvad.mullvadvpn.viewmodel.CustomDnsItem import net.mullvad.mullvadvpn.viewmodel.StagedDns import org.junit.Before @@ -249,13 +254,15 @@ class AdvancedSettingsScreenTest { listOf( CustomDnsItem(address = DUMMY_DNS_ADDRESS, false), CustomDnsItem(address = DUMMY_DNS_ADDRESS_2, false), - CustomDnsItem(address = DUMMY_DNS_ADDRESS_3, false), - ), + CustomDnsItem(address = DUMMY_DNS_ADDRESS_3, false) + ) ), toastMessagesSharedFlow = MutableSharedFlow<String>().asSharedFlow() ) } - + composeTestRule + .onNodeWithTag(LAZY_LIST_TEST_TAG) + .performScrollToNode(hasTestTag(LAZY_LIST_LAST_ITEM_TEST_TAG)) // Assert composeTestRule.apply { onNodeWithText(DUMMY_DNS_ADDRESS).assertExists() @@ -274,12 +281,14 @@ class AdvancedSettingsScreenTest { uiState = AdvancedSettingsUiState.DefaultUiState( isCustomDnsEnabled = false, - customDnsItems = listOf(CustomDnsItem(address = DUMMY_DNS_ADDRESS, false)), + customDnsItems = listOf(CustomDnsItem(address = DUMMY_DNS_ADDRESS, false)) ), toastMessagesSharedFlow = MutableSharedFlow<String>().asSharedFlow() ) } - + composeTestRule + .onNodeWithTag(LAZY_LIST_TEST_TAG) + .performScrollToNode(hasTestTag(LAZY_LIST_LAST_ITEM_TEST_TAG)) // Assert composeTestRule.onNodeWithText(DUMMY_DNS_ADDRESS).assertDoesNotExist() composeTestRule.onNodeWithText("Add a server").assertDoesNotExist() @@ -296,7 +305,7 @@ class AdvancedSettingsScreenTest { isCustomDnsEnabled = true, isAllowLanEnabled = true, customDnsItems = - listOf(CustomDnsItem(address = DUMMY_DNS_ADDRESS, isLocal = true)), + listOf(CustomDnsItem(address = DUMMY_DNS_ADDRESS, isLocal = true)) ), toastMessagesSharedFlow = MutableSharedFlow<String>().asSharedFlow() ) @@ -317,7 +326,7 @@ class AdvancedSettingsScreenTest { isCustomDnsEnabled = true, isAllowLanEnabled = false, customDnsItems = - listOf(CustomDnsItem(address = DUMMY_DNS_ADDRESS, isLocal = false)), + listOf(CustomDnsItem(address = DUMMY_DNS_ADDRESS, isLocal = false)) ), toastMessagesSharedFlow = MutableSharedFlow<String>().asSharedFlow() ) @@ -338,7 +347,7 @@ class AdvancedSettingsScreenTest { isCustomDnsEnabled = true, isAllowLanEnabled = true, customDnsItems = - listOf(CustomDnsItem(address = DUMMY_DNS_ADDRESS, isLocal = false)), + listOf(CustomDnsItem(address = DUMMY_DNS_ADDRESS, isLocal = false)) ), toastMessagesSharedFlow = MutableSharedFlow<String>().asSharedFlow() ) @@ -359,7 +368,7 @@ class AdvancedSettingsScreenTest { isCustomDnsEnabled = true, isAllowLanEnabled = false, customDnsItems = - listOf(CustomDnsItem(address = DUMMY_DNS_ADDRESS, isLocal = true)), + listOf(CustomDnsItem(address = DUMMY_DNS_ADDRESS, isLocal = true)) ), toastMessagesSharedFlow = MutableSharedFlow<String>().asSharedFlow() ) @@ -383,6 +392,9 @@ class AdvancedSettingsScreenTest { toastMessagesSharedFlow = MutableSharedFlow<String>().asSharedFlow() ) } + composeTestRule + .onNodeWithTag(LAZY_LIST_TEST_TAG) + .performScrollToNode(hasTestTag(LAZY_LIST_LAST_ITEM_TEST_TAG)) // Act composeTestRule.onNodeWithText("Add a server").performClick() @@ -401,7 +413,7 @@ class AdvancedSettingsScreenTest { AdvancedSettingsUiState.DnsDialogUiState( stagedDns = StagedDns.NewDns( - item = CustomDnsItem(DUMMY_DNS_ADDRESS, isLocal = false), + item = CustomDnsItem(DUMMY_DNS_ADDRESS, isLocal = false) ), ), toastMessagesSharedFlow = MutableSharedFlow<String>().asSharedFlow() @@ -423,8 +435,8 @@ class AdvancedSettingsScreenTest { stagedDns = StagedDns.EditDns( item = CustomDnsItem(DUMMY_DNS_ADDRESS, isLocal = false), - index = 0, - ), + index = 0 + ) ), toastMessagesSharedFlow = MutableSharedFlow<String>().asSharedFlow() ) @@ -445,9 +457,9 @@ class AdvancedSettingsScreenTest { stagedDns = StagedDns.NewDns( item = CustomDnsItem(DUMMY_DNS_ADDRESS, isLocal = true), - validationResult = StagedDns.ValidationResult.Success, + validationResult = StagedDns.ValidationResult.Success ), - isAllowLanEnabled = false, + isAllowLanEnabled = false ), toastMessagesSharedFlow = MutableSharedFlow<String>().asSharedFlow() ) @@ -468,9 +480,9 @@ class AdvancedSettingsScreenTest { stagedDns = StagedDns.NewDns( item = CustomDnsItem(DUMMY_DNS_ADDRESS, isLocal = true), - validationResult = StagedDns.ValidationResult.Success, + validationResult = StagedDns.ValidationResult.Success ), - isAllowLanEnabled = true, + isAllowLanEnabled = true ), toastMessagesSharedFlow = MutableSharedFlow<String>().asSharedFlow() ) @@ -491,9 +503,9 @@ class AdvancedSettingsScreenTest { stagedDns = StagedDns.NewDns( item = CustomDnsItem(DUMMY_DNS_ADDRESS, isLocal = false), - validationResult = StagedDns.ValidationResult.Success, + validationResult = StagedDns.ValidationResult.Success ), - isAllowLanEnabled = true, + isAllowLanEnabled = true ), toastMessagesSharedFlow = MutableSharedFlow<String>().asSharedFlow() ) @@ -514,9 +526,9 @@ class AdvancedSettingsScreenTest { stagedDns = StagedDns.NewDns( item = CustomDnsItem(DUMMY_DNS_ADDRESS, isLocal = false), - validationResult = StagedDns.ValidationResult.Success, + validationResult = StagedDns.ValidationResult.Success ), - isAllowLanEnabled = false, + isAllowLanEnabled = false ), toastMessagesSharedFlow = MutableSharedFlow<String>().asSharedFlow() ) @@ -537,8 +549,8 @@ class AdvancedSettingsScreenTest { stagedDns = StagedDns.NewDns( item = CustomDnsItem(DUMMY_DNS_ADDRESS, isLocal = false), - validationResult = StagedDns.ValidationResult.InvalidAddress, - ), + validationResult = StagedDns.ValidationResult.InvalidAddress + ) ), toastMessagesSharedFlow = MutableSharedFlow<String>().asSharedFlow() ) @@ -559,8 +571,8 @@ class AdvancedSettingsScreenTest { stagedDns = StagedDns.NewDns( item = CustomDnsItem(DUMMY_DNS_ADDRESS, isLocal = false), - validationResult = StagedDns.ValidationResult.DuplicateAddress, - ), + validationResult = StagedDns.ValidationResult.DuplicateAddress + ) ), toastMessagesSharedFlow = MutableSharedFlow<String>().asSharedFlow() ) |
