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

Commit c78e4d1e authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Remove disable mobile data confirm dialog for single sim." into qt-dev

parents 2b60204d 56c6f89a
Loading
Loading
Loading
Loading
+9 −20
Original line number Diff line number Diff line
@@ -17,27 +17,24 @@
package com.android.settings.network.telephony;

import android.content.Context;
import android.database.ContentObserver;
import android.net.Uri;
import android.os.Handler;
import android.os.Looper;
import android.provider.Settings;
import android.telephony.SubscriptionInfo;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import android.text.TextUtils;

import com.android.settings.network.MobileDataContentObserver;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnStart;
import com.android.settingslib.core.lifecycle.events.OnStop;

import androidx.annotation.VisibleForTesting;
import androidx.fragment.app.FragmentManager;
import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;
import androidx.preference.SwitchPreference;

import com.android.settings.network.MobileDataContentObserver;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnStart;
import com.android.settingslib.core.lifecycle.events.OnStop;

/**
 * Preference controller for "Mobile data"
 */
@@ -144,18 +141,10 @@ public class MobileDataPreferenceController extends TelephonyTogglePreferenceCon
        final int defaultSubId = mSubscriptionManager.getDefaultDataSubscriptionId();
        final boolean needToDisableOthers = mSubscriptionManager
                .isActiveSubscriptionId(defaultSubId) && defaultSubId != mSubId;
        if (enableData) {
            if (isMultiSim && needToDisableOthers) {
        if (enableData && isMultiSim && needToDisableOthers) {
            mDialogType = MobileDataDialogFragment.TYPE_MULTI_SIM_DIALOG;
            return true;
        }
        } else {
            if (!isMultiSim) {
                mDialogType = MobileDataDialogFragment.TYPE_DISABLE_DIALOG;
                return true;
            }
        }

        return false;
    }

+9 −11
Original line number Diff line number Diff line
@@ -21,7 +21,6 @@ import static com.android.settings.core.BasePreferenceController.CONDITIONALLY_U
import static com.google.common.truth.Truth.assertThat;

import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;

@@ -30,6 +29,10 @@ import android.telephony.SubscriptionInfo;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;

import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;
import androidx.preference.SwitchPreference;

import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -40,10 +43,6 @@ import org.robolectric.RuntimeEnvironment;
import org.robolectric.annotation.Config;
import org.robolectric.shadows.ShadowSubscriptionManager;

import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;
import androidx.preference.SwitchPreference;

@RunWith(RobolectricTestRunner.class)
@Config(shadows = ShadowSubscriptionManager.class)
public class MobileDataPreferenceControllerTest {
@@ -94,14 +93,13 @@ public class MobileDataPreferenceControllerTest {
    }

    @Test
    public void isDialogNeeded_disableSingleSim_returnTrue() {
    public void isDialogNeeded_disableSingleSim_returnFalse() {
        doReturn(true).when(mTelephonyManager).isDataEnabled();
        doReturn(mSubscriptionInfo).when(mSubscriptionManager).getActiveSubscriptionInfo(SUB_ID);
        doReturn(mSubscriptionInfo).when(mSubscriptionManager).getDefaultDataSubscriptionInfo();
        doReturn(1).when(mTelephonyManager).getSimCount();

        assertThat(mController.isDialogNeeded()).isTrue();
        assertThat(mController.mDialogType).isEqualTo(MobileDataDialogFragment.TYPE_DISABLE_DIALOG);
        assertThat(mController.isDialogNeeded()).isFalse();
    }

    @Test
@@ -127,7 +125,7 @@ public class MobileDataPreferenceControllerTest {
    }

    @Test
    public void onPreferenceChange_needDialog_doNothing() {
    public void onPreferenceChange_singleSim_On_shouldEnableData() {
        doReturn(true).when(mTelephonyManager).isDataEnabled();
        doReturn(mSubscriptionInfo).when(mSubscriptionManager).getActiveSubscriptionInfo(SUB_ID);
        doReturn(mSubscriptionInfo).when(mSubscriptionManager).getDefaultDataSubscriptionInfo();
@@ -135,11 +133,11 @@ public class MobileDataPreferenceControllerTest {

        mController.onPreferenceChange(mPreference, true);

        verify(mTelephonyManager, never()).setDataEnabled(true);
        verify(mTelephonyManager).setDataEnabled(true);
    }

    @Test
    public void onPreferenceChange_notNeedDialog_update() {
    public void onPreferenceChange_multiSim_On_shouldEnableData() {
        doReturn(true).when(mTelephonyManager).isDataEnabled();
        doReturn(mSubscriptionInfo).when(mSubscriptionManager).getActiveSubscriptionInfo(SUB_ID);
        doReturn(mSubscriptionInfo).when(mSubscriptionManager).getDefaultDataSubscriptionInfo();