Update feature flag dashboard UI to display all features

Bug: 36222960
Test: robotests
Change-Id: I1aea8f32df9bd8ae24708374b60d173953a7c266
This commit is contained in:
Fan Zhang
2017-12-07 12:48:12 -08:00
parent d7d5754cfd
commit 3ba0381567
8 changed files with 25 additions and 17 deletions

View File

@@ -84,7 +84,7 @@ public class DeviceInfoSettings extends DashboardFragment implements Indexable {
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
final Bundle arguments = getArguments();
if (FeatureFlagUtils.isEnabled(getContext(), DEVICE_INFO_V2) || true) {
if (FeatureFlagUtils.isEnabled(getContext(), DEVICE_INFO_V2)) {
// Do not override initial expand children count if we come from
// search (EXTRA_FRAGMENT_ARG_KEY is set) - we need to display every if entry point
// is search.
@@ -119,7 +119,7 @@ public class DeviceInfoSettings extends DashboardFragment implements Indexable {
@Override
protected int getPreferenceScreenResId() {
return FeatureFlagUtils.isEnabled(getContext(), DEVICE_INFO_V2) || true
return FeatureFlagUtils.isEnabled(getContext(), DEVICE_INFO_V2)
? R.xml.device_info_settings_v2 : R.xml.device_info_settings;
}
@@ -156,7 +156,7 @@ public class DeviceInfoSettings extends DashboardFragment implements Indexable {
private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
Activity activity, Fragment fragment, Lifecycle lifecycle) {
if (FeatureFlagUtils.isEnabled(context, DEVICE_INFO_V2) || true) {
if (FeatureFlagUtils.isEnabled(context, DEVICE_INFO_V2)) {
final List<AbstractPreferenceController> controllers = new ArrayList<>();
// Device name
@@ -220,7 +220,7 @@ public class DeviceInfoSettings extends DashboardFragment implements Indexable {
public List<SearchIndexableResource> getXmlResourcesToIndex(
Context context, boolean enabled) {
final SearchIndexableResource sir = new SearchIndexableResource(context);
sir.xmlResId = FeatureFlagUtils.isEnabled(context, DEVICE_INFO_V2) || true
sir.xmlResId = FeatureFlagUtils.isEnabled(context, DEVICE_INFO_V2)
? R.xml.device_info_settings_v2 : R.xml.device_info_settings;
return Arrays.asList(sir);
}

View File

@@ -92,7 +92,7 @@ public class SuggestionFeatureProviderImpl implements SuggestionFeatureProvider
}
private static boolean isV2Enabled(Context context) {
return FeatureFlagUtils.isEnabled(context, SUGGESTIONS_V2) || true;
return FeatureFlagUtils.isEnabled(context, SUGGESTIONS_V2);
}
@Override

View File

@@ -17,7 +17,6 @@
package com.android.settings.development.featureflags;
import android.content.Context;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
import android.util.FeatureFlagUtils;
@@ -68,14 +67,8 @@ public class FeatureFlagsPreferenceController extends AbstractPreferenceControll
}
mScreen.removeAll();
final Context prefContext = mScreen.getContext();
for (String prefixedFeature : featureMap.keySet()) {
if (prefixedFeature.startsWith(FeatureFlagUtils.FFLAG_PREFIX)
&& !prefixedFeature.startsWith(FeatureFlagUtils.FFLAG_OVERRIDE_PREFIX)) {
final String feature = prefixedFeature.substring(
FeatureFlagUtils.FFLAG_PREFIX.length());
final Preference pref = new FeatureFlagPreference(prefContext, feature);
mScreen.addPreference(pref);
}
for (String feature : featureMap.keySet()) {
mScreen.addPreference(new FeatureFlagPreference(prefContext, feature));
}
}
}

View File

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

View File

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

View File

@@ -94,7 +94,12 @@ public class DeviceInfoSettingsTest {
}
@Test
@Config(shadows = {
SettingsShadowSystemProperties.class
})
public void getPrefXml_shouldReturnDeviceInfoXml() {
SystemProperties.set(FeatureFlagUtils.FFLAG_OVERRIDE_PREFIX + FeatureFlags.DEVICE_INFO_V2,
"true");
assertThat(mSettings.getPreferenceScreenResId()).isEqualTo(R.xml.device_info_settings_v2);
}

View File

@@ -21,6 +21,7 @@ import static android.arch.lifecycle.Lifecycle.Event.ON_START;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Mockito.atLeastOnce;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@@ -70,6 +71,6 @@ public class FeatureFlagPreferenceControllerTest {
mLifecycle.handleLifecycleEvent(ON_START);
verify(mScreen).removeAll();
verify(mScreen).addPreference(any(FeatureFlagPreference.class));
verify(mScreen, atLeastOnce()).addPreference(any(FeatureFlagPreference.class));
}
}

View File

@@ -26,12 +26,16 @@ import static org.mockito.Mockito.when;
import android.app.Fragment;
import android.content.Context;
import android.os.SystemProperties;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
import android.util.FeatureFlagUtils;
import com.android.settings.R;
import com.android.settings.TestConfig;
import com.android.settings.core.FeatureFlags;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import com.android.settings.testutils.shadow.SettingsShadowSystemProperties;
import org.junit.Before;
import org.junit.Test;
@@ -72,7 +76,12 @@ public class DeviceModelPreferenceControllerTest {
}
@Test
@Config(shadows = {
SettingsShadowSystemProperties.class
})
public void displayPref_shouldSetSummary() {
SystemProperties.set(FeatureFlagUtils.FFLAG_OVERRIDE_PREFIX + FeatureFlags.DEVICE_INFO_V2,
"true");
mController.displayPreference(mPreferenceScreen);
verify(mPreference).setSummary(mContext.getResources().getString(R.string.model_summary,