diff --git a/src/com/android/settings/network/SubscriptionUtil.java b/src/com/android/settings/network/SubscriptionUtil.java index e7003298bf7..ebac51f3f67 100644 --- a/src/com/android/settings/network/SubscriptionUtil.java +++ b/src/com/android/settings/network/SubscriptionUtil.java @@ -59,7 +59,11 @@ public class SubscriptionUtil { return subscriptions; } - private static boolean isInactiveInsertedPSim(UiccSlotInfo slotInfo) { + @VisibleForTesting + static boolean isInactiveInsertedPSim(UiccSlotInfo slotInfo) { + if (slotInfo == null) { + return false; + } return !slotInfo.getIsEuicc() && !slotInfo.getIsActive() && slotInfo.getCardStateInfo() == CARD_STATE_INFO_PRESENT; } diff --git a/tests/robotests/src/com/android/settings/network/SubscriptionUtilTest.java b/tests/robotests/src/com/android/settings/network/SubscriptionUtilTest.java index c6479147e6a..40b955ccd06 100644 --- a/tests/robotests/src/com/android/settings/network/SubscriptionUtilTest.java +++ b/tests/robotests/src/com/android/settings/network/SubscriptionUtilTest.java @@ -187,4 +187,9 @@ public class SubscriptionUtilTest { assertThat(subs).isNotNull(); assertThat(subs).hasSize(2); } + + @Test + public void isInactiveInsertedPSim_nullSubInfo_doesNotCrash() { + assertThat(SubscriptionUtil.isInactiveInsertedPSim(null)).isFalse(); + } }