[Spa] Fix "State<T> as a parameter" of Preference
Bug: 292036686 Test: manual - with Settings Test: unit tests Change-Id: I8a9faaefe4780667a2747a4ef1573361d3258705
This commit is contained in:
@@ -21,7 +21,6 @@ import android.content.pm.ApplicationInfo
|
||||
import android.content.pm.PackageManager
|
||||
import android.graphics.drawable.Drawable
|
||||
import androidx.compose.runtime.SideEffect
|
||||
import androidx.compose.runtime.State
|
||||
import androidx.compose.ui.test.assertIsDisplayed
|
||||
import androidx.compose.ui.test.junit4.createComposeRule
|
||||
import androidx.compose.ui.test.onNodeWithText
|
||||
@@ -146,12 +145,12 @@ class AllAppListTest {
|
||||
fun allAppListModel_getSummary() {
|
||||
val listModel = AllAppListModel(context) { stateOf(SUMMARY) }
|
||||
|
||||
lateinit var summaryState: State<String>
|
||||
lateinit var summary: () -> String
|
||||
composeTestRule.setContent {
|
||||
summaryState = listModel.getSummary(option = 0, record = AppRecordWithSize(app = APP))
|
||||
summary = listModel.getSummary(option = 0, record = AppRecordWithSize(app = APP))
|
||||
}
|
||||
|
||||
assertThat(summaryState.value).isEqualTo(SUMMARY)
|
||||
assertThat(summary()).isEqualTo(SUMMARY)
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -163,13 +162,13 @@ class AllAppListTest {
|
||||
enabled = false
|
||||
}
|
||||
|
||||
lateinit var summaryState: State<String>
|
||||
lateinit var summary: () -> String
|
||||
composeTestRule.setContent {
|
||||
summaryState =
|
||||
summary =
|
||||
listModel.getSummary(option = 0, record = AppRecordWithSize(app = disabledApp))
|
||||
}
|
||||
|
||||
assertThat(summaryState.value).isEqualTo("$SUMMARY${System.lineSeparator()}Disabled")
|
||||
assertThat(summary()).isEqualTo("$SUMMARY${System.lineSeparator()}Disabled")
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -179,13 +178,13 @@ class AllAppListTest {
|
||||
packageName = PACKAGE_NAME
|
||||
}
|
||||
|
||||
lateinit var summaryState: State<String>
|
||||
lateinit var summary: () -> String
|
||||
composeTestRule.setContent {
|
||||
summaryState =
|
||||
summary =
|
||||
listModel.getSummary(option = 0, record = AppRecordWithSize(app = notInstalledApp))
|
||||
}
|
||||
|
||||
assertThat(summaryState.value)
|
||||
assertThat(summary())
|
||||
.isEqualTo("$SUMMARY${System.lineSeparator()}Not installed for this user")
|
||||
}
|
||||
|
||||
@@ -207,7 +206,7 @@ class AllAppListTest {
|
||||
AppListItemModel(
|
||||
record = AppRecordWithSize(app = app),
|
||||
label = LABEL,
|
||||
summary = stateOf(SUMMARY),
|
||||
summary = { SUMMARY },
|
||||
).AppItem()
|
||||
}
|
||||
}
|
||||
@@ -224,13 +223,13 @@ class AllAppListTest {
|
||||
isArchived = true
|
||||
}
|
||||
|
||||
lateinit var summaryState: State<String>
|
||||
lateinit var summary: () -> String
|
||||
composeTestRule.setContent {
|
||||
summaryState =
|
||||
summary =
|
||||
listModel.getSummary(option = 0, record = AppRecordWithSize(app = archivedApp))
|
||||
}
|
||||
|
||||
assertThat(summaryState.value).isEqualTo(SUMMARY)
|
||||
assertThat(summary()).isEqualTo(SUMMARY)
|
||||
}
|
||||
|
||||
private fun getAppListInput(): AppListInput<AppRecordWithSize> {
|
||||
@@ -252,7 +251,7 @@ class AllAppListTest {
|
||||
AppListItemModel(
|
||||
record = AppRecordWithSize(app = APP),
|
||||
label = LABEL,
|
||||
summary = stateOf(SUMMARY),
|
||||
summary = { SUMMARY },
|
||||
).AppItem()
|
||||
}
|
||||
}
|
||||
|
@@ -21,7 +21,6 @@ import android.content.pm.ApplicationInfo
|
||||
import android.content.pm.PackageManager.USER_MIN_ASPECT_RATIO_SPLIT_SCREEN
|
||||
import android.content.pm.PackageManager.USER_MIN_ASPECT_RATIO_UNSET
|
||||
import android.os.Build
|
||||
import androidx.compose.runtime.State
|
||||
import androidx.compose.ui.test.assertIsDisplayed
|
||||
import androidx.compose.ui.test.junit4.createComposeRule
|
||||
import androidx.compose.ui.test.onNodeWithText
|
||||
@@ -29,7 +28,6 @@ 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.framework.compose.stateOf
|
||||
import com.android.settingslib.spa.testutils.FakeNavControllerWrapper
|
||||
import com.android.settingslib.spa.testutils.firstWithTimeoutOrNull
|
||||
import com.android.settingslib.spaprivileged.template.app.AppListItemModel
|
||||
@@ -132,7 +130,7 @@ class UserAspectRatioAppsPageProviderTest {
|
||||
AppListItemModel(
|
||||
record = APP_RECORD_SUGGESTED,
|
||||
label = LABEL,
|
||||
summary = stateOf(SUMMARY)
|
||||
summary = { SUMMARY }
|
||||
).AppItem()
|
||||
}
|
||||
}
|
||||
@@ -141,23 +139,23 @@ class UserAspectRatioAppsPageProviderTest {
|
||||
|
||||
@Test
|
||||
fun aspectRatioAppListModel_getSummaryDefault() {
|
||||
val summaryState = setSummaryState(USER_MIN_ASPECT_RATIO_UNSET)
|
||||
assertThat(summaryState.value)
|
||||
.isEqualTo(context.getString(R.string.user_aspect_ratio_app_default))
|
||||
val summary = getSummary(USER_MIN_ASPECT_RATIO_UNSET)
|
||||
|
||||
assertThat(summary).isEqualTo(context.getString(R.string.user_aspect_ratio_app_default))
|
||||
}
|
||||
|
||||
@Test
|
||||
fun aspectRatioAppListModel_getSummaryWhenSplitScreen() {
|
||||
val summaryState = setSummaryState(USER_MIN_ASPECT_RATIO_SPLIT_SCREEN)
|
||||
assertThat(summaryState.value)
|
||||
.isEqualTo(context.getString(R.string.user_aspect_ratio_half_screen))
|
||||
val summary = getSummary(USER_MIN_ASPECT_RATIO_SPLIT_SCREEN)
|
||||
|
||||
assertThat(summary).isEqualTo(context.getString(R.string.user_aspect_ratio_half_screen))
|
||||
}
|
||||
|
||||
private fun setSummaryState(userOverride: Int): State<String> {
|
||||
private fun getSummary(userOverride: Int): String {
|
||||
val listModel = UserAspectRatioAppListModel(context)
|
||||
lateinit var summaryState: State<String>
|
||||
lateinit var summary: () -> String
|
||||
composeTestRule.setContent {
|
||||
summaryState = listModel.getSummary(option = 0,
|
||||
summary = listModel.getSummary(option = 0,
|
||||
record = UserAspectRatioAppListItemModel(
|
||||
app = APP,
|
||||
userOverride = userOverride,
|
||||
@@ -165,7 +163,7 @@ class UserAspectRatioAppsPageProviderTest {
|
||||
canDisplay = true,
|
||||
))
|
||||
}
|
||||
return summaryState
|
||||
return summary()
|
||||
}
|
||||
|
||||
|
||||
|
@@ -29,7 +29,6 @@ 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.framework.compose.stateOf
|
||||
import com.android.settingslib.spa.testutils.FakeNavControllerWrapper
|
||||
import com.android.settingslib.spaprivileged.template.app.AppListItemModel
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
@@ -244,7 +243,7 @@ class BackgroundInstalledAppsPageProviderTest {
|
||||
app = APP,
|
||||
dateOfInstall = TEST_FIRST_INSTALL_TIME),
|
||||
label = TEST_LABEL,
|
||||
summary = stateOf(TEST_SUMMARY),
|
||||
summary = { TEST_SUMMARY },
|
||||
).AppItem()
|
||||
}
|
||||
}
|
||||
|
@@ -20,7 +20,6 @@ import android.content.Context
|
||||
import android.content.pm.ApplicationInfo
|
||||
import android.content.pm.PackageManager
|
||||
import android.content.pm.PackageManager.PackageInfoFlags
|
||||
import androidx.compose.runtime.State
|
||||
import androidx.compose.ui.test.junit4.createComposeRule
|
||||
import androidx.test.core.app.ApplicationProvider
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4
|
||||
@@ -79,20 +78,20 @@ class PlatformCompatAppListModelTest {
|
||||
|
||||
@Test
|
||||
fun getSummary() = runTest {
|
||||
val summaryState = getSummaryState(APP)
|
||||
val summary = getSummary(APP)
|
||||
|
||||
assertThat(summaryState.value).isEqualTo(PACKAGE_NAME)
|
||||
assertThat(summary).isEqualTo(PACKAGE_NAME)
|
||||
}
|
||||
|
||||
private fun getSummaryState(app: ApplicationInfo): State<String> {
|
||||
lateinit var summary: State<String>
|
||||
private fun getSummary(app: ApplicationInfo): String {
|
||||
lateinit var summary: () -> String
|
||||
composeTestRule.setContent {
|
||||
summary = listModel.getSummary(
|
||||
option = 0,
|
||||
record = PlatformCompatAppRecord(app),
|
||||
)
|
||||
}
|
||||
return summary
|
||||
return summary()
|
||||
}
|
||||
|
||||
private companion object {
|
||||
|
Reference in New Issue
Block a user