Merge "Extract and fix logic for showing rac dialog." into 24D1-dev am: 958b737fcc
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/27072479 Change-Id: I9f5c4c8dea3c7aebc73b5121d6ace7aca22c1dfc Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
committed by
Automerger Merge Worker
commit
1d307afd95
@@ -19,11 +19,13 @@ package com.android.settings.network;
|
||||
import static org.junit.Assert.assertFalse;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
import static org.mockito.ArgumentMatchers.any;
|
||||
import static org.mockito.ArgumentMatchers.anyInt;
|
||||
import static org.mockito.Mockito.spy;
|
||||
import static org.mockito.Mockito.when;
|
||||
import static org.robolectric.Shadows.shadowOf;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.res.Resources;
|
||||
import android.net.ConnectivityManager;
|
||||
import android.net.NetworkCapabilities;
|
||||
import android.telephony.SubscriptionManager;
|
||||
@@ -42,6 +44,8 @@ import org.robolectric.shadows.ShadowSubscriptionManager;
|
||||
public class SubscriptionUtilRoboTest {
|
||||
private static final int SUBID_1 = 1;
|
||||
private static final int SUBID_2 = 2;
|
||||
private static final int RAC_CARRIER_ID = 1;
|
||||
private static final int CARRIER_ID = 2;
|
||||
|
||||
private Context mContext;
|
||||
private NetworkCapabilities mNetworkCapabilities;
|
||||
@@ -49,13 +53,16 @@ public class SubscriptionUtilRoboTest {
|
||||
|
||||
@Mock
|
||||
private ConnectivityManager mConnectivityManager;
|
||||
@Mock private Resources mResources;
|
||||
|
||||
@Before
|
||||
public void setUp() {
|
||||
MockitoAnnotations.initMocks(this);
|
||||
mContext = spy(ApplicationProvider.getApplicationContext());
|
||||
mShadowSubscriptionManager = shadowOf(mContext.getSystemService(SubscriptionManager.class));
|
||||
when(mContext.getResources()).thenReturn(mResources);
|
||||
when(mContext.getSystemService(ConnectivityManager.class)).thenReturn(mConnectivityManager);
|
||||
when(mResources.getIntArray(anyInt())).thenReturn(new int[] {RAC_CARRIER_ID});
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -74,6 +81,58 @@ public class SubscriptionUtilRoboTest {
|
||||
assertFalse(SubscriptionUtil.isConnectedToMobileDataWithDifferentSubId(mContext, SUBID_1));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void carrierIsNotRAC_showRacDialogForEsim_returnFalse() {
|
||||
assertFalse(
|
||||
SubscriptionUtil.shouldShowRacDialogWhenErasingEsim(mContext, SUBID_1, CARRIER_ID));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void carrierIsNotRAC_noWifi_noDataConnection_showRacDialogForEsimreturnFalse() {
|
||||
addNetworkTransportType(NetworkCapabilities.TRANSPORT_BLUETOOTH);
|
||||
|
||||
assertFalse(
|
||||
SubscriptionUtil.shouldShowRacDialogWhenErasingEsim(mContext, SUBID_1, CARRIER_ID));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void carrierIsRAC_isConnectedToDataOnSubId2_showRacDialogForEsim_returnFalse() {
|
||||
addNetworkTransportType(NetworkCapabilities.TRANSPORT_CELLULAR);
|
||||
mShadowSubscriptionManager.setActiveDataSubscriptionId(SUBID_2);
|
||||
|
||||
assertFalse(
|
||||
SubscriptionUtil.shouldShowRacDialogWhenErasingEsim(
|
||||
mContext, SUBID_1, RAC_CARRIER_ID));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void carrierIsRAC_hasWifi_showRacDialogForEsim_returnFalse() {
|
||||
addNetworkTransportType(NetworkCapabilities.TRANSPORT_WIFI);
|
||||
|
||||
assertFalse(
|
||||
SubscriptionUtil.shouldShowRacDialogWhenErasingEsim(
|
||||
mContext, SUBID_1, RAC_CARRIER_ID));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void carrierIsRAC_isConnectedToDataOnSubId1_noWifi_showRacDialogForEsim_returnTrue() {
|
||||
addNetworkTransportType(NetworkCapabilities.TRANSPORT_CELLULAR);
|
||||
mShadowSubscriptionManager.setActiveDataSubscriptionId(SUBID_1);
|
||||
|
||||
assertTrue(
|
||||
SubscriptionUtil.shouldShowRacDialogWhenErasingEsim(
|
||||
mContext, SUBID_1, RAC_CARRIER_ID));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void carrierIsRAC_noData_noWifi_showRacDialogForEsim_returnTrue() {
|
||||
addNetworkTransportType(NetworkCapabilities.TRANSPORT_BLUETOOTH);
|
||||
|
||||
assertTrue(
|
||||
SubscriptionUtil.shouldShowRacDialogWhenErasingEsim(
|
||||
mContext, SUBID_1, RAC_CARRIER_ID));
|
||||
}
|
||||
|
||||
private void addNetworkTransportType(int networkType) {
|
||||
mNetworkCapabilities =
|
||||
new NetworkCapabilities.Builder().addTransportType(networkType).build();
|
||||
|
Reference in New Issue
Block a user