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

Commit f8058733 authored by Andrew Sapperstein's avatar Andrew Sapperstein Committed by android-build-merger
Browse files

Merge "Update summary for mobile data toggle for CBRS." into qt-dev

am: cf964643

Change-Id: I01bb48fc8bf405d6d807630e01e1f03a14432f9f
parents 8402c8c4 cf964643
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -30,6 +30,7 @@ import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;
import androidx.preference.SwitchPreference;

import com.android.settings.R;
import com.android.settings.network.MobileDataContentObserver;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnStart;
@@ -120,7 +121,13 @@ public class MobileDataPreferenceController extends TelephonyTogglePreferenceCon
    @Override
    public void updateState(Preference preference) {
        super.updateState(preference);
        preference.setEnabled(!isOpportunistic());
        if (isOpportunistic()) {
            preference.setEnabled(false);
            preference.setSummary(R.string.mobile_data_settings_summary_auto_switch);
        } else {
            preference.setEnabled(true);
            preference.setSummary(R.string.mobile_data_settings_summary);
        }
    }

    private boolean isOpportunistic() {
+16 −0
Original line number Diff line number Diff line
@@ -33,6 +33,8 @@ import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;
import androidx.preference.SwitchPreference;

import com.android.settings.R;

import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -165,5 +167,19 @@ public class MobileDataPreferenceControllerTest {
        mController.updateState(mPreference);

        assertThat(mPreference.isEnabled()).isFalse();
        assertThat(mPreference.getSummary())
                .isEqualTo(mContext.getString(R.string.mobile_data_settings_summary_auto_switch));
    }

    @Test
    public void updateState_notOpportunistic_enabled() {
        doReturn(mSubscriptionInfo).when(mSubscriptionManager).getActiveSubscriptionInfo(SUB_ID);
        mController.init(mFragmentManager, SUB_ID);
        doReturn(false).when(mSubscriptionInfo).isOpportunistic();
        mController.updateState(mPreference);

        assertThat(mPreference.isEnabled()).isTrue();
        assertThat(mPreference.getSummary())
                .isEqualTo(mContext.getString(R.string.mobile_data_settings_summary));
    }
}