diff --git a/tests/spa_unit/src/com/android/settings/spa/app/appinfo/AppAllServicesPreferenceTest.kt b/tests/spa_unit/src/com/android/settings/spa/app/appinfo/AppAllServicesPreferenceTest.kt index 9846e3f7ff1..bd73d8bcce7 100644 --- a/tests/spa_unit/src/com/android/settings/spa/app/appinfo/AppAllServicesPreferenceTest.kt +++ b/tests/spa_unit/src/com/android/settings/spa/app/appinfo/AppAllServicesPreferenceTest.kt @@ -30,6 +30,7 @@ import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.test.assertIsDisplayed import androidx.compose.ui.test.assertIsEnabled import androidx.compose.ui.test.assertIsNotDisplayed +import androidx.compose.ui.test.hasText import androidx.compose.ui.test.junit4.createComposeRule import androidx.compose.ui.test.onNodeWithText import androidx.compose.ui.test.onRoot @@ -38,6 +39,8 @@ import androidx.core.os.bundleOf import androidx.test.core.app.ApplicationProvider import androidx.test.ext.junit.runners.AndroidJUnit4 import com.android.settings.R +import com.android.settingslib.spa.testutils.delay +import com.android.settingslib.spa.testutils.waitUntilExists import com.android.settingslib.spaprivileged.model.app.userHandle import com.android.settingslib.spaprivileged.model.app.userId import com.google.common.truth.Truth.assertThat @@ -140,7 +143,7 @@ class AppAllServicesPreferenceTest { setContent() - composeTestRule.onNodeWithText(SUMMARY).assertIsDisplayed() + composeTestRule.waitUntilExists(hasText(SUMMARY)) } @Test @@ -149,6 +152,7 @@ class AppAllServicesPreferenceTest { setContent() composeTestRule.onRoot().performClick() + composeTestRule.delay() val intentCaptor = ArgumentCaptor.forClass(Intent::class.java) verify(context).startActivityAsUser(intentCaptor.capture(), eq(APP.userHandle)) diff --git a/tests/spa_unit/src/com/android/settings/spa/app/appinfo/AppLocalePreferenceTest.kt b/tests/spa_unit/src/com/android/settings/spa/app/appinfo/AppLocalePreferenceTest.kt index 60c4f79ad9e..39524df7c16 100644 --- a/tests/spa_unit/src/com/android/settings/spa/app/appinfo/AppLocalePreferenceTest.kt +++ b/tests/spa_unit/src/com/android/settings/spa/app/appinfo/AppLocalePreferenceTest.kt @@ -24,6 +24,7 @@ import androidx.compose.runtime.CompositionLocalProvider import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.test.assertIsDisplayed import androidx.compose.ui.test.assertIsNotDisplayed +import androidx.compose.ui.test.hasText import androidx.compose.ui.test.junit4.createComposeRule import androidx.compose.ui.test.onNodeWithText import androidx.compose.ui.test.onRoot @@ -36,6 +37,8 @@ import com.android.settings.applications.AppInfoBase import com.android.settings.applications.AppLocaleUtil import com.android.settings.applications.appinfo.AppLocaleDetails import com.android.settings.localepicker.AppLocalePickerActivity +import com.android.settingslib.spa.testutils.delay +import com.android.settingslib.spa.testutils.waitUntilExists import com.android.settingslib.spaprivileged.model.app.userHandle import com.google.common.truth.Truth.assertThat import org.junit.After @@ -103,15 +106,16 @@ class AppLocalePreferenceTest { composeTestRule.onNodeWithText(context.getString(R.string.app_locale_preference_title)) .assertIsDisplayed() - composeTestRule.onNodeWithText(SUMMARY).assertIsDisplayed() + composeTestRule.waitUntilExists(hasText(SUMMARY)) } @Test - fun whenCanDisplayLocalUi_click_startsActivity() { + fun whenCanDisplayLocalUi_click_startActivity() { doNothing().`when`(context).startActivityAsUser(any(), any()) setContent() composeTestRule.onRoot().performClick() + composeTestRule.delay() val intentCaptor = ArgumentCaptor.forClass(Intent::class.java) verify(context).startActivityAsUser(intentCaptor.capture(), eq(APP.userHandle)) diff --git a/tests/spa_unit/src/com/android/settings/spa/app/appinfo/AppSettingsPreferenceTest.kt b/tests/spa_unit/src/com/android/settings/spa/app/appinfo/AppSettingsPreferenceTest.kt index a1fb367d1df..35811e251c2 100644 --- a/tests/spa_unit/src/com/android/settings/spa/app/appinfo/AppSettingsPreferenceTest.kt +++ b/tests/spa_unit/src/com/android/settings/spa/app/appinfo/AppSettingsPreferenceTest.kt @@ -36,6 +36,7 @@ import androidx.compose.ui.test.performClick import androidx.test.core.app.ApplicationProvider import androidx.test.ext.junit.runners.AndroidJUnit4 import com.android.settings.R +import com.android.settingslib.spa.testutils.delay import com.android.settingslib.spaprivileged.model.app.userHandle import com.android.settingslib.spaprivileged.model.app.userId import com.google.common.truth.Truth.assertThat @@ -129,6 +130,7 @@ class AppSettingsPreferenceTest { setContent() composeTestRule.onRoot().performClick() + composeTestRule.delay() val intentCaptor = ArgumentCaptor.forClass(Intent::class.java) verify(context).startActivityAsUser(intentCaptor.capture(), eq(APP.userHandle)) diff --git a/tests/spa_unit/src/com/android/settings/spa/app/appinfo/InteractAcrossProfilesDetailsPreferenceTest.kt b/tests/spa_unit/src/com/android/settings/spa/app/appinfo/InteractAcrossProfilesDetailsPreferenceTest.kt index aeccb078840..f4489c6f5e7 100644 --- a/tests/spa_unit/src/com/android/settings/spa/app/appinfo/InteractAcrossProfilesDetailsPreferenceTest.kt +++ b/tests/spa_unit/src/com/android/settings/spa/app/appinfo/InteractAcrossProfilesDetailsPreferenceTest.kt @@ -24,6 +24,7 @@ import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.test.assertIsDisplayed import androidx.compose.ui.test.assertIsEnabled import androidx.compose.ui.test.assertIsNotDisplayed +import androidx.compose.ui.test.hasText import androidx.compose.ui.test.junit4.createComposeRule import androidx.compose.ui.test.onNodeWithText import androidx.compose.ui.test.onRoot @@ -34,6 +35,8 @@ import com.android.dx.mockito.inline.extended.ExtendedMockito import com.android.settings.R import com.android.settings.applications.appinfo.AppInfoDashboardFragment import com.android.settings.applications.specialaccess.interactacrossprofiles.InteractAcrossProfilesDetails +import com.android.settingslib.spa.testutils.delay +import com.android.settingslib.spa.testutils.waitUntilExists import com.android.settingslib.spaprivileged.framework.common.crossProfileApps import org.junit.After import org.junit.Before @@ -110,7 +113,7 @@ class InteractAcrossProfilesDetailsPreferenceTest { setContent() - composeTestRule.onNodeWithText(SUMMARY).assertIsDisplayed() + composeTestRule.waitUntilExists(hasText(SUMMARY)) } @Test @@ -119,6 +122,7 @@ class InteractAcrossProfilesDetailsPreferenceTest { setContent() composeTestRule.onRoot().performClick() + composeTestRule.delay() ExtendedMockito.verify { AppInfoDashboardFragment.startAppInfoFragment(