From 9aa4a5463f1ac0b20209275b732ecb11413ff5a0 Mon Sep 17 00:00:00 2001 From: Yanting Yang Date: Thu, 15 Oct 2020 16:46:20 +0800 Subject: [PATCH] Remove subtitles for the homepage IA Remove the summary of the homepage IA if silky home enabled. Fixes: 170933968 Test: robotest & visual with turning on/off silky home Change-Id: I502b6590cece9b80e9923109fe0582cc4d9a1c56 --- res/xml/top_level_settings_grouped.xml | 15 -------- ...LevelAccountEntryPreferenceController.java | 7 ++++ ...lConnectedDevicesPreferenceController.java | 7 ++++ .../DashboardFeatureProviderImpl.java | 9 +++++ .../TopLevelStoragePreferenceController.java | 7 ++++ ...pLevelAboutDevicePreferenceController.java | 7 ++++ .../TopLevelDisplayPreferenceController.java | 7 ++++ .../TopLevelBatteryPreferenceController.java | 7 ++++ .../TopLevelLocationPreferenceController.java | 7 ++++ ...LevelNetworkEntryPreferenceController.java | 7 ++++ ...evelSecurityEntryPreferenceController.java | 7 ++++ ...lAccountEntryPreferenceControllerTest.java | 13 +++++++ ...nectedDevicesPreferenceControllerTest.java | 17 +++++++++ .../DashboardFeatureProviderImplTest.java | 37 +++++++++++++++++++ ...pLevelStoragePreferenceControllerTest.java | 17 +++++++++ ...elAboutDevicePreferenceControllerTest.java | 19 ++++++++++ ...pLevelDisplayPreferenceControllerTest.java | 17 +++++++++ ...pLevelBatteryPreferenceControllerTest.java | 18 +++++++++ ...LevelLocationPreferenceControllerTest.java | 17 +++++++++ ...lNetworkEntryPreferenceControllerTest.java | 13 +++++++ ...ecurityEntryPreferenceControllerTest.java} | 21 ++++++++++- 21 files changed, 260 insertions(+), 16 deletions(-) rename tests/robotests/src/com/android/settings/security/{TopLevelSecurityPreferenceControllerTest.java => TopLevelSecurityEntryPreferenceControllerTest.java} (87%) diff --git a/res/xml/top_level_settings_grouped.xml b/res/xml/top_level_settings_grouped.xml index 964c1980a0e..dc78f470f9e 100644 --- a/res/xml/top_level_settings_grouped.xml +++ b/res/xml/top_level_settings_grouped.xml @@ -29,7 +29,6 @@ android:icon="@drawable/ic_homepage_network" android:key="top_level_network" android:order="-120" - android:summary="@string/summary_placeholder" android:title="@string/network_dashboard_title" settings:controller="com.android.settings.network.TopLevelNetworkEntryPreferenceController"/> @@ -38,7 +37,6 @@ android:icon="@drawable/ic_homepage_connected_device" android:key="top_level_connected_devices" android:order="-110" - android:summary="@string/summary_placeholder" android:title="@string/connected_devices_dashboard_title" settings:controller="com.android.settings.connecteddevice.TopLevelConnectedDevicesPreferenceController"/> @@ -52,7 +50,6 @@ android:icon="@drawable/ic_homepage_apps" android:key="top_level_apps_and_notifs" android:order="-100" - android:summary="@string/app_and_notification_dashboard_summary" android:title="@string/app_and_notification_dashboard_title"/> @@ -65,7 +62,6 @@ android:icon="@drawable/ic_homepage_battery" android:key="top_level_battery" android:order="-90" - android:summary="@string/summary_placeholder" android:title="@string/power_usage_summary_title" settings:controller="com.android.settings.fuelgauge.TopLevelBatteryPreferenceController"/> @@ -74,7 +70,6 @@ android:icon="@drawable/ic_homepage_storage" android:key="top_level_storage" android:order="-80" - android:summary="@string/summary_placeholder" android:title="@string/storage_settings" settings:controller="com.android.settings.deviceinfo.TopLevelStoragePreferenceController"/> @@ -83,7 +78,6 @@ android:icon="@drawable/ic_homepage_sound" android:key="top_level_sound" android:order="-70" - android:summary="@string/sound_dashboard_summary" android:title="@string/sound_settings"/> @@ -100,7 +93,6 @@ android:icon="@drawable/ic_homepage_accessibility" android:key="top_level_accessibility" android:order="-50" - android:summary="@string/accessibility_settings_summary" android:title="@string/accessibility_settings" settings:controller="com.android.settings.accessibility.TopLevelAccessibilityPreferenceController"/> @@ -114,7 +106,6 @@ android:icon="@drawable/ic_homepage_privacy" android:key="top_level_privacy" android:order="-40" - android:summary="@string/privacy_dashboard_summary" android:title="@string/privacy_dashboard_title"/> @@ -131,7 +121,6 @@ android:icon="@drawable/ic_homepage_security" android:key="top_level_security" android:order="-20" - android:summary="@string/summary_placeholder" android:title="@string/security_settings_title" settings:controller="com.android.settings.security.TopLevelSecurityEntryPreferenceController"/> @@ -145,7 +134,6 @@ android:icon="@drawable/ic_homepage_accounts" android:key="top_level_accounts" android:order="-10" - android:summary="@string/summary_placeholder" android:title="@string/account_dashboard_title" settings:controller="com.android.settings.accounts.TopLevelAccountEntryPreferenceController"/> @@ -159,7 +147,6 @@ android:icon="@drawable/ic_homepage_system_dashboard" android:key="top_level_system" android:order="10" - android:summary="@string/system_dashboard_summary" android:title="@string/header_category_system"/> @@ -175,7 +161,6 @@ android:icon="@drawable/ic_homepage_support" android:key="top_level_support" android:order="100" - android:summary="@string/support_summary" android:title="@string/page_tab_title_support" settings:controller="com.android.settings.support.SupportPreferenceController"/> diff --git a/src/com/android/settings/accounts/TopLevelAccountEntryPreferenceController.java b/src/com/android/settings/accounts/TopLevelAccountEntryPreferenceController.java index e4e32e54d16..7cd746f445f 100644 --- a/src/com/android/settings/accounts/TopLevelAccountEntryPreferenceController.java +++ b/src/com/android/settings/accounts/TopLevelAccountEntryPreferenceController.java @@ -21,9 +21,11 @@ import android.icu.text.ListFormatter; import android.os.UserHandle; import android.text.BidiFormatter; import android.text.TextUtils; +import android.util.FeatureFlagUtils; import com.android.settings.R; import com.android.settings.core.BasePreferenceController; +import com.android.settings.core.FeatureFlags; import com.android.settingslib.accounts.AuthenticatorHelper; import java.util.ArrayList; @@ -41,6 +43,11 @@ public class TopLevelAccountEntryPreferenceController extends BasePreferenceCont @Override public CharSequence getSummary() { + // Remove homepage summaries for silky home. + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME)) { + return null; + } + final AuthenticatorHelper authHelper = new AuthenticatorHelper(mContext, UserHandle.of(UserHandle.myUserId()), null /* OnAccountsUpdateListener */); final String[] types = authHelper.getEnabledAccountTypes(); diff --git a/src/com/android/settings/connecteddevice/TopLevelConnectedDevicesPreferenceController.java b/src/com/android/settings/connecteddevice/TopLevelConnectedDevicesPreferenceController.java index fd36bca6338..fac3201e284 100644 --- a/src/com/android/settings/connecteddevice/TopLevelConnectedDevicesPreferenceController.java +++ b/src/com/android/settings/connecteddevice/TopLevelConnectedDevicesPreferenceController.java @@ -17,9 +17,11 @@ package com.android.settings.connecteddevice; import android.content.Context; +import android.util.FeatureFlagUtils; import com.android.settings.R; import com.android.settings.core.BasePreferenceController; +import com.android.settings.core.FeatureFlags; public class TopLevelConnectedDevicesPreferenceController extends BasePreferenceController { @@ -36,6 +38,11 @@ public class TopLevelConnectedDevicesPreferenceController extends BasePreference @Override public CharSequence getSummary() { + // Remove homepage summaries for silky home. + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME)) { + return null; + } + return mContext.getText( AdvancedConnectedDeviceController.getConnectedDevicesSummaryResourceId(mContext)); } diff --git a/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java b/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java index bfcfc823668..0243b8a4545 100644 --- a/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java +++ b/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java @@ -47,6 +47,7 @@ import android.os.UserHandle; import android.provider.Settings; import android.text.TextUtils; import android.util.ArrayMap; +import android.util.FeatureFlagUtils; import android.util.Log; import android.util.Pair; import android.widget.Toast; @@ -58,11 +59,13 @@ import androidx.preference.SwitchPreference; import com.android.settings.R; import com.android.settings.SettingsActivity; +import com.android.settings.core.FeatureFlags; import com.android.settings.dashboard.profileselector.ProfileSelectDialog; import com.android.settings.overlay.FeatureFactory; import com.android.settings.widget.PrimarySwitchPreference; import com.android.settingslib.core.instrumentation.MetricsFeatureProvider; import com.android.settingslib.drawer.ActivityTile; +import com.android.settingslib.drawer.CategoryKey; import com.android.settingslib.drawer.DashboardCategory; import com.android.settingslib.drawer.Tile; import com.android.settingslib.drawer.TileUtils; @@ -255,6 +258,12 @@ public class DashboardFeatureProviderImpl implements DashboardFeatureProvider { } private DynamicDataObserver bindSummaryAndGetObserver(Preference preference, Tile tile) { + // Skip binding homepage tile summaries for silky home. + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME) + && TextUtils.equals(tile.getCategory(), CategoryKey.CATEGORY_HOMEPAGE)) { + return null; + } + final CharSequence summary = tile.getSummary(mContext); if (summary != null) { preference.setSummary(summary); diff --git a/src/com/android/settings/deviceinfo/TopLevelStoragePreferenceController.java b/src/com/android/settings/deviceinfo/TopLevelStoragePreferenceController.java index 8a2d3babb89..dcc581c7fb7 100644 --- a/src/com/android/settings/deviceinfo/TopLevelStoragePreferenceController.java +++ b/src/com/android/settings/deviceinfo/TopLevelStoragePreferenceController.java @@ -19,11 +19,13 @@ package com.android.settings.deviceinfo; import android.content.Context; import android.os.storage.StorageManager; import android.text.format.Formatter; +import android.util.FeatureFlagUtils; import androidx.preference.Preference; import com.android.settings.R; import com.android.settings.core.BasePreferenceController; +import com.android.settings.core.FeatureFlags; import com.android.settingslib.deviceinfo.PrivateStorageInfo; import com.android.settingslib.deviceinfo.StorageManagerVolumeProvider; import com.android.settingslib.utils.ThreadUtils; @@ -48,6 +50,11 @@ public class TopLevelStoragePreferenceController extends BasePreferenceControlle @Override protected void refreshSummary(Preference preference) { + // Remove homepage summaries for silky home. + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME)) { + return; + } + if (preference == null) { return; } diff --git a/src/com/android/settings/deviceinfo/aboutphone/TopLevelAboutDevicePreferenceController.java b/src/com/android/settings/deviceinfo/aboutphone/TopLevelAboutDevicePreferenceController.java index 83efcc4028f..3bda7b9c983 100644 --- a/src/com/android/settings/deviceinfo/aboutphone/TopLevelAboutDevicePreferenceController.java +++ b/src/com/android/settings/deviceinfo/aboutphone/TopLevelAboutDevicePreferenceController.java @@ -17,8 +17,10 @@ package com.android.settings.deviceinfo.aboutphone; import android.content.Context; +import android.util.FeatureFlagUtils; import com.android.settings.core.BasePreferenceController; +import com.android.settings.core.FeatureFlags; import com.android.settings.deviceinfo.DeviceNamePreferenceController; public class TopLevelAboutDevicePreferenceController extends BasePreferenceController { @@ -34,6 +36,11 @@ public class TopLevelAboutDevicePreferenceController extends BasePreferenceContr @Override public CharSequence getSummary() { + // Remove homepage summaries for silky home. + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME)) { + return null; + } + final DeviceNamePreferenceController deviceNamePreferenceController = new DeviceNamePreferenceController(mContext, "unused_key"); return deviceNamePreferenceController.getSummary(); diff --git a/src/com/android/settings/display/TopLevelDisplayPreferenceController.java b/src/com/android/settings/display/TopLevelDisplayPreferenceController.java index 73aafe53453..cd2dd1307a7 100644 --- a/src/com/android/settings/display/TopLevelDisplayPreferenceController.java +++ b/src/com/android/settings/display/TopLevelDisplayPreferenceController.java @@ -17,9 +17,11 @@ package com.android.settings.display; import android.content.Context; +import android.util.FeatureFlagUtils; import com.android.settings.R; import com.android.settings.core.BasePreferenceController; +import com.android.settings.core.FeatureFlags; public class TopLevelDisplayPreferenceController extends BasePreferenceController { @@ -36,6 +38,11 @@ public class TopLevelDisplayPreferenceController extends BasePreferenceControlle @Override public CharSequence getSummary() { + // Remove homepage summaries for silky home. + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME)) { + return null; + } + final WallpaperPreferenceController controller = new WallpaperPreferenceController(mContext, "unused_key"); if (controller.isAvailable()) { diff --git a/src/com/android/settings/fuelgauge/TopLevelBatteryPreferenceController.java b/src/com/android/settings/fuelgauge/TopLevelBatteryPreferenceController.java index 88fd1ceeb67..1936698775b 100644 --- a/src/com/android/settings/fuelgauge/TopLevelBatteryPreferenceController.java +++ b/src/com/android/settings/fuelgauge/TopLevelBatteryPreferenceController.java @@ -17,12 +17,14 @@ package com.android.settings.fuelgauge; import android.content.Context; +import android.util.FeatureFlagUtils; import androidx.preference.Preference; import androidx.preference.PreferenceScreen; import com.android.settings.R; import com.android.settings.core.BasePreferenceController; +import com.android.settings.core.FeatureFlags; import com.android.settingslib.core.lifecycle.LifecycleObserver; import com.android.settingslib.core.lifecycle.events.OnStart; import com.android.settingslib.core.lifecycle.events.OnStop; @@ -69,6 +71,11 @@ public class TopLevelBatteryPreferenceController extends BasePreferenceControlle @Override public CharSequence getSummary() { + // Remove homepage summaries for silky home. + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME)) { + return null; + } + return getDashboardLabel(mContext, mBatteryInfo); } diff --git a/src/com/android/settings/location/TopLevelLocationPreferenceController.java b/src/com/android/settings/location/TopLevelLocationPreferenceController.java index ec58a3422d2..fe85c7f42b2 100644 --- a/src/com/android/settings/location/TopLevelLocationPreferenceController.java +++ b/src/com/android/settings/location/TopLevelLocationPreferenceController.java @@ -11,6 +11,7 @@ import android.location.LocationManager; import android.os.UserHandle; import android.os.UserManager; import android.permission.PermissionControllerManager; +import android.util.FeatureFlagUtils; import androidx.annotation.VisibleForTesting; import androidx.preference.Preference; @@ -18,6 +19,7 @@ import androidx.preference.Preference; import com.android.settings.R; import com.android.settings.Utils; import com.android.settings.core.BasePreferenceController; +import com.android.settings.core.FeatureFlags; import com.android.settingslib.core.lifecycle.LifecycleObserver; import com.android.settingslib.core.lifecycle.events.OnStart; import com.android.settingslib.core.lifecycle.events.OnStop; @@ -50,6 +52,11 @@ public class TopLevelLocationPreferenceController extends BasePreferenceControll @Override public CharSequence getSummary() { + // Remove homepage summaries for silky home. + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME)) { + return null; + } + if (mLocationManager.isLocationEnabled()) { if (mNumTotal == -1) { return mContext.getString(R.string.location_settings_loading_app_permission_stats); diff --git a/src/com/android/settings/network/TopLevelNetworkEntryPreferenceController.java b/src/com/android/settings/network/TopLevelNetworkEntryPreferenceController.java index c630cc78507..fe2392b705d 100644 --- a/src/com/android/settings/network/TopLevelNetworkEntryPreferenceController.java +++ b/src/com/android/settings/network/TopLevelNetworkEntryPreferenceController.java @@ -20,10 +20,12 @@ import android.content.Context; import android.icu.text.ListFormatter; import android.text.BidiFormatter; import android.text.TextUtils; +import android.util.FeatureFlagUtils; import com.android.settings.R; import com.android.settings.Utils; import com.android.settings.core.BasePreferenceController; +import com.android.settings.core.FeatureFlags; import com.android.settings.wifi.WifiPrimarySwitchPreferenceController; import java.util.ArrayList; @@ -51,6 +53,11 @@ public class TopLevelNetworkEntryPreferenceController extends BasePreferenceCont @Override public CharSequence getSummary() { + // Remove homepage summaries for silky home. + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME)) { + return null; + } + final String wifiSummary = BidiFormatter.getInstance() .unicodeWrap(mContext.getString(R.string.wifi_settings_title)); final String mobileSummary = mContext.getString( diff --git a/src/com/android/settings/security/TopLevelSecurityEntryPreferenceController.java b/src/com/android/settings/security/TopLevelSecurityEntryPreferenceController.java index 4a4d34511da..4efc6200025 100644 --- a/src/com/android/settings/security/TopLevelSecurityEntryPreferenceController.java +++ b/src/com/android/settings/security/TopLevelSecurityEntryPreferenceController.java @@ -19,10 +19,12 @@ package com.android.settings.security; import android.content.Context; import android.hardware.face.FaceManager; import android.hardware.fingerprint.FingerprintManager; +import android.util.FeatureFlagUtils; import com.android.settings.R; import com.android.settings.Utils; import com.android.settings.core.BasePreferenceController; +import com.android.settings.core.FeatureFlags; public class TopLevelSecurityEntryPreferenceController extends BasePreferenceController { @@ -37,6 +39,11 @@ public class TopLevelSecurityEntryPreferenceController extends BasePreferenceCon @Override public CharSequence getSummary() { + // Remove homepage summaries for silky home. + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME)) { + return null; + } + final FingerprintManager fpm = Utils.getFingerprintManagerOrNull(mContext); final FaceManager faceManager = diff --git a/tests/robotests/src/com/android/settings/accounts/TopLevelAccountEntryPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/accounts/TopLevelAccountEntryPreferenceControllerTest.java index 8fe8e190eff..1cd5fb153fa 100644 --- a/tests/robotests/src/com/android/settings/accounts/TopLevelAccountEntryPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/accounts/TopLevelAccountEntryPreferenceControllerTest.java @@ -19,8 +19,10 @@ package com.android.settings.accounts; import static com.google.common.truth.Truth.assertThat; import android.content.Context; +import android.util.FeatureFlagUtils; import com.android.settings.R; +import com.android.settings.core.FeatureFlags; import com.android.settings.testutils.shadow.ShadowAuthenticationHelper; import org.junit.After; @@ -51,6 +53,10 @@ public class TopLevelAccountEntryPreferenceControllerTest { @After public void tearDown() { ShadowAuthenticationHelper.reset(); + + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME)) { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, false); + } } @Test @@ -76,4 +82,11 @@ public class TopLevelAccountEntryPreferenceControllerTest { // should only show the 2 accounts with labels assertThat(mController.getSummary()).isEqualTo(LABELS[0] + " and " + LABELS[1]); } + + @Test + public void getSummary_silkyHomeEnabled_shouldBeNull() { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, true); + + assertThat(mController.getSummary()).isNull(); + } } diff --git a/tests/robotests/src/com/android/settings/connecteddevice/TopLevelConnectedDevicesPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/connecteddevice/TopLevelConnectedDevicesPreferenceControllerTest.java index 14fe4bd19e6..232bc16526c 100644 --- a/tests/robotests/src/com/android/settings/connecteddevice/TopLevelConnectedDevicesPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/connecteddevice/TopLevelConnectedDevicesPreferenceControllerTest.java @@ -22,9 +22,12 @@ import static com.android.settings.core.BasePreferenceController.UNSUPPORTED_ON_ import static com.google.common.truth.Truth.assertThat; import android.content.Context; +import android.util.FeatureFlagUtils; import com.android.settings.R; +import com.android.settings.core.FeatureFlags; +import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -46,6 +49,13 @@ public class TopLevelConnectedDevicesPreferenceControllerTest { mController = new TopLevelConnectedDevicesPreferenceController(mContext, "test_key"); } + @After + public void tearDown() { + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME)) { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, false); + } + } + @Test public void getAvailibilityStatus_availableByDefault() { assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE); @@ -64,6 +74,13 @@ public class TopLevelConnectedDevicesPreferenceControllerTest { .isEqualTo(mContext.getText(R.string.settings_label_launcher)); } + @Test + public void getSummary_silkyHomeEnabled_shouldBeNull() { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, true); + + assertThat(mController.getSummary()).isNull(); + } + @Implements(AdvancedConnectedDeviceController.class) private static class ShadowAdvancedConnectedDeviceController { diff --git a/tests/robotests/src/com/android/settings/dashboard/DashboardFeatureProviderImplTest.java b/tests/robotests/src/com/android/settings/dashboard/DashboardFeatureProviderImplTest.java index 5bc07da6e45..36bc376a4d0 100644 --- a/tests/robotests/src/com/android/settings/dashboard/DashboardFeatureProviderImplTest.java +++ b/tests/robotests/src/com/android/settings/dashboard/DashboardFeatureProviderImplTest.java @@ -55,6 +55,7 @@ import android.graphics.drawable.Icon; import android.os.Bundle; import android.os.UserHandle; import android.os.UserManager; +import android.util.FeatureFlagUtils; import android.util.Pair; import androidx.fragment.app.FragmentActivity; @@ -65,6 +66,7 @@ import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settings.Utils; +import com.android.settings.core.FeatureFlags; import com.android.settings.testutils.FakeFeatureFactory; import com.android.settings.testutils.shadow.ShadowTileUtils; import com.android.settings.testutils.shadow.ShadowUserManager; @@ -75,6 +77,7 @@ import com.android.settingslib.drawer.ProviderTile; import com.android.settingslib.drawer.Tile; import com.android.settingslib.drawer.TileUtils; +import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -146,6 +149,13 @@ public class DashboardFeatureProviderImplTest { mImpl = new DashboardFeatureProviderImpl(mContext); } + @After + public void tearDown() { + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME)) { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, false); + } + } + @Test public void shouldHoldAppContext() { assertThat(mImpl.mContext).isEqualTo(mContext.getApplicationContext()); @@ -670,4 +680,31 @@ public class DashboardFeatureProviderImplTest { assertThat(argument.getValue().getIdentifier()).isEqualTo(0); verify(mActivity, never()).getSupportFragmentManager(); } + + @Test + public void bindPreference_silkyHomeEnabled_shouldNotBindHomepageTileSummary() { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, true); + final Preference preference = new Preference(RuntimeEnvironment.application); + final Tile tile = new ActivityTile(mActivityInfo, CategoryKey.CATEGORY_HOMEPAGE); + + mImpl.bindPreferenceToTileAndGetObservers(mActivity, mForceRoundedIcon, + MetricsEvent.VIEW_UNKNOWN, preference, tile, null /*key */, + Preference.DEFAULT_ORDER); + + assertThat(preference.getSummary()).isNull(); + } + + @Test + public void bindPreference_silkyHomeEnabled_shouldBindSubpageTileSummary() { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, true); + final Preference preference = new Preference(RuntimeEnvironment.application); + final Tile tile = new ActivityTile(mActivityInfo, CategoryKey.CATEGORY_SYSTEM); + + mImpl.bindPreferenceToTileAndGetObservers(mActivity, mForceRoundedIcon, + MetricsEvent.VIEW_UNKNOWN, preference, tile, null /*key */, + Preference.DEFAULT_ORDER); + + assertThat(preference.getSummary()).isEqualTo( + mContext.getText(R.string.about_settings_summary)); + } } diff --git a/tests/robotests/src/com/android/settings/deviceinfo/TopLevelStoragePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/deviceinfo/TopLevelStoragePreferenceControllerTest.java index 7d7be6c6041..e19066a2d76 100644 --- a/tests/robotests/src/com/android/settings/deviceinfo/TopLevelStoragePreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/deviceinfo/TopLevelStoragePreferenceControllerTest.java @@ -28,12 +28,15 @@ import android.content.Context; import android.icu.text.NumberFormat; import android.os.storage.VolumeInfo; import android.text.format.Formatter; +import android.util.FeatureFlagUtils; import androidx.preference.Preference; import com.android.settings.R; +import com.android.settings.core.FeatureFlags; import com.android.settingslib.deviceinfo.StorageManagerVolumeProvider; +import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -68,6 +71,13 @@ public class TopLevelStoragePreferenceControllerTest { mController = new TopLevelStoragePreferenceController(mContext, "test_key"); } + @After + public void tearDown() { + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME)) { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, false); + } + } + @Test public void updateSummary_shouldDisplayUsedPercentAndFreeSpace() throws Exception { final VolumeInfo volumeInfo = mVolumes.get(0); @@ -90,4 +100,11 @@ public class TopLevelStoragePreferenceControllerTest { assertThat(preference.getSummary()).isEqualTo( mContext.getString(R.string.storage_summary, percentage, freeSpace)); } + + @Test + public void refreshSummary_silkyHomeEnabled_shouldBeNull() { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, true); + + assertThat(mController.getSummary()).isNull(); + } } diff --git a/tests/robotests/src/com/android/settings/deviceinfo/aboutphone/TopLevelAboutDevicePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/deviceinfo/aboutphone/TopLevelAboutDevicePreferenceControllerTest.java index 988a94b6650..16c77a4951d 100644 --- a/tests/robotests/src/com/android/settings/deviceinfo/aboutphone/TopLevelAboutDevicePreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/deviceinfo/aboutphone/TopLevelAboutDevicePreferenceControllerTest.java @@ -23,7 +23,11 @@ import static com.google.common.truth.Truth.assertThat; import android.content.Context; import android.os.Build; import android.provider.Settings.Global; +import android.util.FeatureFlagUtils; +import com.android.settings.core.FeatureFlags; + +import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -42,6 +46,13 @@ public class TopLevelAboutDevicePreferenceControllerTest { mController = new TopLevelAboutDevicePreferenceController(mContext, "test_key"); } + @After + public void teardown() { + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME)) { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, false); + } + } + @Test public void getAvailabilityState_shouldBeAvailable() { assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE); @@ -57,4 +68,12 @@ public class TopLevelAboutDevicePreferenceControllerTest { Global.putString(mContext.getContentResolver(), Global.DEVICE_NAME, "Test"); assertThat(mController.getSummary().toString()).isEqualTo("Test"); } + + @Test + public void getSummary_silkyHomeEnabled_shouldBeNull() { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, true); + Global.putString(mContext.getContentResolver(), Global.DEVICE_NAME, "Test"); + + assertThat(mController.getSummary()).isNull(); + } } diff --git a/tests/robotests/src/com/android/settings/display/TopLevelDisplayPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/display/TopLevelDisplayPreferenceControllerTest.java index d16a6d29559..a52ad71c345 100644 --- a/tests/robotests/src/com/android/settings/display/TopLevelDisplayPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/display/TopLevelDisplayPreferenceControllerTest.java @@ -31,9 +31,12 @@ import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; +import android.util.FeatureFlagUtils; import com.android.settings.R; +import com.android.settings.core.FeatureFlags; +import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -65,6 +68,13 @@ public class TopLevelDisplayPreferenceControllerTest { mController = new TopLevelDisplayPreferenceController(mContext, "test_key"); } + @After + public void tearDown() { + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME)) { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, false); + } + } + @Test public void getAvailibilityStatus_availableByDefault() { assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE); @@ -109,4 +119,11 @@ public class TopLevelDisplayPreferenceControllerTest { assertThat(mController.getSummary()) .isEqualTo(mContext.getText(R.string.display_dashboard_nowallpaper_summary)); } + + @Test + public void getSummary_silkyHomeEnabled_shouldBeNull() { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, true); + + assertThat(mController.getSummary()).isNull(); + } } diff --git a/tests/robotests/src/com/android/settings/fuelgauge/TopLevelBatteryPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/fuelgauge/TopLevelBatteryPreferenceControllerTest.java index 37758029bc9..b3561434605 100644 --- a/tests/robotests/src/com/android/settings/fuelgauge/TopLevelBatteryPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/fuelgauge/TopLevelBatteryPreferenceControllerTest.java @@ -23,7 +23,11 @@ import static com.android.settings.fuelgauge.TopLevelBatteryPreferenceController import static com.google.common.truth.Truth.assertThat; import android.content.Context; +import android.util.FeatureFlagUtils; +import com.android.settings.core.FeatureFlags; + +import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -42,6 +46,13 @@ public class TopLevelBatteryPreferenceControllerTest { mController = new TopLevelBatteryPreferenceController(mContext, "test_key"); } + @After + public void tearDown() { + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME)) { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, false); + } + } + @Test public void getAvailibilityStatus_availableByDefault() { assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE); @@ -66,4 +77,11 @@ public class TopLevelBatteryPreferenceControllerTest { info.chargeLabel = "5% - charging"; assertThat(getDashboardLabel(mContext, info)).isEqualTo("5% - charging"); } + + @Test + public void getSummary_silkyHomeEnabled_shouldBeNull() { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, true); + + assertThat(mController.getSummary()).isNull(); + } } diff --git a/tests/robotests/src/com/android/settings/location/TopLevelLocationPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/location/TopLevelLocationPreferenceControllerTest.java index 68e7f88ddf5..2fa7413ff19 100644 --- a/tests/robotests/src/com/android/settings/location/TopLevelLocationPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/location/TopLevelLocationPreferenceControllerTest.java @@ -20,9 +20,12 @@ import static com.google.common.truth.Truth.assertThat; import android.content.Context; import android.location.LocationManager; +import android.util.FeatureFlagUtils; import com.android.settings.R; +import com.android.settings.core.FeatureFlags; +import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -43,6 +46,13 @@ public class TopLevelLocationPreferenceControllerTest { mLocationManager = (LocationManager) mContext.getSystemService(Context.LOCATION_SERVICE); } + @After + public void tearDown() { + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME)) { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, false); + } + } + @Test public void isAvailable_byDefault_shouldReturnTrue() { assertThat(mController.isAvailable()).isTrue(); @@ -83,4 +93,11 @@ public class TopLevelLocationPreferenceControllerTest { R.plurals.location_settings_summary_location_on, LOCATION_APP_COUNT, LOCATION_APP_COUNT)); } + + @Test + public void getSummary_silkyHomeEnabled_shouldBeNull() { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, true); + + assertThat(mController.getSummary()).isNull(); + } } \ No newline at end of file diff --git a/tests/robotests/src/com/android/settings/network/TopLevelNetworkEntryPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/network/TopLevelNetworkEntryPreferenceControllerTest.java index a3f0c90c1a2..857b3eba06b 100644 --- a/tests/robotests/src/com/android/settings/network/TopLevelNetworkEntryPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/network/TopLevelNetworkEntryPreferenceControllerTest.java @@ -24,7 +24,9 @@ import static org.mockito.Mockito.when; import android.content.Context; import android.os.UserManager; +import android.util.FeatureFlagUtils; +import com.android.settings.core.FeatureFlags; import com.android.settings.testutils.shadow.ShadowRestrictedLockUtilsInternal; import com.android.settings.testutils.shadow.ShadowUtils; import com.android.settings.wifi.WifiPrimarySwitchPreferenceController; @@ -77,6 +79,10 @@ public class TopLevelNetworkEntryPreferenceControllerTest { @After public void tearDown() { ShadowUtils.reset(); + + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME)) { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, false); + } } @Test @@ -103,4 +109,11 @@ public class TopLevelNetworkEntryPreferenceControllerTest { assertThat(mController.getSummary()).isEqualTo("Wi\u2011Fi and data usage"); } + + @Test + public void getSummary_silkyHomeEnabled_shouldBeNull() { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, true); + + assertThat(mController.getSummary()).isNull(); + } } diff --git a/tests/robotests/src/com/android/settings/security/TopLevelSecurityPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/security/TopLevelSecurityEntryPreferenceControllerTest.java similarity index 87% rename from tests/robotests/src/com/android/settings/security/TopLevelSecurityPreferenceControllerTest.java rename to tests/robotests/src/com/android/settings/security/TopLevelSecurityEntryPreferenceControllerTest.java index 4e18a3eb12c..33d22d4ed45 100644 --- a/tests/robotests/src/com/android/settings/security/TopLevelSecurityPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/security/TopLevelSecurityEntryPreferenceControllerTest.java @@ -16,6 +16,8 @@ package com.android.settings.security; +import static com.google.common.truth.Truth.assertThat; + import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; @@ -23,9 +25,12 @@ import android.content.Context; import android.content.pm.PackageManager; import android.hardware.face.FaceManager; import android.hardware.fingerprint.FingerprintManager; +import android.util.FeatureFlagUtils; import com.android.settings.R; +import com.android.settings.core.FeatureFlags; +import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -35,7 +40,7 @@ import org.mockito.MockitoAnnotations; import org.robolectric.RobolectricTestRunner; @RunWith(RobolectricTestRunner.class) -public class TopLevelSecurityPreferenceControllerTest { +public class TopLevelSecurityEntryPreferenceControllerTest { @Mock(answer = Answers.RETURNS_DEEP_STUBS) private Context mContext; @@ -55,6 +60,13 @@ public class TopLevelSecurityPreferenceControllerTest { mController = new TopLevelSecurityEntryPreferenceController(mContext, "test_key"); } + @After + public void tearDown() { + if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.SILKY_HOME)) { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, false); + } + } + @Test public void geSummary_hasFace_hasStaticSummary() { when(mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_FACE)) @@ -128,4 +140,11 @@ public class TopLevelSecurityPreferenceControllerTest { verify(mContext).getText(R.string.security_dashboard_summary_no_fingerprint); } + + @Test + public void getSummary_silkyHomeEnabled_shouldBeNull() { + FeatureFlagUtils.setEnabled(mContext, FeatureFlags.SILKY_HOME, true); + + assertThat(mController.getSummary()).isNull(); + } }