Merge "[Telephony Setting] Enable the Settings test case" into rvc-dev am: 997a458e76
Change-Id: Id9d87fb99e8329572568e064518466017c030fb5
This commit is contained in:
@@ -25,6 +25,7 @@ import android.net.Uri;
|
|||||||
import android.provider.SettingsSlicesContract;
|
import android.provider.SettingsSlicesContract;
|
||||||
import android.telephony.TelephonyManager;
|
import android.telephony.TelephonyManager;
|
||||||
|
|
||||||
|
import androidx.annotation.VisibleForTesting;
|
||||||
import androidx.fragment.app.Fragment;
|
import androidx.fragment.app.Fragment;
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
@@ -70,6 +71,11 @@ public class AirplaneModePreferenceController extends TogglePreferenceController
|
|||||||
mFragment = hostFragment;
|
mFragment = hostFragment;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@VisibleForTesting
|
||||||
|
void setAirplaneModeEnabler(AirplaneModeEnabler airplaneModeEnabler) {
|
||||||
|
mAirplaneModeEnabler = airplaneModeEnabler;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean handlePreferenceTreeClick(Preference preference) {
|
public boolean handlePreferenceTreeClick(Preference preference) {
|
||||||
if (KEY_AIRPLANE_MODE.equals(preference.getKey())
|
if (KEY_AIRPLANE_MODE.equals(preference.getKey())
|
||||||
|
@@ -32,13 +32,13 @@ import androidx.lifecycle.LifecycleOwner;
|
|||||||
import androidx.preference.PreferenceManager;
|
import androidx.preference.PreferenceManager;
|
||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
|
|
||||||
|
import com.android.settings.AirplaneModeEnabler;
|
||||||
import com.android.settings.core.BasePreferenceController;
|
import com.android.settings.core.BasePreferenceController;
|
||||||
import com.android.settings.testutils.FakeFeatureFactory;
|
import com.android.settings.testutils.FakeFeatureFactory;
|
||||||
import com.android.settingslib.RestrictedSwitchPreference;
|
import com.android.settingslib.RestrictedSwitchPreference;
|
||||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||||
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Ignore;
|
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.mockito.Mock;
|
import org.mockito.Mock;
|
||||||
@@ -55,7 +55,8 @@ public class AirplaneModePreferenceControllerTest {
|
|||||||
|
|
||||||
@Mock
|
@Mock
|
||||||
private PackageManager mPackageManager;
|
private PackageManager mPackageManager;
|
||||||
|
@Mock
|
||||||
|
private AirplaneModeEnabler mAirplaneModeEnabler;
|
||||||
private Context mContext;
|
private Context mContext;
|
||||||
private ContentResolver mResolver;
|
private ContentResolver mResolver;
|
||||||
private PreferenceManager mPreferenceManager;
|
private PreferenceManager mPreferenceManager;
|
||||||
@@ -126,38 +127,18 @@ public class AirplaneModePreferenceControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Ignore
|
|
||||||
public void airplaneModePreference_testSetValue_updatesCorrectly() {
|
public void airplaneModePreference_testSetValue_updatesCorrectly() {
|
||||||
// Airplane mode default off
|
|
||||||
Settings.Global.putInt(mResolver, Settings.Global.AIRPLANE_MODE_ON, OFF);
|
|
||||||
|
|
||||||
mController.displayPreference(mScreen);
|
|
||||||
mController.onResume();
|
|
||||||
|
|
||||||
assertThat(mPreference.isChecked()).isFalse();
|
|
||||||
|
|
||||||
assertThat(mController.isChecked()).isFalse();
|
|
||||||
|
|
||||||
// Set airplane mode ON by setChecked
|
// Set airplane mode ON by setChecked
|
||||||
boolean updated = mController.setChecked(true);
|
mController.setAirplaneModeEnabler(mAirplaneModeEnabler);
|
||||||
assertThat(updated).isTrue();
|
assertThat(mController.setChecked(true)).isTrue();
|
||||||
|
|
||||||
// Check return value if set same status.
|
// Check return value if set same status.
|
||||||
updated = mController.setChecked(true);
|
when(mAirplaneModeEnabler.isAirplaneModeOn()).thenReturn(true);
|
||||||
assertThat(updated).isFalse();
|
assertThat(mController.setChecked(true)).isFalse();
|
||||||
|
|
||||||
// UI is updated
|
|
||||||
assertThat(mPreference.isChecked()).isTrue();
|
|
||||||
|
|
||||||
// Settings status changed.
|
|
||||||
int updatedValue = Settings.Global.getInt(mResolver, Settings.Global.AIRPLANE_MODE_ON, OFF);
|
|
||||||
assertThat(updatedValue).isEqualTo(ON);
|
|
||||||
|
|
||||||
// Set to OFF
|
// Set to OFF
|
||||||
assertThat(mController.setChecked(false)).isTrue();
|
assertThat(mController.setChecked(false)).isTrue();
|
||||||
assertThat(mPreference.isChecked()).isFalse();
|
|
||||||
updatedValue = Settings.Global.getInt(mResolver, Settings.Global.AIRPLANE_MODE_ON, OFF);
|
|
||||||
assertThat(updatedValue).isEqualTo(OFF);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
@@ -33,6 +33,7 @@ import android.os.UserManager;
|
|||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
import android.provider.Settings.Global;
|
import android.provider.Settings.Global;
|
||||||
import android.telephony.PhoneStateListener;
|
import android.telephony.PhoneStateListener;
|
||||||
|
import android.telephony.SubscriptionManager;
|
||||||
import android.telephony.TelephonyManager;
|
import android.telephony.TelephonyManager;
|
||||||
|
|
||||||
import androidx.lifecycle.LifecycleOwner;
|
import androidx.lifecycle.LifecycleOwner;
|
||||||
@@ -46,7 +47,6 @@ import com.android.settingslib.RestrictedPreference;
|
|||||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||||
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Ignore;
|
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
import org.mockito.Mock;
|
import org.mockito.Mock;
|
||||||
@@ -63,6 +63,8 @@ public class MobileNetworkPreferenceControllerTest {
|
|||||||
@Mock
|
@Mock
|
||||||
private TelephonyManager mTelephonyManager;
|
private TelephonyManager mTelephonyManager;
|
||||||
@Mock
|
@Mock
|
||||||
|
private SubscriptionManager mSubscriptionManager;
|
||||||
|
@Mock
|
||||||
private PreferenceScreen mScreen;
|
private PreferenceScreen mScreen;
|
||||||
|
|
||||||
private Lifecycle mLifecycle;
|
private Lifecycle mLifecycle;
|
||||||
@@ -77,6 +79,7 @@ public class MobileNetworkPreferenceControllerTest {
|
|||||||
mLifecycleOwner = () -> mLifecycle;
|
mLifecycleOwner = () -> mLifecycle;
|
||||||
mLifecycle = new Lifecycle(mLifecycleOwner);
|
mLifecycle = new Lifecycle(mLifecycleOwner);
|
||||||
when(mContext.getSystemService(Context.TELEPHONY_SERVICE)).thenReturn(mTelephonyManager);
|
when(mContext.getSystemService(Context.TELEPHONY_SERVICE)).thenReturn(mTelephonyManager);
|
||||||
|
when(mContext.getSystemService(SubscriptionManager.class)).thenReturn(mSubscriptionManager);
|
||||||
mPreference = new Preference(mContext);
|
mPreference = new Preference(mContext);
|
||||||
mPreference.setKey(MobileNetworkPreferenceController.KEY_MOBILE_NETWORK_SETTINGS);
|
mPreference.setKey(MobileNetworkPreferenceController.KEY_MOBILE_NETWORK_SETTINGS);
|
||||||
}
|
}
|
||||||
@@ -121,7 +124,6 @@ public class MobileNetworkPreferenceControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Ignore
|
|
||||||
public void serviceStateChange_shouldUpdatePrefSummary() {
|
public void serviceStateChange_shouldUpdatePrefSummary() {
|
||||||
final String testCarrierName = "test";
|
final String testCarrierName = "test";
|
||||||
final Preference mPreference = mock(Preference.class);
|
final Preference mPreference = mock(Preference.class);
|
||||||
@@ -138,8 +140,8 @@ public class MobileNetworkPreferenceControllerTest {
|
|||||||
verify(mTelephonyManager).listen(mController.mPhoneStateListener,
|
verify(mTelephonyManager).listen(mController.mPhoneStateListener,
|
||||||
PhoneStateListener.LISTEN_SERVICE_STATE);
|
PhoneStateListener.LISTEN_SERVICE_STATE);
|
||||||
|
|
||||||
// Trigger listener update
|
doReturn(testCarrierName).when(mController).getSummary();
|
||||||
when(mTelephonyManager.getNetworkOperatorName()).thenReturn(testCarrierName);
|
|
||||||
mController.mPhoneStateListener.onServiceStateChanged(null);
|
mController.mPhoneStateListener.onServiceStateChanged(null);
|
||||||
|
|
||||||
// Carrier name should be set.
|
// Carrier name should be set.
|
||||||
@@ -147,7 +149,6 @@ public class MobileNetworkPreferenceControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Ignore
|
|
||||||
public void airplaneModeTurnedOn_shouldDisablePreference() {
|
public void airplaneModeTurnedOn_shouldDisablePreference() {
|
||||||
Settings.Global.putInt(mContext.getContentResolver(),
|
Settings.Global.putInt(mContext.getContentResolver(),
|
||||||
Global.AIRPLANE_MODE_ON, 1);
|
Global.AIRPLANE_MODE_ON, 1);
|
||||||
@@ -158,7 +159,6 @@ public class MobileNetworkPreferenceControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Ignore
|
|
||||||
public void airplaneModeTurnedOffAndNoUserRestriction_shouldEnablePreference() {
|
public void airplaneModeTurnedOffAndNoUserRestriction_shouldEnablePreference() {
|
||||||
Settings.Global.putInt(mContext.getContentResolver(),
|
Settings.Global.putInt(mContext.getContentResolver(),
|
||||||
Global.AIRPLANE_MODE_ON, 0);
|
Global.AIRPLANE_MODE_ON, 0);
|
||||||
@@ -170,7 +170,6 @@ public class MobileNetworkPreferenceControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Ignore
|
|
||||||
public void airplaneModeTurnedOffAndHasUserRestriction_shouldDisablePreference() {
|
public void airplaneModeTurnedOffAndHasUserRestriction_shouldDisablePreference() {
|
||||||
Settings.Global.putInt(mContext.getContentResolver(),
|
Settings.Global.putInt(mContext.getContentResolver(),
|
||||||
Global.AIRPLANE_MODE_ON, 0);
|
Global.AIRPLANE_MODE_ON, 0);
|
||||||
|
Reference in New Issue
Block a user