Do not crash when duplication found in merged imsi list
For some unknown reason, the merged imsi list might contain duplicated items. Deduplication for better error handling. Test: make RunSettingsRoboTests Fix: 271298466 Change-Id: I3cbe8f9441769963a16720fc5128db173fa0868b
This commit is contained in:
@@ -103,11 +103,14 @@ public class DataUsageLibTest {
|
||||
public void getMobileTemplate_groupUuidExist_returnMobileMerged() {
|
||||
when(mSubscriptionManager.getActiveSubscriptionInfo(SUB_ID)).thenReturn(mInfo1);
|
||||
when(mInfo1.getGroupUuid()).thenReturn(mParcelUuid);
|
||||
// In some rare cases (e.g. b/243015487), merged subscriberId list might contain
|
||||
// duplicated items. The implementation should perform deduplication.
|
||||
when(mTelephonyManager.getMergedImsisFromGroup())
|
||||
.thenReturn(new String[] {SUBSCRIBER_ID, SUBSCRIBER_ID_2});
|
||||
.thenReturn(new String[] {SUBSCRIBER_ID, SUBSCRIBER_ID, SUBSCRIBER_ID_2});
|
||||
|
||||
final NetworkTemplate networkTemplate = DataUsageLib.getMobileTemplate(mContext, SUB_ID);
|
||||
assertThat(networkTemplate.getSubscriberIds().contains(SUBSCRIBER_ID)).isTrue();
|
||||
assertThat(networkTemplate.getSubscriberIds().contains(SUBSCRIBER_ID_2)).isTrue();
|
||||
assertThat(networkTemplate.getSubscriberIds().size() == 2).isTrue();
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user