Merge "Update test to adopt new API for check network support" am: 04f4216496 am: 3a43a0dc48

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1886878

Change-Id: Ia44da16b8c5844c5e6e34f8661ef39def5d96175
This commit is contained in:
Chiachang Wang
2021-11-10 10:10:46 +00:00
committed by Automerger Merge Worker

View File

@@ -20,9 +20,8 @@ import static com.google.common.truth.Truth.assertThat;
import static org.robolectric.shadow.api.Shadow.extract; import static org.robolectric.shadow.api.Shadow.extract;
import android.net.ConnectivityManager;
import android.os.UserManager; import android.os.UserManager;
import android.util.SparseBooleanArray; import android.telephony.TelephonyManager;
import org.junit.Before; import org.junit.Before;
import org.junit.Test; import org.junit.Test;
@@ -35,7 +34,7 @@ import org.robolectric.annotation.Implements;
@RunWith(RobolectricTestRunner.class) @RunWith(RobolectricTestRunner.class)
@Config(shadows = {SimStatusImeiInfoPreferenceControllerTest.ShadowUserManager.class, @Config(shadows = {SimStatusImeiInfoPreferenceControllerTest.ShadowUserManager.class,
SimStatusImeiInfoPreferenceControllerTest.ShadowConnectivityManager.class}) SimStatusImeiInfoPreferenceControllerTest.ShadowTelephonyManager.class})
public class SimStatusImeiInfoPreferenceControllerTest { public class SimStatusImeiInfoPreferenceControllerTest {
private AbstractSimStatusImeiInfoPreferenceController mController; private AbstractSimStatusImeiInfoPreferenceController mController;
@@ -56,9 +55,9 @@ public class SimStatusImeiInfoPreferenceControllerTest {
ShadowUserManager userManager = ShadowUserManager userManager =
extract(RuntimeEnvironment.application.getSystemService(UserManager.class)); extract(RuntimeEnvironment.application.getSystemService(UserManager.class));
userManager.setIsAdminUser(true); userManager.setIsAdminUser(true);
ShadowConnectivityManager connectivityManager = ShadowTelephonyManager telephonyManager =
extract(RuntimeEnvironment.application.getSystemService(ConnectivityManager.class)); extract(RuntimeEnvironment.application.getSystemService(TelephonyManager.class));
connectivityManager.setNetworkSupported(ConnectivityManager.TYPE_MOBILE, true); telephonyManager.setDataCapable(true);
assertThat(mController.isAvailable()).isTrue(); assertThat(mController.isAvailable()).isTrue();
} }
@@ -68,9 +67,9 @@ public class SimStatusImeiInfoPreferenceControllerTest {
ShadowUserManager userManager = ShadowUserManager userManager =
extract(RuntimeEnvironment.application.getSystemService(UserManager.class)); extract(RuntimeEnvironment.application.getSystemService(UserManager.class));
userManager.setIsAdminUser(true); userManager.setIsAdminUser(true);
ShadowConnectivityManager connectivityManager = ShadowTelephonyManager telephonyManager =
extract(RuntimeEnvironment.application.getSystemService(ConnectivityManager.class)); extract(RuntimeEnvironment.application.getSystemService(TelephonyManager.class));
connectivityManager.setNetworkSupported(ConnectivityManager.TYPE_MOBILE, false); telephonyManager.setDataCapable(false);
assertThat(mController.isAvailable()).isFalse(); assertThat(mController.isAvailable()).isFalse();
} }
@@ -99,19 +98,17 @@ public class SimStatusImeiInfoPreferenceControllerTest {
} }
} }
@Implements(ConnectivityManager.class) @Implements(TelephonyManager.class)
public static class ShadowConnectivityManager public static class ShadowTelephonyManager
extends org.robolectric.shadows.ShadowConnectivityManager { extends org.robolectric.shadows.ShadowTelephonyManager {
private boolean mDataCapable = false;
private final SparseBooleanArray mSupportedNetworkTypes = new SparseBooleanArray(); private void setDataCapable(boolean capable) {
mDataCapable = capable;
private void setNetworkSupported(int networkType, boolean supported) {
mSupportedNetworkTypes.put(networkType, supported);
} }
@Implementation @Implementation
public boolean isNetworkSupported(int networkType) { public boolean isDataCapable() {
return mSupportedNetworkTypes.get(networkType); return mDataCapable;
} }
} }
} }