Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f51fdf64 authored by Jayachandran Chinnakkannu's avatar Jayachandran Chinnakkannu Committed by android-build-merger
Browse files

Merge "[Settings] hide preferred network mode UI" into qt-r1-dev am: 7afb9854

am: b5617b6f

Change-Id: Ia137a3f3454cff7af7c3aa7195eb89c049fadaf2
parents 3f81ee5f b5617b6f
Loading
Loading
Loading
Loading
+3 −7
Original line number Original line Diff line number Diff line
@@ -81,13 +81,9 @@ public class EnabledNetworkModePreferenceController extends
        } else if (carrierConfig == null) {
        } else if (carrierConfig == null) {
            visible = false;
            visible = false;
        } else if (carrierConfig.getBoolean(
        } else if (carrierConfig.getBoolean(
                CarrierConfigManager.KEY_HIDE_CARRIER_NETWORK_SETTINGS_BOOL)) {
                CarrierConfigManager.KEY_HIDE_CARRIER_NETWORK_SETTINGS_BOOL)
            visible = false;
                || carrierConfig.getBoolean(
        } else if (carrierConfig.getBoolean(
                CarrierConfigManager.KEY_HIDE_PREFERRED_NETWORK_TYPE_BOOL)) {
                CarrierConfigManager.KEY_HIDE_PREFERRED_NETWORK_TYPE_BOOL)
                && !telephonyManager.getServiceState().getRoaming()
                && telephonyManager.getServiceState().getDataRegState()
                == ServiceState.STATE_IN_SERVICE) {
            visible = false;
            visible = false;
        } else if (carrierConfig.getBoolean(CarrierConfigManager.KEY_WORLD_PHONE_BOOL)) {
        } else if (carrierConfig.getBoolean(CarrierConfigManager.KEY_WORLD_PHONE_BOOL)) {
            visible = false;
            visible = false;
+3 −7
Original line number Original line Diff line number Diff line
@@ -58,13 +58,9 @@ public class PreferredNetworkModePreferenceController extends TelephonyBasePrefe
        } else if (carrierConfig == null) {
        } else if (carrierConfig == null) {
            visible = false;
            visible = false;
        } else if (carrierConfig.getBoolean(
        } else if (carrierConfig.getBoolean(
                CarrierConfigManager.KEY_HIDE_CARRIER_NETWORK_SETTINGS_BOOL)) {
                CarrierConfigManager.KEY_HIDE_CARRIER_NETWORK_SETTINGS_BOOL)
            visible = false;
                || carrierConfig.getBoolean(
        } else if (carrierConfig.getBoolean(
                CarrierConfigManager.KEY_HIDE_PREFERRED_NETWORK_TYPE_BOOL)) {
                CarrierConfigManager.KEY_HIDE_PREFERRED_NETWORK_TYPE_BOOL)
                && !telephonyManager.getServiceState().getRoaming()
                && telephonyManager.getServiceState().getDataRegState()
                == ServiceState.STATE_IN_SERVICE) {
            visible = false;
            visible = false;
        } else if (carrierConfig.getBoolean(CarrierConfigManager.KEY_WORLD_PHONE_BOOL)) {
        } else if (carrierConfig.getBoolean(CarrierConfigManager.KEY_WORLD_PHONE_BOOL)) {
            visible = true;
            visible = true;
+24 −0
Original line number Original line Diff line number Diff line
@@ -29,12 +29,14 @@ import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.when;


import android.content.Context;
import android.content.Context;
import android.net.Uri;
import android.net.Uri;
import android.os.PersistableBundle;
import android.os.PersistableBundle;
import android.provider.Settings;
import android.provider.Settings;
import android.telephony.CarrierConfigManager;
import android.telephony.CarrierConfigManager;
import android.telephony.ServiceState;
import android.telephony.SubscriptionManager;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import android.telephony.TelephonyManager;


@@ -64,6 +66,8 @@ public class EnabledNetworkModePreferenceControllerTest {
    private TelephonyManager mInvalidTelephonyManager;
    private TelephonyManager mInvalidTelephonyManager;
    @Mock
    @Mock
    private CarrierConfigManager mCarrierConfigManager;
    private CarrierConfigManager mCarrierConfigManager;
    @Mock
    private ServiceState mServiceState;


    private PersistableBundle mPersistableBundle;
    private PersistableBundle mPersistableBundle;
    private EnabledNetworkModePreferenceController mController;
    private EnabledNetworkModePreferenceController mController;
@@ -85,6 +89,7 @@ public class EnabledNetworkModePreferenceControllerTest {
        doReturn(mInvalidTelephonyManager).when(mTelephonyManager).createForSubscriptionId(
        doReturn(mInvalidTelephonyManager).when(mTelephonyManager).createForSubscriptionId(
                SubscriptionManager.INVALID_SUBSCRIPTION_ID);
                SubscriptionManager.INVALID_SUBSCRIPTION_ID);
        doReturn(mContext).when(mContext).createPackageContext(anyString(), anyInt());
        doReturn(mContext).when(mContext).createPackageContext(anyString(), anyInt());
        doReturn(mServiceState).when(mTelephonyManager).getServiceState();
        mPersistableBundle = new PersistableBundle();
        mPersistableBundle = new PersistableBundle();
        doReturn(mPersistableBundle).when(mCarrierConfigManager).getConfigForSubId(SUB_ID);
        doReturn(mPersistableBundle).when(mCarrierConfigManager).getConfigForSubId(SUB_ID);


@@ -104,6 +109,25 @@ public class EnabledNetworkModePreferenceControllerTest {
        assertThat(mController.getAvailabilityStatus()).isEqualTo(CONDITIONALLY_UNAVAILABLE);
        assertThat(mController.getAvailabilityStatus()).isEqualTo(CONDITIONALLY_UNAVAILABLE);
    }
    }


    @Test
    public void getAvailabilityStatus_hidePreferredNetworkType_returnUnavailable() {
        mPersistableBundle.putBoolean(CarrierConfigManager.KEY_HIDE_PREFERRED_NETWORK_TYPE_BOOL,
                true);

        when(mServiceState.getState()).thenReturn(ServiceState.STATE_OUT_OF_SERVICE);
        when(mServiceState.getDataRegState()).thenReturn(ServiceState.STATE_OUT_OF_SERVICE);
        assertThat(mController.getAvailabilityStatus()).isEqualTo(CONDITIONALLY_UNAVAILABLE);

        when(mServiceState.getState()).thenReturn(ServiceState.STATE_IN_SERVICE);
        when(mServiceState.getDataRegState()).thenReturn(ServiceState.STATE_IN_SERVICE);

        when(mServiceState.getRoaming()).thenReturn(false);
        assertThat(mController.getAvailabilityStatus()).isEqualTo(CONDITIONALLY_UNAVAILABLE);

        when(mServiceState.getRoaming()).thenReturn(true);
        assertThat(mController.getAvailabilityStatus()).isEqualTo(CONDITIONALLY_UNAVAILABLE);
    }

    @Test
    @Test
    public void getAvailabilityStatus_notWorldPhone_returnAvailable() {
    public void getAvailabilityStatus_notWorldPhone_returnAvailable() {
        mPersistableBundle.putBoolean(CarrierConfigManager.KEY_HIDE_CARRIER_NETWORK_SETTINGS_BOOL,
        mPersistableBundle.putBoolean(CarrierConfigManager.KEY_HIDE_CARRIER_NETWORK_SETTINGS_BOOL,
+24 −0
Original line number Original line Diff line number Diff line
@@ -23,11 +23,13 @@ import static com.google.common.truth.Truth.assertThat;


import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.when;


import android.content.Context;
import android.content.Context;
import android.os.PersistableBundle;
import android.os.PersistableBundle;
import android.provider.Settings;
import android.provider.Settings;
import android.telephony.CarrierConfigManager;
import android.telephony.CarrierConfigManager;
import android.telephony.ServiceState;
import android.telephony.SubscriptionManager;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import android.telephony.TelephonyManager;


@@ -54,6 +56,8 @@ public class PreferredNetworkModePreferenceControllerTest {
    private TelephonyManager mInvalidTelephonyManager;
    private TelephonyManager mInvalidTelephonyManager;
    @Mock
    @Mock
    private CarrierConfigManager mCarrierConfigManager;
    private CarrierConfigManager mCarrierConfigManager;
    @Mock
    private ServiceState mServiceState;


    private PersistableBundle mPersistableBundle;
    private PersistableBundle mPersistableBundle;
    private PreferredNetworkModePreferenceController mController;
    private PreferredNetworkModePreferenceController mController;
@@ -71,6 +75,7 @@ public class PreferredNetworkModePreferenceControllerTest {
        doReturn(mTelephonyManager).when(mTelephonyManager).createForSubscriptionId(SUB_ID);
        doReturn(mTelephonyManager).when(mTelephonyManager).createForSubscriptionId(SUB_ID);
        doReturn(mInvalidTelephonyManager).when(mTelephonyManager).createForSubscriptionId(
        doReturn(mInvalidTelephonyManager).when(mTelephonyManager).createForSubscriptionId(
                SubscriptionManager.INVALID_SUBSCRIPTION_ID);
                SubscriptionManager.INVALID_SUBSCRIPTION_ID);
        doReturn(mServiceState).when(mTelephonyManager).getServiceState();
        mPersistableBundle = new PersistableBundle();
        mPersistableBundle = new PersistableBundle();
        doReturn(mPersistableBundle).when(mCarrierConfigManager).getConfigForSubId(SUB_ID);
        doReturn(mPersistableBundle).when(mCarrierConfigManager).getConfigForSubId(SUB_ID);


@@ -99,6 +104,25 @@ public class PreferredNetworkModePreferenceControllerTest {
        assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE);
        assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE);
    }
    }


    @Test
    public void getAvailabilityStatus_hidePreferredNetworkType_returnUnavailable() {
        mPersistableBundle.putBoolean(CarrierConfigManager.KEY_HIDE_PREFERRED_NETWORK_TYPE_BOOL,
                true);

        when(mServiceState.getState()).thenReturn(ServiceState.STATE_OUT_OF_SERVICE);
        when(mServiceState.getDataRegState()).thenReturn(ServiceState.STATE_OUT_OF_SERVICE);
        assertThat(mController.getAvailabilityStatus()).isEqualTo(CONDITIONALLY_UNAVAILABLE);

        when(mServiceState.getState()).thenReturn(ServiceState.STATE_IN_SERVICE);
        when(mServiceState.getDataRegState()).thenReturn(ServiceState.STATE_IN_SERVICE);

        when(mServiceState.getRoaming()).thenReturn(false);
        assertThat(mController.getAvailabilityStatus()).isEqualTo(CONDITIONALLY_UNAVAILABLE);

        when(mServiceState.getRoaming()).thenReturn(true);
        assertThat(mController.getAvailabilityStatus()).isEqualTo(CONDITIONALLY_UNAVAILABLE);
    }

    @Test
    @Test
    public void updateState_updateByNetworkMode() {
    public void updateState_updateByNetworkMode() {
        Settings.Global.putInt(mContext.getContentResolver(),
        Settings.Global.putInt(mContext.getContentResolver(),