Enable flag for about phone v2

Bug: 36458278
Test: make RunSettingsRoboTests -j40
Change-Id: I0a41fdafadf71e20b76f999005dac66b6a52f570
This commit is contained in:
jeffreyhuang
2017-11-15 16:56:50 -08:00
parent 12108840a0
commit b025f06a50
10 changed files with 35 additions and 12 deletions

View File

@@ -84,7 +84,7 @@ public class DeviceInfoSettings extends DashboardFragment implements Indexable {
public void onCreate(Bundle icicle) { public void onCreate(Bundle icicle) {
super.onCreate(icicle); super.onCreate(icicle);
if (FeatureFlagUtils.isEnabled(getContext(), DEVICE_INFO_V2)) { if (FeatureFlagUtils.isEnabled(getContext(), DEVICE_INFO_V2) || true) {
// Increase the number of children when the device contains more than 1 sim. // Increase the number of children when the device contains more than 1 sim.
final TelephonyManager telephonyManager = (TelephonyManager) getSystemService( final TelephonyManager telephonyManager = (TelephonyManager) getSystemService(
Context.TELEPHONY_SERVICE); Context.TELEPHONY_SERVICE);
@@ -112,7 +112,7 @@ public class DeviceInfoSettings extends DashboardFragment implements Indexable {
@Override @Override
protected int getPreferenceScreenResId() { protected int getPreferenceScreenResId() {
return FeatureFlagUtils.isEnabled(getContext(), DEVICE_INFO_V2) return FeatureFlagUtils.isEnabled(getContext(), DEVICE_INFO_V2) || true
? R.xml.device_info_settings_v2 : R.xml.device_info_settings; ? R.xml.device_info_settings_v2 : R.xml.device_info_settings;
} }
@@ -149,7 +149,7 @@ public class DeviceInfoSettings extends DashboardFragment implements Indexable {
private static List<AbstractPreferenceController> buildPreferenceControllers(Context context, private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
Activity activity, Fragment fragment, Lifecycle lifecycle) { Activity activity, Fragment fragment, Lifecycle lifecycle) {
if (FeatureFlagUtils.isEnabled(context, DEVICE_INFO_V2)) { if (FeatureFlagUtils.isEnabled(context, DEVICE_INFO_V2) || true) {
final List<AbstractPreferenceController> controllers = new ArrayList<>(); final List<AbstractPreferenceController> controllers = new ArrayList<>();
// Device name // Device name
@@ -213,7 +213,8 @@ public class DeviceInfoSettings extends DashboardFragment implements Indexable {
public List<SearchIndexableResource> getXmlResourcesToIndex( public List<SearchIndexableResource> getXmlResourcesToIndex(
Context context, boolean enabled) { Context context, boolean enabled) {
final SearchIndexableResource sir = new SearchIndexableResource(context); final SearchIndexableResource sir = new SearchIndexableResource(context);
sir.xmlResId = R.xml.device_info_settings; sir.xmlResId = FeatureFlagUtils.isEnabled(context, DEVICE_INFO_V2) || true
? R.xml.device_info_settings_v2 : R.xml.device_info_settings;
return Arrays.asList(sir); return Arrays.asList(sir);
} }

View File

@@ -26,12 +26,18 @@ import android.support.v7.preference.PreferenceScreen;
import com.android.settings.Utils; import com.android.settings.Utils;
import com.android.settings.core.PreferenceControllerMixin; import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.fuelgauge.PowerUsageSummary;
import com.android.settingslib.core.AbstractPreferenceController; import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.core.lifecycle.Lifecycle; import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.core.lifecycle.LifecycleObserver; import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnStart; import com.android.settingslib.core.lifecycle.events.OnStart;
import com.android.settingslib.core.lifecycle.events.OnStop; import com.android.settingslib.core.lifecycle.events.OnStop;
/**
* Deprecated in About Phone V2
* Information in this preference is available in {@link PowerUsageSummary}
*/
@Deprecated
public class BatteryInfoPreferenceController extends AbstractPreferenceController public class BatteryInfoPreferenceController extends AbstractPreferenceController
implements PreferenceControllerMixin, LifecycleObserver, OnStart, OnStop { implements PreferenceControllerMixin, LifecycleObserver, OnStart, OnStop {

View File

@@ -51,7 +51,7 @@ public class DeviceModelPreferenceController extends AbstractPreferenceControlle
super.displayPreference(screen); super.displayPreference(screen);
final Preference pref = screen.findPreference(KEY_DEVICE_MODEL); final Preference pref = screen.findPreference(KEY_DEVICE_MODEL);
if (pref != null) { if (pref != null) {
if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.DEVICE_INFO_V2)) { if (FeatureFlagUtils.isEnabled(mContext, FeatureFlags.DEVICE_INFO_V2) || true) {
pref.setSummary(mContext.getResources().getString(R.string.model_summary, pref.setSummary(mContext.getResources().getString(R.string.model_summary,
getDeviceModel())); getDeviceModel()));
} else { } else {

View File

@@ -59,7 +59,7 @@ public class HardwareInfoDialogFragment extends InstrumentedDialogFragment {
DeviceModelPreferenceController.getDeviceModel()); DeviceModelPreferenceController.getDeviceModel());
// Serial number // Serial number
if (FeatureFlagUtils.isEnabled(getContext(), FeatureFlags.DEVICE_INFO_V2)) { if (FeatureFlagUtils.isEnabled(getContext(), FeatureFlags.DEVICE_INFO_V2) || true) {
setText(content, R.id.serial_number_label, R.id.serial_number_value, getSerialNumber()); setText(content, R.id.serial_number_label, R.id.serial_number_value, getSerialNumber());
} else { } else {
content.findViewById(R.id.serial_number_label).setVisibility(View.GONE); content.findViewById(R.id.serial_number_label).setVisibility(View.GONE);

View File

@@ -20,6 +20,7 @@ import android.content.Context;
import android.provider.SearchIndexableResource; import android.provider.SearchIndexableResource;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.DeviceInfoSettings;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.dashboard.DashboardFragment; import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.search.BaseSearchIndexProvider; import com.android.settings.search.BaseSearchIndexProvider;
@@ -32,7 +33,10 @@ import java.util.List;
/** /**
* Fragment for showing device hardware info, such as MAC addresses and serial numbers * Fragment for showing device hardware info, such as MAC addresses and serial numbers
* Deprecated in About Phone V2
* Information on this page is available in {@link DeviceInfoSettings}
*/ */
@Deprecated
public class Status extends DashboardFragment { public class Status extends DashboardFragment {
private static final String TAG = "DeviceStatus"; private static final String TAG = "DeviceStatus";

View File

@@ -19,12 +19,17 @@ package com.android.settings.deviceinfo;
import android.content.Context; import android.content.Context;
import com.android.settings.core.PreferenceControllerMixin; import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.fuelgauge.PowerUsageSummary;
import com.android.settingslib.core.lifecycle.Lifecycle; import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.deviceinfo.AbstractUptimePreferenceController; import com.android.settingslib.deviceinfo.AbstractUptimePreferenceController;
/** /**
* Concrete subclass of uptime preference controller * Concrete subclass of uptime preference controller
*
* Deprecated in About Phone V2
* Information in this preference is available in {@link PowerUsageSummary}
*/ */
@Deprecated
public class UptimePreferenceController extends AbstractUptimePreferenceController public class UptimePreferenceController extends AbstractUptimePreferenceController
implements PreferenceControllerMixin { implements PreferenceControllerMixin {
public UptimePreferenceController(Context context, Lifecycle lifecycle) { public UptimePreferenceController(Context context, Lifecycle lifecycle) {

View File

@@ -149,7 +149,6 @@ public final class SearchIndexableResources {
addIndex(PrintSettingsFragment.class); addIndex(PrintSettingsFragment.class);
addIndex(DevelopmentSettingsDashboardFragment.class); addIndex(DevelopmentSettingsDashboardFragment.class);
addIndex(DeviceInfoSettings.class); addIndex(DeviceInfoSettings.class);
addIndex(Status.class);
addIndex(LegalSettings.class); addIndex(LegalSettings.class);
addIndex(SystemDashboardFragment.class); addIndex(SystemDashboardFragment.class);
addIndex(ResetDashboardFragment.class); addIndex(ResetDashboardFragment.class);

View File

@@ -1,3 +1,4 @@
com.android.settings.development.DevelopmentSettings com.android.settings.development.DevelopmentSettings
com.android.settings.display.ScreenZoomPreferenceFragmentForSetupWizard com.android.settings.display.ScreenZoomPreferenceFragmentForSetupWizard
com.android.settings.search.indexing.FakeSettingsFragment com.android.settings.search.indexing.FakeSettingsFragment
com.android.settings.deviceinfo.Status

View File

@@ -43,6 +43,7 @@ import com.android.settings.testutils.XmlTestUtils;
import com.android.settings.testutils.shadow.SettingsShadowResources; import com.android.settings.testutils.shadow.SettingsShadowResources;
import com.android.settings.testutils.shadow.SettingsShadowSystemProperties; import com.android.settings.testutils.shadow.SettingsShadowSystemProperties;
import com.android.settings.testutils.shadow.ShadowConnectivityManager; import com.android.settings.testutils.shadow.ShadowConnectivityManager;
import com.android.settings.testutils.shadow.ShadowUserManager;
import com.android.settings.testutils.shadow.ShadowUtils; import com.android.settings.testutils.shadow.ShadowUtils;
import com.android.settingslib.DeviceInfoUtils; import com.android.settingslib.DeviceInfoUtils;
@@ -61,7 +62,7 @@ import java.util.List;
@Config( @Config(
manifest = TestConfig.MANIFEST_PATH, manifest = TestConfig.MANIFEST_PATH,
sdk = TestConfig.SDK_VERSION_O, sdk = TestConfig.SDK_VERSION_O,
shadows = {ShadowUtils.class, ShadowConnectivityManager.class} shadows = {ShadowUtils.class, ShadowConnectivityManager.class, ShadowUserManager.class}
) )
public class DeviceInfoSettingsTest { public class DeviceInfoSettingsTest {
@@ -94,7 +95,7 @@ public class DeviceInfoSettingsTest {
@Test @Test
public void getPrefXml_shouldReturnDeviceInfoXml() { public void getPrefXml_shouldReturnDeviceInfoXml() {
assertThat(mSettings.getPreferenceScreenResId()).isEqualTo(R.xml.device_info_settings); assertThat(mSettings.getPreferenceScreenResId()).isEqualTo(R.xml.device_info_settings_v2);
} }
@Test @Test

View File

@@ -16,6 +16,8 @@
package com.android.settings.deviceinfo; package com.android.settings.deviceinfo;
import static com.android.settings.deviceinfo.DeviceModelPreferenceController.getDeviceModel;
import static com.google.common.truth.Truth.assertThat; import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.any; import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyString; import static org.mockito.Matchers.anyString;
@@ -28,6 +30,7 @@ import android.content.Context;
import android.support.v7.preference.Preference; import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen; import android.support.v7.preference.PreferenceScreen;
import com.android.settings.R;
import com.android.settings.TestConfig; import com.android.settings.TestConfig;
import com.android.settings.testutils.SettingsRobolectricTestRunner; import com.android.settings.testutils.SettingsRobolectricTestRunner;
@@ -37,25 +40,27 @@ import org.junit.runner.RunWith;
import org.mockito.Answers; import org.mockito.Answers;
import org.mockito.Mock; import org.mockito.Mock;
import org.mockito.MockitoAnnotations; import org.mockito.MockitoAnnotations;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config; import org.robolectric.annotation.Config;
@RunWith(SettingsRobolectricTestRunner.class) @RunWith(SettingsRobolectricTestRunner.class)
@Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION_O) @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION_O)
public class DeviceModelPreferenceControllerTest { public class DeviceModelPreferenceControllerTest {
@Mock(answer = Answers.RETURNS_DEEP_STUBS)
private Context mContext;
@Mock(answer = Answers.RETURNS_DEEP_STUBS) @Mock(answer = Answers.RETURNS_DEEP_STUBS)
private Fragment mFragment; private Fragment mFragment;
@Mock @Mock
private Preference mPreference; private Preference mPreference;
@Mock @Mock
private PreferenceScreen mPreferenceScreen; private PreferenceScreen mPreferenceScreen;
private Context mContext;
private DeviceModelPreferenceController mController; private DeviceModelPreferenceController mController;
@Before @Before
public void setUp() { public void setUp() {
MockitoAnnotations.initMocks(this); MockitoAnnotations.initMocks(this);
mContext = RuntimeEnvironment.application;
mController = new DeviceModelPreferenceController(mContext, mFragment); mController = new DeviceModelPreferenceController(mContext, mFragment);
when(mPreferenceScreen.findPreference(mController.getPreferenceKey())) when(mPreferenceScreen.findPreference(mController.getPreferenceKey()))
.thenReturn(mPreference); .thenReturn(mPreference);
@@ -71,7 +76,8 @@ public class DeviceModelPreferenceControllerTest {
public void displayPref_shouldSetSummary() { public void displayPref_shouldSetSummary() {
mController.displayPreference(mPreferenceScreen); mController.displayPreference(mPreferenceScreen);
verify(mPreference).setSummary(anyString()); verify(mPreference).setSummary(mContext.getResources().getString(R.string.model_summary,
getDeviceModel()));
} }
@Test @Test