diff options
11 files changed, 51 insertions, 31 deletions
diff --git a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/util/EntryHighlight.kt b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/util/EntryHighlight.kt index e26bdf76e9d6..90c44b549df9 100644 --- a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/util/EntryHighlight.kt +++ b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/util/EntryHighlight.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.android.settingslib.spa.widget.util +package com.android.settingslib.spa.framework.util import androidx.compose.animation.animateColorAsState import androidx.compose.animation.core.RepeatMode diff --git a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/MainSwitchPreference.kt b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/MainSwitchPreference.kt index db95e23bb52b..3e04b16f08cf 100644 --- a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/MainSwitchPreference.kt +++ b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/MainSwitchPreference.kt @@ -28,7 +28,7 @@ import com.android.settingslib.spa.framework.compose.toState import com.android.settingslib.spa.framework.theme.SettingsDimension import com.android.settingslib.spa.framework.theme.SettingsShape import com.android.settingslib.spa.framework.theme.SettingsTheme -import com.android.settingslib.spa.widget.util.EntryHighlight +import com.android.settingslib.spa.framework.util.EntryHighlight @Composable fun MainSwitchPreference(model: SwitchPreferenceModel) { diff --git a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/Preference.kt b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/Preference.kt index 895edf77b3cc..77c564b6ec15 100644 --- a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/Preference.kt +++ b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/Preference.kt @@ -27,9 +27,9 @@ import com.android.settingslib.spa.framework.common.EntrySearchData import com.android.settingslib.spa.framework.common.EntryStatusData import com.android.settingslib.spa.framework.compose.navigator import com.android.settingslib.spa.framework.compose.stateOf +import com.android.settingslib.spa.framework.util.EntryHighlight import com.android.settingslib.spa.framework.util.wrapOnClickWithLog import com.android.settingslib.spa.widget.ui.createSettingsIcon -import com.android.settingslib.spa.widget.util.EntryHighlight data class SimplePreferenceMacro( val title: String, diff --git a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/SliderPreference.kt b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/SliderPreference.kt index 4ee2af0fa1b7..7bca38fdb48f 100644 --- a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/SliderPreference.kt +++ b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/SliderPreference.kt @@ -31,8 +31,8 @@ import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.vector.ImageVector import androidx.compose.ui.tooling.preview.Preview import com.android.settingslib.spa.framework.theme.SettingsTheme +import com.android.settingslib.spa.framework.util.EntryHighlight import com.android.settingslib.spa.widget.ui.SettingsSlider -import com.android.settingslib.spa.widget.util.EntryHighlight /** * The widget model for [SliderPreference] widget. diff --git a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/SwitchPreference.kt b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/SwitchPreference.kt index 2d606193872d..2d8a71192563 100644 --- a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/SwitchPreference.kt +++ b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/SwitchPreference.kt @@ -31,9 +31,9 @@ import com.android.settingslib.spa.framework.compose.stateOf import com.android.settingslib.spa.framework.compose.toState import com.android.settingslib.spa.framework.theme.SettingsDimension import com.android.settingslib.spa.framework.theme.SettingsTheme +import com.android.settingslib.spa.framework.util.EntryHighlight import com.android.settingslib.spa.framework.util.wrapOnSwitchWithLog import com.android.settingslib.spa.widget.ui.SettingsSwitch -import com.android.settingslib.spa.widget.util.EntryHighlight /** * The widget model for [SwitchPreference] widget. diff --git a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/TwoTargetSwitchPreference.kt b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/TwoTargetSwitchPreference.kt index fbfcaaa28047..63de2c821154 100644 --- a/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/TwoTargetSwitchPreference.kt +++ b/packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/widget/preference/TwoTargetSwitchPreference.kt @@ -17,7 +17,7 @@ package com.android.settingslib.spa.widget.preference import androidx.compose.runtime.Composable -import com.android.settingslib.spa.widget.util.EntryHighlight +import com.android.settingslib.spa.framework.util.EntryHighlight import com.android.settingslib.spa.widget.ui.SettingsSwitch @Composable diff --git a/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/framework/common/SettingsEntryRepositoryTest.kt b/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/framework/common/SettingsEntryRepositoryTest.kt index 9419161fe48d..f8339b6dd99b 100644 --- a/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/framework/common/SettingsEntryRepositoryTest.kt +++ b/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/framework/common/SettingsEntryRepositoryTest.kt @@ -19,6 +19,10 @@ package com.android.settingslib.spa.framework.common import android.content.Context import androidx.test.core.app.ApplicationProvider import androidx.test.ext.junit.runners.AndroidJUnit4 +import com.android.settingslib.spa.tests.testutils.SpaEnvironmentForTest +import com.android.settingslib.spa.tests.testutils.SppHome +import com.android.settingslib.spa.tests.testutils.SppLayer1 +import com.android.settingslib.spa.tests.testutils.SppLayer2 import com.google.common.truth.Truth.assertThat import org.junit.Test import org.junit.runner.RunWith diff --git a/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/framework/common/SettingsPageTest.kt b/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/framework/common/SettingsPageTest.kt index 7097a5da4268..743b5e3df2f6 100644 --- a/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/framework/common/SettingsPageTest.kt +++ b/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/framework/common/SettingsPageTest.kt @@ -22,6 +22,9 @@ import androidx.navigation.NavType import androidx.navigation.navArgument import androidx.test.core.app.ApplicationProvider import androidx.test.ext.junit.runners.AndroidJUnit4 +import com.android.settingslib.spa.tests.testutils.BlankActivity +import com.android.settingslib.spa.tests.testutils.SpaEnvironmentForTest +import com.android.settingslib.spa.tests.testutils.SpaLoggerForTest import com.google.common.truth.Truth.assertThat import org.junit.Test import org.junit.runner.RunWith @@ -42,9 +45,9 @@ class SettingsPageTest { assertThat(page.isCreateBy("NULL")).isTrue() assertThat(page.isCreateBy("Spp")).isFalse() assertThat(page.hasRuntimeParam()).isFalse() - assertThat(page.isBrowsable(context, MockActivity::class.java)).isFalse() - assertThat(page.createBrowseIntent(context, MockActivity::class.java)).isNull() - assertThat(page.createBrowseAdbCommand(context, MockActivity::class.java)).isNull() + assertThat(page.isBrowsable(context, BlankActivity::class.java)).isFalse() + assertThat(page.createBrowseIntent(context, BlankActivity::class.java)).isNull() + assertThat(page.createBrowseAdbCommand(context, BlankActivity::class.java)).isNull() } @Test @@ -57,9 +60,9 @@ class SettingsPageTest { assertThat(page.isCreateBy("NULL")).isFalse() assertThat(page.isCreateBy("mySpp")).isTrue() assertThat(page.hasRuntimeParam()).isFalse() - assertThat(page.isBrowsable(context, MockActivity::class.java)).isTrue() - assertThat(page.createBrowseIntent(context, MockActivity::class.java)).isNotNull() - assertThat(page.createBrowseAdbCommand(context, MockActivity::class.java)).contains( + assertThat(page.isBrowsable(context, BlankActivity::class.java)).isTrue() + assertThat(page.createBrowseIntent(context, BlankActivity::class.java)).isNotNull() + assertThat(page.createBrowseAdbCommand(context, BlankActivity::class.java)).contains( "-e spaActivityDestination mySpp" ) } @@ -80,9 +83,9 @@ class SettingsPageTest { assertThat(page.buildRoute()).isEqualTo("SppWithParam/myStr/10") assertThat(page.isCreateBy("SppWithParam")).isTrue() assertThat(page.hasRuntimeParam()).isFalse() - assertThat(page.isBrowsable(context, MockActivity::class.java)).isTrue() - assertThat(page.createBrowseIntent(context, MockActivity::class.java)).isNotNull() - assertThat(page.createBrowseAdbCommand(context, MockActivity::class.java)).contains( + assertThat(page.isBrowsable(context, BlankActivity::class.java)).isTrue() + assertThat(page.createBrowseIntent(context, BlankActivity::class.java)).isNotNull() + assertThat(page.createBrowseAdbCommand(context, BlankActivity::class.java)).contains( "-e spaActivityDestination SppWithParam/myStr/10" ) } @@ -105,9 +108,9 @@ class SettingsPageTest { assertThat(page.buildRoute()).isEqualTo("SppWithRtParam/myStr/10/rtStr") assertThat(page.isCreateBy("SppWithRtParam")).isTrue() assertThat(page.hasRuntimeParam()).isTrue() - assertThat(page.isBrowsable(context, MockActivity::class.java)).isFalse() - assertThat(page.createBrowseIntent(context, MockActivity::class.java)).isNull() - assertThat(page.createBrowseAdbCommand(context, MockActivity::class.java)).isNull() + assertThat(page.isBrowsable(context, BlankActivity::class.java)).isFalse() + assertThat(page.createBrowseIntent(context, BlankActivity::class.java)).isNull() + assertThat(page.createBrowseAdbCommand(context, BlankActivity::class.java)).isNull() } @Test diff --git a/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/slice/SettingsSliceDataRepositoryTest.kt b/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/slice/SettingsSliceDataRepositoryTest.kt index c501fa57468e..6ebd64f25e48 100644 --- a/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/slice/SettingsSliceDataRepositoryTest.kt +++ b/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/slice/SettingsSliceDataRepositoryTest.kt @@ -22,11 +22,11 @@ import androidx.lifecycle.Observer import androidx.slice.Slice import androidx.test.core.app.ApplicationProvider import androidx.test.ext.junit.runners.AndroidJUnit4 -import com.android.settingslib.spa.framework.common.SpaEnvironmentForTest -import com.android.settingslib.spa.framework.common.SppLayer2 import com.android.settingslib.spa.framework.common.createSettingsPage import com.android.settingslib.spa.framework.common.getUniqueEntryId import com.android.settingslib.spa.testutils.InstantTaskExecutorRule +import com.android.settingslib.spa.tests.testutils.SpaEnvironmentForTest +import com.android.settingslib.spa.tests.testutils.SppLayer2 import com.google.common.truth.Truth.assertThat import org.junit.Rule import org.junit.Test diff --git a/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/slice/SliceUtilTest.kt b/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/slice/SliceUtilTest.kt index 50705d5d8dd5..16a87f603447 100644 --- a/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/slice/SliceUtilTest.kt +++ b/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/slice/SliceUtilTest.kt @@ -23,7 +23,7 @@ import androidx.core.os.bundleOf import androidx.test.core.app.ApplicationProvider import androidx.test.ext.junit.runners.AndroidJUnit4 import com.android.settingslib.spa.framework.common.SpaEnvironmentFactory -import com.android.settingslib.spa.framework.common.SpaEnvironmentForTest +import com.android.settingslib.spa.tests.testutils.SpaEnvironmentForTest import com.google.common.truth.Truth.assertThat import org.junit.Test import org.junit.runner.RunWith diff --git a/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/framework/common/SpaEnvironmentForTest.kt b/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/tests/testutils/SpaEnvironmentForTest.kt index 4df37b1b12b7..a404dd3df709 100644 --- a/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/framework/common/SpaEnvironmentForTest.kt +++ b/packages/SettingsLib/Spa/tests/src/com/android/settingslib/spa/tests/testutils/SpaEnvironmentForTest.kt @@ -14,7 +14,7 @@ * limitations under the License. */ -package com.android.settingslib.spa.framework.common +package com.android.settingslib.spa.tests.testutils import android.app.Activity import android.content.BroadcastReceiver @@ -24,6 +24,17 @@ import android.os.Bundle import androidx.navigation.NavType import androidx.navigation.navArgument import com.android.settingslib.spa.framework.BrowseActivity +import com.android.settingslib.spa.framework.common.EntrySliceData +import com.android.settingslib.spa.framework.common.LogCategory +import com.android.settingslib.spa.framework.common.LogEvent +import com.android.settingslib.spa.framework.common.SettingsEntry +import com.android.settingslib.spa.framework.common.SettingsEntryBuilder +import com.android.settingslib.spa.framework.common.SettingsPage +import com.android.settingslib.spa.framework.common.SettingsPageProvider +import com.android.settingslib.spa.framework.common.SettingsPageProviderRepository +import com.android.settingslib.spa.framework.common.SpaEnvironment +import com.android.settingslib.spa.framework.common.SpaLogger +import com.android.settingslib.spa.framework.common.createSettingsPage class SpaLoggerForTest : SpaLogger { data class MsgCountKey(val msg: String, val category: LogCategory) @@ -34,22 +45,22 @@ class SpaLoggerForTest : SpaLogger { override fun message(tag: String, msg: String, category: LogCategory) { val key = MsgCountKey("[$tag]$msg", category) - messageCount[key] = messageCount.getOrDefault(key, 0) + 1 + messageCount[key] = (messageCount[key] ?: 0) + 1 } override fun event(id: String, event: LogEvent, category: LogCategory, details: String?) { val key = EventCountKey(id, event, category) - eventCount[key] = eventCount.getOrDefault(key, 0) + 1 + eventCount[key] = (eventCount[key] ?: 0) + 1 } fun getMessageCount(tag: String, msg: String, category: LogCategory): Int { val key = MsgCountKey("[$tag]$msg", category) - return messageCount.getOrDefault(key, 0) + return messageCount[key] ?: 0 } fun getEventCount(id: String, event: LogEvent, category: LogCategory): Int { val key = EventCountKey(id, event, category) - return eventCount.getOrDefault(key, 0) + return eventCount[key] ?: 0 } fun reset() { @@ -58,8 +69,8 @@ class SpaLoggerForTest : SpaLogger { } } -class MockActivity : BrowseActivity() -class MockSliceBroadcastReceiver : BroadcastReceiver() { +class BlankActivity : BrowseActivity() +class BlankSliceBroadcastReceiver : BroadcastReceiver() { override fun onReceive(p0: Context?, p1: Intent?) {} } @@ -112,7 +123,9 @@ object SppLayer2 : SettingsPageProvider { SettingsEntryBuilder.create(owner, "Layer2Entry1") .setSliceDataFn { _, _ -> return@setSliceDataFn object : EntrySliceData() { - init { postValue(null) } + init { + postValue(null) + } } } .build(), @@ -123,9 +136,9 @@ object SppLayer2 : SettingsPageProvider { class SpaEnvironmentForTest( context: Context, - override val browseActivityClass: Class<out Activity>? = MockActivity::class.java, + override val browseActivityClass: Class<out Activity>? = BlankActivity::class.java, override val sliceBroadcastReceiverClass: Class<out BroadcastReceiver>? = - MockSliceBroadcastReceiver::class.java, + BlankSliceBroadcastReceiver::class.java, override val logger: SpaLogger = object : SpaLogger {} ) : SpaEnvironment(context) { |