Enable/disable a few things in debuggable builds

- Feature flag dashboard is now only ON in debuggable builds
- Draw overlay is enabled in debuggable builds for a11y testing

Fixes: 129060539
Fixes: 129041251
Test: robotests
Change-Id: Ic799101c8ca6cbcd26fe02b6a567f223800805ab
This commit is contained in:
Fan Zhang
2019-03-26 11:39:47 -07:00
parent cd0b74d730
commit d151c40eea
4 changed files with 41 additions and 6 deletions

View File

@@ -17,6 +17,7 @@
package com.android.settings.development.featureflags;
import static com.android.settings.core.BasePreferenceController.AVAILABLE;
import static com.android.settings.core.BasePreferenceController.UNSUPPORTED_ON_DEVICE;
import static com.google.common.truth.Truth.assertThat;
@@ -26,6 +27,8 @@ import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import android.content.Context;
import android.os.Build;
import android.os.SystemProperties;
import androidx.preference.PreferenceCategory;
import androidx.preference.PreferenceScreen;
@@ -37,6 +40,7 @@ import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.RuntimeEnvironment;
import org.robolectric.util.ReflectionHelpers;
@RunWith(RobolectricTestRunner.class)
public class FeatureFlagPreferenceControllerTest {
@@ -59,10 +63,18 @@ public class FeatureFlagPreferenceControllerTest {
}
@Test
public void getAvailability_available() {
public void getAvailability_debug_available() {
ReflectionHelpers.setStaticField(Build.class, "IS_DEBUGGABLE", true);
assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE);
}
@Test
public void getAvailability_user_unavailable() {
ReflectionHelpers.setStaticField(Build.class, "IS_DEBUGGABLE", false);
assertThat(mController.getAvailabilityStatus()).isEqualTo(UNSUPPORTED_ON_DEVICE);
}
@Test
public void onStart_shouldRefreshFeatureFlags() {
mController.onStart();