Loading src/com/android/settings/network/PrivateDnsPreferenceController.java +6 −3 Original line number Diff line number Diff line Loading @@ -85,9 +85,12 @@ public class PrivateDnsPreferenceController extends BasePreferenceController @Override public int getAvailabilityStatus() { return mContext.getResources().getBoolean(R.bool.config_show_private_dns_settings) ? AVAILABLE : UNSUPPORTED_ON_DEVICE; if (!mContext.getResources().getBoolean(R.bool.config_show_private_dns_settings)) { return UNSUPPORTED_ON_DEVICE; } final UserManager userManager = mContext.getSystemService(UserManager.class); if (userManager.isGuestUser()) return DISABLED_FOR_USER; return AVAILABLE; } @Override Loading tests/robotests/src/com/android/settings/network/PrivateDnsPreferenceControllerTest.java +11 −0 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import static androidx.lifecycle.Lifecycle.Event.ON_START; import static androidx.lifecycle.Lifecycle.Event.ON_STOP; import static com.android.settings.core.BasePreferenceController.AVAILABLE; import static com.android.settings.core.BasePreferenceController.DISABLED_FOR_USER; import static com.android.settings.core.BasePreferenceController.UNSUPPORTED_ON_DEVICE; import static com.google.common.truth.Truth.assertThat; Loading @@ -35,6 +36,7 @@ import static org.mockito.ArgumentMatchers.nullable; import static org.mockito.Mockito.CALLS_REAL_METHODS; import static org.mockito.Mockito.atLeastOnce; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.reset; import static org.mockito.Mockito.spy; Loading Loading @@ -109,6 +111,8 @@ public class PrivateDnsPreferenceControllerTest { private Network mNetwork; @Mock private Preference mPreference; @Mock private UserManager mUserManager; @Captor private ArgumentCaptor<NetworkCallback> mCallbackCaptor; private PrivateDnsPreferenceController mController; Loading @@ -127,6 +131,7 @@ public class PrivateDnsPreferenceControllerTest { mShadowContentResolver = Shadow.extract(mContentResolver); when(mContext.getSystemService(Context.CONNECTIVITY_SERVICE)) .thenReturn(mConnectivityManager); when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager); doNothing().when(mConnectivityManager).registerDefaultNetworkCallback( mCallbackCaptor.capture(), nullable(Handler.class)); Loading Loading @@ -173,6 +178,12 @@ public class PrivateDnsPreferenceControllerTest { assertThat(mController.getAvailabilityStatus()).isEqualTo(UNSUPPORTED_ON_DEVICE); } @Test public void getAvailabilityStatus_disabledForGuestUser() { doReturn(true).when(mUserManager).isGuestUser(); assertThat(mController.getAvailabilityStatus()).isEqualTo(DISABLED_FOR_USER); } @Test public void goThroughLifecycle_shouldRegisterUnregisterSettingsObserver() { mLifecycle.handleLifecycleEvent(ON_START); Loading Loading
src/com/android/settings/network/PrivateDnsPreferenceController.java +6 −3 Original line number Diff line number Diff line Loading @@ -85,9 +85,12 @@ public class PrivateDnsPreferenceController extends BasePreferenceController @Override public int getAvailabilityStatus() { return mContext.getResources().getBoolean(R.bool.config_show_private_dns_settings) ? AVAILABLE : UNSUPPORTED_ON_DEVICE; if (!mContext.getResources().getBoolean(R.bool.config_show_private_dns_settings)) { return UNSUPPORTED_ON_DEVICE; } final UserManager userManager = mContext.getSystemService(UserManager.class); if (userManager.isGuestUser()) return DISABLED_FOR_USER; return AVAILABLE; } @Override Loading
tests/robotests/src/com/android/settings/network/PrivateDnsPreferenceControllerTest.java +11 −0 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import static androidx.lifecycle.Lifecycle.Event.ON_START; import static androidx.lifecycle.Lifecycle.Event.ON_STOP; import static com.android.settings.core.BasePreferenceController.AVAILABLE; import static com.android.settings.core.BasePreferenceController.DISABLED_FOR_USER; import static com.android.settings.core.BasePreferenceController.UNSUPPORTED_ON_DEVICE; import static com.google.common.truth.Truth.assertThat; Loading @@ -35,6 +36,7 @@ import static org.mockito.ArgumentMatchers.nullable; import static org.mockito.Mockito.CALLS_REAL_METHODS; import static org.mockito.Mockito.atLeastOnce; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.reset; import static org.mockito.Mockito.spy; Loading Loading @@ -109,6 +111,8 @@ public class PrivateDnsPreferenceControllerTest { private Network mNetwork; @Mock private Preference mPreference; @Mock private UserManager mUserManager; @Captor private ArgumentCaptor<NetworkCallback> mCallbackCaptor; private PrivateDnsPreferenceController mController; Loading @@ -127,6 +131,7 @@ public class PrivateDnsPreferenceControllerTest { mShadowContentResolver = Shadow.extract(mContentResolver); when(mContext.getSystemService(Context.CONNECTIVITY_SERVICE)) .thenReturn(mConnectivityManager); when(mContext.getSystemService(UserManager.class)).thenReturn(mUserManager); doNothing().when(mConnectivityManager).registerDefaultNetworkCallback( mCallbackCaptor.capture(), nullable(Handler.class)); Loading Loading @@ -173,6 +178,12 @@ public class PrivateDnsPreferenceControllerTest { assertThat(mController.getAvailabilityStatus()).isEqualTo(UNSUPPORTED_ON_DEVICE); } @Test public void getAvailabilityStatus_disabledForGuestUser() { doReturn(true).when(mUserManager).isGuestUser(); assertThat(mController.getAvailabilityStatus()).isEqualTo(DISABLED_FOR_USER); } @Test public void goThroughLifecycle_shouldRegisterUnregisterSettingsObserver() { mLifecycle.handleLifecycleEvent(ON_START); Loading