[Telephony Setting] Enable the Settings test case

Bug: 147464840
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AirplaneModePreferenceControllerTest
      make RunSettingsRoboTests ROBOTEST_FILTER=MobileNetworkPreferenceControllerTest

Change-Id: I192385b1d847323d18ebc621f29ccc65cd7473d8
This commit is contained in:
changbetty
2020-02-21 15:56:34 +08:00
parent 5dbf99de82
commit 081414e84d
3 changed files with 19 additions and 33 deletions

View File

@@ -32,13 +32,13 @@ import androidx.lifecycle.LifecycleOwner;
import androidx.preference.PreferenceManager;
import androidx.preference.PreferenceScreen;
import com.android.settings.AirplaneModeEnabler;
import com.android.settings.core.BasePreferenceController;
import com.android.settings.testutils.FakeFeatureFactory;
import com.android.settingslib.RestrictedSwitchPreference;
import com.android.settingslib.core.lifecycle.Lifecycle;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
@@ -55,7 +55,8 @@ public class AirplaneModePreferenceControllerTest {
@Mock
private PackageManager mPackageManager;
@Mock
private AirplaneModeEnabler mAirplaneModeEnabler;
private Context mContext;
private ContentResolver mResolver;
private PreferenceManager mPreferenceManager;
@@ -126,38 +127,18 @@ public class AirplaneModePreferenceControllerTest {
}
@Test
@Ignore
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
boolean updated = mController.setChecked(true);
assertThat(updated).isTrue();
mController.setAirplaneModeEnabler(mAirplaneModeEnabler);
assertThat(mController.setChecked(true)).isTrue();
// Check return value if set same status.
updated = mController.setChecked(true);
assertThat(updated).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);
when(mAirplaneModeEnabler.isAirplaneModeOn()).thenReturn(true);
assertThat(mController.setChecked(true)).isFalse();
// Set to OFF
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

View File

@@ -33,6 +33,7 @@ import android.os.UserManager;
import android.provider.Settings;
import android.provider.Settings.Global;
import android.telephony.PhoneStateListener;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import androidx.lifecycle.LifecycleOwner;
@@ -46,7 +47,6 @@ import com.android.settingslib.RestrictedPreference;
import com.android.settingslib.core.lifecycle.Lifecycle;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
@@ -63,6 +63,8 @@ public class MobileNetworkPreferenceControllerTest {
@Mock
private TelephonyManager mTelephonyManager;
@Mock
private SubscriptionManager mSubscriptionManager;
@Mock
private PreferenceScreen mScreen;
private Lifecycle mLifecycle;
@@ -77,6 +79,7 @@ public class MobileNetworkPreferenceControllerTest {
mLifecycleOwner = () -> mLifecycle;
mLifecycle = new Lifecycle(mLifecycleOwner);
when(mContext.getSystemService(Context.TELEPHONY_SERVICE)).thenReturn(mTelephonyManager);
when(mContext.getSystemService(SubscriptionManager.class)).thenReturn(mSubscriptionManager);
mPreference = new Preference(mContext);
mPreference.setKey(MobileNetworkPreferenceController.KEY_MOBILE_NETWORK_SETTINGS);
}
@@ -121,7 +124,6 @@ public class MobileNetworkPreferenceControllerTest {
}
@Test
@Ignore
public void serviceStateChange_shouldUpdatePrefSummary() {
final String testCarrierName = "test";
final Preference mPreference = mock(Preference.class);
@@ -138,8 +140,8 @@ public class MobileNetworkPreferenceControllerTest {
verify(mTelephonyManager).listen(mController.mPhoneStateListener,
PhoneStateListener.LISTEN_SERVICE_STATE);
// Trigger listener update
when(mTelephonyManager.getNetworkOperatorName()).thenReturn(testCarrierName);
doReturn(testCarrierName).when(mController).getSummary();
mController.mPhoneStateListener.onServiceStateChanged(null);
// Carrier name should be set.
@@ -147,7 +149,6 @@ public class MobileNetworkPreferenceControllerTest {
}
@Test
@Ignore
public void airplaneModeTurnedOn_shouldDisablePreference() {
Settings.Global.putInt(mContext.getContentResolver(),
Global.AIRPLANE_MODE_ON, 1);
@@ -158,7 +159,6 @@ public class MobileNetworkPreferenceControllerTest {
}
@Test
@Ignore
public void airplaneModeTurnedOffAndNoUserRestriction_shouldEnablePreference() {
Settings.Global.putInt(mContext.getContentResolver(),
Global.AIRPLANE_MODE_ON, 0);
@@ -170,7 +170,6 @@ public class MobileNetworkPreferenceControllerTest {
}
@Test
@Ignore
public void airplaneModeTurnedOffAndHasUserRestriction_shouldDisablePreference() {
Settings.Global.putInt(mContext.getContentResolver(),
Global.AIRPLANE_MODE_ON, 0);