diff --git a/src/com/android/settings/deviceinfo/PhoneNumberPreferenceController.java b/src/com/android/settings/deviceinfo/PhoneNumberPreferenceController.java index 93f75bfb327..4eb2ddd00ad 100644 --- a/src/com/android/settings/deviceinfo/PhoneNumberPreferenceController.java +++ b/src/com/android/settings/deviceinfo/PhoneNumberPreferenceController.java @@ -58,7 +58,7 @@ public class PhoneNumberPreferenceController extends AbstractPreferenceControlle @Override public boolean isAvailable() { - return true; + return mTelephonyManager.isVoiceCapable(); } @Override diff --git a/tests/robotests/src/com/android/settings/deviceinfo/PhoneNumberPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/deviceinfo/PhoneNumberPreferenceControllerTest.java index f30425bd214..0b83359f91a 100644 --- a/tests/robotests/src/com/android/settings/deviceinfo/PhoneNumberPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/deviceinfo/PhoneNumberPreferenceControllerTest.java @@ -16,6 +16,9 @@ package com.android.settings.deviceinfo; +import static junit.framework.Assert.assertFalse; +import static junit.framework.Assert.assertTrue; + import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.spy; @@ -73,6 +76,20 @@ public class PhoneNumberPreferenceControllerTest { when(mPreference.isVisible()).thenReturn(true); } + @Test + public void isAvailable_shouldBeTrueIfCallCapable() { + when(mTelephonyManager.isVoiceCapable()).thenReturn(true); + + assertTrue(mController.isAvailable()); + } + + @Test + public void isAvailable_shouldBeFalseIfNotCallCapable() { + when(mTelephonyManager.isVoiceCapable()).thenReturn(false); + + assertFalse(mController.isAvailable()); + } + @Test public void displayPreference_multiSim_shouldAddSecondPreference() { when(mTelephonyManager.getPhoneCount()).thenReturn(2);