Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a43b2b5d authored by Chaohui Wang's avatar Chaohui Wang
Browse files

Reduce flaky of AppStoragePreferenceTest

Summary is async so wait for it.

Bug: 236346018
Test: Unit test
Change-Id: I80a3409008c2c42eda10e9e9711d9da15d533ba9
parent d85cb3e0
Loading
Loading
Loading
Loading
+14 −16
Original line number Diff line number Diff line
@@ -24,12 +24,14 @@ 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
import androidx.test.core.app.ApplicationProvider
import androidx.test.ext.junit.runners.AndroidJUnit4
import com.android.settings.R
import com.android.settingslib.spa.testutils.waitUntilExists
import com.android.settingslib.spaprivileged.framework.common.storageStatsManager
import java.util.UUID
import org.junit.Before
@@ -71,11 +73,7 @@ class AppStoragePreferenceTest {
    fun notInstalledApp_notDisplayed() {
        val notInstalledApp = ApplicationInfo()

        composeTestRule.setContent {
            CompositionLocalProvider(LocalContext provides context) {
                AppStoragePreference(notInstalledApp)
            }
        }
        setContent(notInstalledApp)

        composeTestRule.onRoot().assertIsNotDisplayed()
    }
@@ -88,15 +86,11 @@ class AppStoragePreferenceTest {
            storageUuid = STORAGE_UUID
        }

        composeTestRule.setContent {
            CompositionLocalProvider(LocalContext provides context) {
                AppStoragePreference(internalApp)
            }
        }
        setContent(internalApp)

        composeTestRule.onNodeWithText(context.getString(R.string.storage_settings_for_app))
            .assertIsDisplayed()
        composeTestRule.onNodeWithText("123 B used in internal storage").assertIsDisplayed()
        composeTestRule.waitUntilExists(hasText("123 B used in internal storage"))
    }

    @Test
@@ -107,15 +101,19 @@ class AppStoragePreferenceTest {
            storageUuid = STORAGE_UUID
        }

        setContent(externalApp)

        composeTestRule.onNodeWithText(context.getString(R.string.storage_settings_for_app))
            .assertIsDisplayed()
        composeTestRule.waitUntilExists(hasText("123 B used in external storage"))
    }

    private fun setContent(app: ApplicationInfo) {
        composeTestRule.setContent {
            CompositionLocalProvider(LocalContext provides context) {
                AppStoragePreference(externalApp)
                AppStoragePreference(app)
            }
        }

        composeTestRule.onNodeWithText(context.getString(R.string.storage_settings_for_app))
            .assertIsDisplayed()
        composeTestRule.onNodeWithText("123 B used in external storage").assertIsDisplayed()
    }

    companion object {