Loading src/com/android/settings/supervision/SupervisionAocFooterPreference.kt +6 −23 Original line number Diff line number Diff line Loading @@ -15,16 +15,15 @@ */ package com.android.settings.supervision import android.util.Log import android.text.Html import android.view.View import androidx.preference.Preference import com.android.settings.supervision.ipc.PreferenceData import com.android.settings.widget.FooterPreferenceBinding import com.android.settings.widget.FooterPreferenceMetadata import com.android.settingslib.HelpUtils import com.android.settingslib.metadata.PreferenceLifecycleContext import com.android.settingslib.metadata.PreferenceLifecycleProvider import com.android.settingslib.metadata.PreferenceMetadata import com.android.settingslib.supervision.SupervisionLog import com.android.settingslib.widget.FooterPreference import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.Dispatchers Loading @@ -46,26 +45,10 @@ class SupervisionAocFooterPreference( val footerPreference = preference as FooterPreference val context = preference.context preference.isVisible = (preferenceData?.isVisible ?: false) && preferenceData?.title != null && preferenceData?.learnMoreLink != null preference.title = preferenceData?.title footerPreference.setLearnMoreAction { val intent = HelpUtils.getHelpIntent( context, preferenceData?.learnMoreLink, context::class.java.name, ) if (intent != null) { context.startActivity(intent) } else { Log.w(SupervisionLog.TAG, "HelpIntent is null") } } preference.isVisible = (preferenceData?.isVisible ?: false) && preferenceData?.title != null preference.title = Html.fromHtml(preferenceData?.title.toString(), Html.FROM_HTML_MODE_COMPACT) footerPreference.setIconVisibility(View.GONE) } override fun onResume(context: PreferenceLifecycleContext) { Loading tests/robotests/src/com/android/settings/supervision/SupervisionAocFooterPreferenceTest.kt +9 −29 Original line number Diff line number Diff line Loading @@ -70,10 +70,7 @@ class SupervisionAocFooterPreferenceTest { @Test fun onResume_allGood_titleIsSet_preferenceIsVisible() = testScope.runTest { val title = "test title" val learnMoreLink = "https://google.com/learnMore" preferenceData = PreferenceData(title = title, learnMoreLink = learnMoreLink, isVisible = true) preferenceData = PreferenceData(title = PREFERENCE_TITLE, isVisible = true) val aosFooterPreference = SupervisionAocFooterPreference(preferenceDataProvider, testDispatcher) Loading @@ -83,16 +80,13 @@ class SupervisionAocFooterPreferenceTest { aosFooterPreference.bind(preference, mock()) assertThat(preference.isVisible).isTrue() assertThat(preference.title).isEqualTo(title) assertThat(preference.title.toString()).isEqualTo(PREFERENCE_TITLE) } @Test fun onResume_notVisible_preferenceIsHidden() = testScope.runTest { val title = "test title" val learnMoreLink = "https://google.com/learnMore" preferenceData = PreferenceData(title = title, learnMoreLink = learnMoreLink, isVisible = false) preferenceData = PreferenceData(title = PREFERENCE_TITLE, isVisible = false) val aosFooterPreference = SupervisionAocFooterPreference(preferenceDataProvider, testDispatcher) Loading @@ -102,14 +96,13 @@ class SupervisionAocFooterPreferenceTest { aosFooterPreference.bind(preference, mock()) assertThat(preference.isVisible).isFalse() assertThat(preference.title).isEqualTo(title) assertThat(preference.title.toString()).isEqualTo(PREFERENCE_TITLE) } @Test fun onResume_noLearnMoreLink_preferenceIsHidden() = fun onResume_noTitle_preferenceIsHidden() = testScope.runTest { val title = "test title" preferenceData = PreferenceData(title = title, isVisible = false) preferenceData = PreferenceData(isVisible = false) val aosFooterPreference = SupervisionAocFooterPreference(preferenceDataProvider, testDispatcher) Loading @@ -119,22 +112,9 @@ class SupervisionAocFooterPreferenceTest { aosFooterPreference.bind(preference, mock()) assertThat(preference.isVisible).isFalse() assertThat(preference.title).isEqualTo(title) } @Test fun onResume_noTitle_preferenceIsHidden() = testScope.runTest { val learnMoreLink = "https://google.com/learnMore" preferenceData = PreferenceData(learnMoreLink = learnMoreLink, isVisible = false) val aosFooterPreference = SupervisionAocFooterPreference(preferenceDataProvider, testDispatcher) aosFooterPreference.onResume(preferenceLifecycleContext) verify(preferenceLifecycleContext).notifyPreferenceChange(KEY) aosFooterPreference.bind(preference, mock()) assertThat(preference.isVisible).isFalse() private companion object { const val PREFERENCE_TITLE = "test title" } } Loading
src/com/android/settings/supervision/SupervisionAocFooterPreference.kt +6 −23 Original line number Diff line number Diff line Loading @@ -15,16 +15,15 @@ */ package com.android.settings.supervision import android.util.Log import android.text.Html import android.view.View import androidx.preference.Preference import com.android.settings.supervision.ipc.PreferenceData import com.android.settings.widget.FooterPreferenceBinding import com.android.settings.widget.FooterPreferenceMetadata import com.android.settingslib.HelpUtils import com.android.settingslib.metadata.PreferenceLifecycleContext import com.android.settingslib.metadata.PreferenceLifecycleProvider import com.android.settingslib.metadata.PreferenceMetadata import com.android.settingslib.supervision.SupervisionLog import com.android.settingslib.widget.FooterPreference import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.Dispatchers Loading @@ -46,26 +45,10 @@ class SupervisionAocFooterPreference( val footerPreference = preference as FooterPreference val context = preference.context preference.isVisible = (preferenceData?.isVisible ?: false) && preferenceData?.title != null && preferenceData?.learnMoreLink != null preference.title = preferenceData?.title footerPreference.setLearnMoreAction { val intent = HelpUtils.getHelpIntent( context, preferenceData?.learnMoreLink, context::class.java.name, ) if (intent != null) { context.startActivity(intent) } else { Log.w(SupervisionLog.TAG, "HelpIntent is null") } } preference.isVisible = (preferenceData?.isVisible ?: false) && preferenceData?.title != null preference.title = Html.fromHtml(preferenceData?.title.toString(), Html.FROM_HTML_MODE_COMPACT) footerPreference.setIconVisibility(View.GONE) } override fun onResume(context: PreferenceLifecycleContext) { Loading
tests/robotests/src/com/android/settings/supervision/SupervisionAocFooterPreferenceTest.kt +9 −29 Original line number Diff line number Diff line Loading @@ -70,10 +70,7 @@ class SupervisionAocFooterPreferenceTest { @Test fun onResume_allGood_titleIsSet_preferenceIsVisible() = testScope.runTest { val title = "test title" val learnMoreLink = "https://google.com/learnMore" preferenceData = PreferenceData(title = title, learnMoreLink = learnMoreLink, isVisible = true) preferenceData = PreferenceData(title = PREFERENCE_TITLE, isVisible = true) val aosFooterPreference = SupervisionAocFooterPreference(preferenceDataProvider, testDispatcher) Loading @@ -83,16 +80,13 @@ class SupervisionAocFooterPreferenceTest { aosFooterPreference.bind(preference, mock()) assertThat(preference.isVisible).isTrue() assertThat(preference.title).isEqualTo(title) assertThat(preference.title.toString()).isEqualTo(PREFERENCE_TITLE) } @Test fun onResume_notVisible_preferenceIsHidden() = testScope.runTest { val title = "test title" val learnMoreLink = "https://google.com/learnMore" preferenceData = PreferenceData(title = title, learnMoreLink = learnMoreLink, isVisible = false) preferenceData = PreferenceData(title = PREFERENCE_TITLE, isVisible = false) val aosFooterPreference = SupervisionAocFooterPreference(preferenceDataProvider, testDispatcher) Loading @@ -102,14 +96,13 @@ class SupervisionAocFooterPreferenceTest { aosFooterPreference.bind(preference, mock()) assertThat(preference.isVisible).isFalse() assertThat(preference.title).isEqualTo(title) assertThat(preference.title.toString()).isEqualTo(PREFERENCE_TITLE) } @Test fun onResume_noLearnMoreLink_preferenceIsHidden() = fun onResume_noTitle_preferenceIsHidden() = testScope.runTest { val title = "test title" preferenceData = PreferenceData(title = title, isVisible = false) preferenceData = PreferenceData(isVisible = false) val aosFooterPreference = SupervisionAocFooterPreference(preferenceDataProvider, testDispatcher) Loading @@ -119,22 +112,9 @@ class SupervisionAocFooterPreferenceTest { aosFooterPreference.bind(preference, mock()) assertThat(preference.isVisible).isFalse() assertThat(preference.title).isEqualTo(title) } @Test fun onResume_noTitle_preferenceIsHidden() = testScope.runTest { val learnMoreLink = "https://google.com/learnMore" preferenceData = PreferenceData(learnMoreLink = learnMoreLink, isVisible = false) val aosFooterPreference = SupervisionAocFooterPreference(preferenceDataProvider, testDispatcher) aosFooterPreference.onResume(preferenceLifecycleContext) verify(preferenceLifecycleContext).notifyPreferenceChange(KEY) aosFooterPreference.bind(preference, mock()) assertThat(preference.isVisible).isFalse() private companion object { const val PREFERENCE_TITLE = "test title" } }