[Settings] Broken test fix - SimStatusDialogControllerTest

Avoid from test broken - SimStatusDialogControllerTest

Bug: 232040460
Test: unit test
Change-Id: Id5cedd92f008df232234a19d9894e6eb8d39959d
This commit is contained in:
Bonian Chen
2022-05-10 12:20:50 +08:00
parent 1107c1c220
commit d2c9581b44

View File

@@ -156,6 +156,9 @@ public class SimStatusDialogControllerTest {
return mTelephonyManager; return mTelephonyManager;
} }
@Override
protected void requestForUpdateEid() {}
@Override @Override
public AtomicReference<String> getEid(int slotIndex) { public AtomicReference<String> getEid(int slotIndex) {
return mEuiccEnabled.get() ? mEid : null; return mEuiccEnabled.get() ? mEid : null;
@@ -202,6 +205,7 @@ public class SimStatusDialogControllerTest {
doReturn(carrierName).when(mSubscriptionInfo).getCarrierName(); doReturn(carrierName).when(mSubscriptionInfo).getCarrierName();
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
verify(mDialog).setText(NETWORK_PROVIDER_VALUE_ID, carrierName); verify(mDialog).setText(NETWORK_PROVIDER_VALUE_ID, carrierName);
} }
@@ -209,6 +213,7 @@ public class SimStatusDialogControllerTest {
@Test @Test
public void initialize_shouldUpdatePhoneNumber() { public void initialize_shouldUpdatePhoneNumber() {
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
assertTrue(mUpdatePhoneNumberCount.get() > 0); assertTrue(mUpdatePhoneNumberCount.get() > 0);
} }
@@ -218,6 +223,7 @@ public class SimStatusDialogControllerTest {
when(mTelephonyManager.getPhoneType()).thenReturn(TelephonyManager.PHONE_TYPE_CDMA); when(mTelephonyManager.getPhoneType()).thenReturn(TelephonyManager.PHONE_TYPE_CDMA);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
verify(mDialog).removeSettingFromScreen(OPERATOR_INFO_LABEL_ID); verify(mDialog).removeSettingFromScreen(OPERATOR_INFO_LABEL_ID);
verify(mDialog).removeSettingFromScreen(OPERATOR_INFO_VALUE_ID); verify(mDialog).removeSettingFromScreen(OPERATOR_INFO_VALUE_ID);
@@ -228,6 +234,7 @@ public class SimStatusDialogControllerTest {
when(mServiceState.getState()).thenReturn(ServiceState.STATE_IN_SERVICE); when(mServiceState.getState()).thenReturn(ServiceState.STATE_IN_SERVICE);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
final String inServiceText = ResourcesUtils.getResourcesString( final String inServiceText = ResourcesUtils.getResourcesString(
mContext, "radioInfo_service_in"); mContext, "radioInfo_service_in");
@@ -239,6 +246,7 @@ public class SimStatusDialogControllerTest {
when(mServiceState.getState()).thenReturn(ServiceState.STATE_POWER_OFF); when(mServiceState.getState()).thenReturn(ServiceState.STATE_POWER_OFF);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
final String offServiceText = ResourcesUtils.getResourcesString( final String offServiceText = ResourcesUtils.getResourcesString(
mContext, "radioInfo_service_off"); mContext, "radioInfo_service_off");
@@ -253,6 +261,7 @@ public class SimStatusDialogControllerTest {
ServiceState.STATE_OUT_OF_SERVICE); ServiceState.STATE_OUT_OF_SERVICE);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
final String offServiceText = ResourcesUtils.getResourcesString( final String offServiceText = ResourcesUtils.getResourcesString(
mContext, "radioInfo_service_out"); mContext, "radioInfo_service_out");
@@ -266,6 +275,7 @@ public class SimStatusDialogControllerTest {
when(mServiceState.getDataRegistrationState()).thenReturn(ServiceState.STATE_IN_SERVICE); when(mServiceState.getDataRegistrationState()).thenReturn(ServiceState.STATE_IN_SERVICE);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
final String inServiceText = ResourcesUtils.getResourcesString( final String inServiceText = ResourcesUtils.getResourcesString(
mContext, "radioInfo_service_in"); mContext, "radioInfo_service_in");
@@ -281,6 +291,7 @@ public class SimStatusDialogControllerTest {
setupCellSignalStrength_lteWcdma(lteDbm, lteAsu, wcdmaDbm, wcdmaAsu); setupCellSignalStrength_lteWcdma(lteDbm, lteAsu, wcdmaDbm, wcdmaAsu);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
final String signalStrengthString = ResourcesUtils.getResourcesString( final String signalStrengthString = ResourcesUtils.getResourcesString(
mContext, "sim_signal_strength", lteDbm, lteAsu); mContext, "sim_signal_strength", lteDbm, lteAsu);
@@ -296,6 +307,7 @@ public class SimStatusDialogControllerTest {
setupCellSignalStrength_lteCdma(lteDbm, lteAsu, cdmaDbm, cdmaAsu); setupCellSignalStrength_lteCdma(lteDbm, lteAsu, cdmaDbm, cdmaAsu);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
final String signalStrengthString = ResourcesUtils.getResourcesString( final String signalStrengthString = ResourcesUtils.getResourcesString(
mContext, "sim_signal_strength", lteDbm, lteAsu); mContext, "sim_signal_strength", lteDbm, lteAsu);
@@ -312,6 +324,7 @@ public class SimStatusDialogControllerTest {
setupCellSignalStrength_lteOnly(lteDbm, lteAsu); setupCellSignalStrength_lteOnly(lteDbm, lteAsu);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
final String signalStrengthString = ResourcesUtils.getResourcesString( final String signalStrengthString = ResourcesUtils.getResourcesString(
mContext, "sim_signal_strength", lteDbm, lteAsu); mContext, "sim_signal_strength", lteDbm, lteAsu);
@@ -324,6 +337,7 @@ public class SimStatusDialogControllerTest {
TelephonyManager.NETWORK_TYPE_EDGE); TelephonyManager.NETWORK_TYPE_EDGE);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
verify(mDialog).setText(CELL_VOICE_NETWORK_TYPE_VALUE_ID, verify(mDialog).setText(CELL_VOICE_NETWORK_TYPE_VALUE_ID,
SimStatusDialogController.getNetworkTypeName(TelephonyManager.NETWORK_TYPE_EDGE)); SimStatusDialogController.getNetworkTypeName(TelephonyManager.NETWORK_TYPE_EDGE));
@@ -335,6 +349,7 @@ public class SimStatusDialogControllerTest {
TelephonyManager.NETWORK_TYPE_EDGE); TelephonyManager.NETWORK_TYPE_EDGE);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
verify(mDialog).setText(CELL_DATA_NETWORK_TYPE_VALUE_ID, verify(mDialog).setText(CELL_DATA_NETWORK_TYPE_VALUE_ID,
SimStatusDialogController.getNetworkTypeName(TelephonyManager.NETWORK_TYPE_EDGE)); SimStatusDialogController.getNetworkTypeName(TelephonyManager.NETWORK_TYPE_EDGE));
@@ -345,6 +360,7 @@ public class SimStatusDialogControllerTest {
when(mServiceState.getRoaming()).thenReturn(true); when(mServiceState.getRoaming()).thenReturn(true);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
final String roamingOnString = ResourcesUtils.getResourcesString( final String roamingOnString = ResourcesUtils.getResourcesString(
mContext, "radioInfo_roaming_in"); mContext, "radioInfo_roaming_in");
@@ -356,6 +372,7 @@ public class SimStatusDialogControllerTest {
when(mServiceState.getRoaming()).thenReturn(false); when(mServiceState.getRoaming()).thenReturn(false);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
final String roamingOffString = ResourcesUtils.getResourcesString( final String roamingOffString = ResourcesUtils.getResourcesString(
mContext, "radioInfo_roaming_not"); mContext, "radioInfo_roaming_not");
@@ -368,6 +385,7 @@ public class SimStatusDialogControllerTest {
CarrierConfigManager.KEY_SHOW_ICCID_IN_SIM_STATUS_BOOL, false); CarrierConfigManager.KEY_SHOW_ICCID_IN_SIM_STATUS_BOOL, false);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
verify(mDialog).removeSettingFromScreen(ICCID_INFO_LABEL_ID); verify(mDialog).removeSettingFromScreen(ICCID_INFO_LABEL_ID);
verify(mDialog).removeSettingFromScreen(ICCID_INFO_VALUE_ID); verify(mDialog).removeSettingFromScreen(ICCID_INFO_VALUE_ID);
@@ -379,6 +397,7 @@ public class SimStatusDialogControllerTest {
CarrierConfigManager.KEY_SHOW_SIGNAL_STRENGTH_IN_SIM_STATUS_BOOL, false); CarrierConfigManager.KEY_SHOW_SIGNAL_STRENGTH_IN_SIM_STATUS_BOOL, false);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
verify(mDialog, times(2)).removeSettingFromScreen(SIGNAL_STRENGTH_LABEL_ID); verify(mDialog, times(2)).removeSettingFromScreen(SIGNAL_STRENGTH_LABEL_ID);
verify(mDialog, times(2)).removeSettingFromScreen(SIGNAL_STRENGTH_VALUE_ID); verify(mDialog, times(2)).removeSettingFromScreen(SIGNAL_STRENGTH_VALUE_ID);
@@ -390,6 +409,7 @@ public class SimStatusDialogControllerTest {
when(mCarrierConfigManager.getConfigForSubId(anyInt())).thenReturn(null); when(mCarrierConfigManager.getConfigForSubId(anyInt())).thenReturn(null);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
verify(mDialog, times(2)).setText(eq(SIGNAL_STRENGTH_VALUE_ID), any()); verify(mDialog, times(2)).setText(eq(SIGNAL_STRENGTH_VALUE_ID), any());
verify(mDialog).removeSettingFromScreen(ICCID_INFO_LABEL_ID); verify(mDialog).removeSettingFromScreen(ICCID_INFO_LABEL_ID);
@@ -403,6 +423,7 @@ public class SimStatusDialogControllerTest {
doReturn(iccid).when(mTelephonyManager).getSimSerialNumber(); doReturn(iccid).when(mTelephonyManager).getSimSerialNumber();
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
verify(mDialog).setText(ICCID_INFO_VALUE_ID, iccid); verify(mDialog).setText(ICCID_INFO_VALUE_ID, iccid);
} }
@@ -457,6 +478,7 @@ public class SimStatusDialogControllerTest {
mEid.set(null); mEid.set(null);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
// Keep 'Not available' if neither the card nor the associated manager can provide EID. // Keep 'Not available' if neither the card nor the associated manager can provide EID.
verify(mDialog, never()).setText(eq(EID_INFO_VALUE_ID), any()); verify(mDialog, never()).setText(eq(EID_INFO_VALUE_ID), any());
@@ -511,6 +533,7 @@ public class SimStatusDialogControllerTest {
when(mEuiccManager.createForCardId(0)).thenReturn(mEuiccManager); when(mEuiccManager.createForCardId(0)).thenReturn(mEuiccManager);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
// Set EID retrieved from the card. // Set EID retrieved from the card.
verify(mDialog).setText(EID_INFO_VALUE_ID, TEST_EID_FROM_CARD); verify(mDialog).setText(EID_INFO_VALUE_ID, TEST_EID_FROM_CARD);
@@ -570,14 +593,15 @@ public class SimStatusDialogControllerTest {
when(mEuiccManager.createForCardId(1)).thenReturn(mEuiccManager); when(mEuiccManager.createForCardId(1)).thenReturn(mEuiccManager);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
// Set EID retrieved from the manager associated with the card which cannot provide EID. // Set EID retrieved from the manager associated with the card which cannot provide EID.
verify(mDialog).setText(EID_INFO_VALUE_ID, TEST_EID_FROM_MANAGER); verify(mDialog).setText(EID_INFO_VALUE_ID, TEST_EID_FROM_MANAGER);
verify(mDialog, never()).removeSettingFromScreen(eq(EID_INFO_VALUE_ID)); verify(mDialog, never()).removeSettingFromScreen(eq(EID_INFO_VALUE_ID));
} }
@Ignore
@Test @Test
@Ignore
public void initialize_updateEid_shouldRemoveEid() { public void initialize_updateEid_shouldRemoveEid() {
when(mTelephonyManager.getActiveModemCount()).thenReturn(MAX_PHONE_COUNT_DUAL_SIM); when(mTelephonyManager.getActiveModemCount()).thenReturn(MAX_PHONE_COUNT_DUAL_SIM);
@@ -623,10 +647,10 @@ public class SimStatusDialogControllerTest {
when(mEuiccManager.isEnabled()).thenReturn(true); when(mEuiccManager.isEnabled()).thenReturn(true);
mEuiccEnabled.set(true); mEuiccEnabled.set(true);
mEid.set(TEST_EID_FROM_MANAGER); mEid.set(null);
mController.updateEid(mController.getEid(0));
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
// Remove EID if the card is not eUICC. // Remove EID if the card is not eUICC.
verify(mDialog, never()).setText(eq(EID_INFO_VALUE_ID), any()); verify(mDialog, never()).setText(eq(EID_INFO_VALUE_ID), any());
@@ -666,6 +690,7 @@ public class SimStatusDialogControllerTest {
mEid.set(null); mEid.set(null);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
// Keep 'Not available' if the default eUICC manager cannot provide EID in Single SIM mode. // Keep 'Not available' if the default eUICC manager cannot provide EID in Single SIM mode.
verify(mDialog, never()).setText(eq(EID_INFO_VALUE_ID), any()); verify(mDialog, never()).setText(eq(EID_INFO_VALUE_ID), any());
@@ -707,6 +732,7 @@ public class SimStatusDialogControllerTest {
new RuntimeException("EID shall be retrieved from the default eUICC manager")); new RuntimeException("EID shall be retrieved from the default eUICC manager"));
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
// Set EID retrieved from the default eUICC manager in Single SIM mode. // Set EID retrieved from the default eUICC manager in Single SIM mode.
verify(mDialog).setText(EID_INFO_VALUE_ID, TEST_EID_FROM_MANAGER); verify(mDialog).setText(EID_INFO_VALUE_ID, TEST_EID_FROM_MANAGER);
@@ -748,6 +774,7 @@ public class SimStatusDialogControllerTest {
new RuntimeException("EID shall be retrieved from the default eUICC manager")); new RuntimeException("EID shall be retrieved from the default eUICC manager"));
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
// Set EID retrieved from the default eUICC manager in Single SIM mode. // Set EID retrieved from the default eUICC manager in Single SIM mode.
verify(mDialog).setText(EID_INFO_VALUE_ID, TEST_EID_FROM_MANAGER); verify(mDialog).setText(EID_INFO_VALUE_ID, TEST_EID_FROM_MANAGER);
@@ -786,6 +813,7 @@ public class SimStatusDialogControllerTest {
mEid.set(null); mEid.set(null);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
// Remove EID if the default eUICC manager indicates that eSIM is not enabled. // Remove EID if the default eUICC manager indicates that eSIM is not enabled.
verify(mDialog).removeSettingFromScreen(eq(EID_INFO_LABEL_ID)); verify(mDialog).removeSettingFromScreen(eq(EID_INFO_LABEL_ID));
@@ -800,6 +828,7 @@ public class SimStatusDialogControllerTest {
when(mTelephonyManager.isImsRegistered(anyInt())).thenReturn(true); when(mTelephonyManager.isImsRegistered(anyInt())).thenReturn(true);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
verify(mDialog).setText(IMS_REGISTRATION_STATE_VALUE_ID, verify(mDialog).setText(IMS_REGISTRATION_STATE_VALUE_ID,
mContext.getString(R.string.ims_reg_status_registered)); mContext.getString(R.string.ims_reg_status_registered));
@@ -813,6 +842,7 @@ public class SimStatusDialogControllerTest {
when(mTelephonyManager.isImsRegistered(anyInt())).thenReturn(false); when(mTelephonyManager.isImsRegistered(anyInt())).thenReturn(false);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
verify(mDialog).setText(IMS_REGISTRATION_STATE_VALUE_ID, verify(mDialog).setText(IMS_REGISTRATION_STATE_VALUE_ID,
mContext.getString(R.string.ims_reg_status_not_registered)); mContext.getString(R.string.ims_reg_status_not_registered));
@@ -825,6 +855,7 @@ public class SimStatusDialogControllerTest {
CarrierConfigManager.KEY_SHOW_IMS_REGISTRATION_STATUS_BOOL, true); CarrierConfigManager.KEY_SHOW_IMS_REGISTRATION_STATUS_BOOL, true);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
verify(mDialog, never()).removeSettingFromScreen(IMS_REGISTRATION_STATE_VALUE_ID); verify(mDialog, never()).removeSettingFromScreen(IMS_REGISTRATION_STATE_VALUE_ID);
} }
@@ -836,6 +867,7 @@ public class SimStatusDialogControllerTest {
CarrierConfigManager.KEY_SHOW_IMS_REGISTRATION_STATUS_BOOL, false); CarrierConfigManager.KEY_SHOW_IMS_REGISTRATION_STATUS_BOOL, false);
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
verify(mDialog).removeSettingFromScreen(IMS_REGISTRATION_STATE_LABEL_ID); verify(mDialog).removeSettingFromScreen(IMS_REGISTRATION_STATE_LABEL_ID);
verify(mDialog).removeSettingFromScreen(IMS_REGISTRATION_STATE_VALUE_ID); verify(mDialog).removeSettingFromScreen(IMS_REGISTRATION_STATE_VALUE_ID);
@@ -846,6 +878,7 @@ public class SimStatusDialogControllerTest {
doReturn(null).when(mTelephonyManager).getSignalStrength(); doReturn(null).when(mTelephonyManager).getSignalStrength();
// we should not crash when running the following line // we should not crash when running the following line
mController.initialize(); mController.initialize();
mController.updateEid(mController.getEid(0));
} }
private void setupCellSignalStrength_lteWcdma(int lteDbm, int lteAsu, int wcdmaDbm, private void setupCellSignalStrength_lteWcdma(int lteDbm, int lteAsu, int wcdmaDbm,