diff --git a/res/values/config.xml b/res/values/config.xml
index 222215671d2..876af371986 100755
--- a/res/values/config.xml
+++ b/res/values/config.xml
@@ -456,4 +456,7 @@
false
+
+
+ false
diff --git a/src/com/android/settings/development/EnhancedConnectivityPreferenceController.java b/src/com/android/settings/development/EnhancedConnectivityPreferenceController.java
index dc6597384d2..54cfdc630bc 100644
--- a/src/com/android/settings/development/EnhancedConnectivityPreferenceController.java
+++ b/src/com/android/settings/development/EnhancedConnectivityPreferenceController.java
@@ -23,6 +23,7 @@ import androidx.preference.Preference;
import androidx.preference.SwitchPreference;
import com.android.internal.annotations.VisibleForTesting;
+import com.android.settings.R;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settingslib.development.DeveloperOptionsPreferenceController;
@@ -70,6 +71,11 @@ public class EnhancedConnectivityPreferenceController extends
enhancedConnectivityEnabled == ENHANCED_CONNECTIVITY_ON);
}
+ @Override
+ public boolean isAvailable() {
+ return mContext.getResources().getBoolean(R.bool.config_show_enhanced_connectivity);
+ }
+
@Override
protected void onDeveloperOptionsSwitchDisabled() {
super.onDeveloperOptionsSwitchDisabled();
diff --git a/tests/robotests/src/com/android/settings/development/EnhancedConnectivityPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/development/EnhancedConnectivityPreferenceControllerTest.java
index 171fc6bc5de..db0b0db2dcc 100644
--- a/tests/robotests/src/com/android/settings/development/EnhancedConnectivityPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/development/EnhancedConnectivityPreferenceControllerTest.java
@@ -27,16 +27,19 @@ import android.provider.Settings;
import androidx.preference.PreferenceScreen;
import androidx.preference.SwitchPreference;
+import com.android.settings.R;
+
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
+import org.mockito.Answers;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.robolectric.RobolectricTestRunner;
@RunWith(RobolectricTestRunner.class)
public class EnhancedConnectivityPreferenceControllerTest {
- @Mock
+ @Mock(answer = Answers.RETURNS_DEEP_STUBS)
private Context mContext;
@Mock
@@ -97,6 +100,29 @@ public class EnhancedConnectivityPreferenceControllerTest {
assertThat(isSettingEnabled()).isTrue();
}
+ @Test
+ public void isAvailable_enhancedConnectivityShown_shouldReturnTrue() {
+ enableEnhancedConnectivityPreference(true);
+
+ boolean availability = mController.isAvailable();
+
+ assertThat(availability).isTrue();
+ }
+
+ @Test
+ public void isAvailable_enhancedConnectivityNotShown_shouldReturnFalse() {
+ enableEnhancedConnectivityPreference(false);
+
+ boolean availability = mController.isAvailable();
+
+ assertThat(availability).isFalse();
+ }
+
+ private void enableEnhancedConnectivityPreference(boolean enable) {
+ when(mContext.getResources().getBoolean(R.bool.config_show_enhanced_connectivity))
+ .thenReturn(enable);
+ }
+
private boolean isSettingEnabled() {
return Settings.Global.getInt(mContext.getContentResolver(),
Settings.Global.ENHANCED_CONNECTIVITY_ENABLED,