summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--proto/src/persist_atoms.proto2
-rw-r--r--src/java/com/android/internal/telephony/metrics/MetricsCollector.java6
-rw-r--r--src/java/com/android/internal/telephony/metrics/PersistAtomsStorage.java1
-rw-r--r--src/java/com/android/internal/telephony/metrics/SatelliteStats.java66
-rw-r--r--src/java/com/android/internal/telephony/satellite/metrics/CarrierRoamingSatelliteControllerStats.java15
-rw-r--r--src/java/com/android/internal/telephony/satellite/metrics/CarrierRoamingSatelliteSessionStats.java2
-rw-r--r--tests/telephonytests/src/com/android/internal/telephony/configupdate/TelephonyConfigUpdateInstallReceiverTest.java5
-rw-r--r--tests/telephonytests/src/com/android/internal/telephony/metrics/PersistAtomsStorageTest.java6
-rw-r--r--tests/telephonytests/src/com/android/internal/telephony/metrics/SatelliteStatsTest.java4
9 files changed, 97 insertions, 10 deletions
diff --git a/proto/src/persist_atoms.proto b/proto/src/persist_atoms.proto
index 34424c1668..730e672540 100644
--- a/proto/src/persist_atoms.proto
+++ b/proto/src/persist_atoms.proto
@@ -825,6 +825,7 @@ message CarrierRoamingSatelliteSession {
repeated int32 supported_satellite_services = 17;
optional int32 service_data_policy = 18;
optional int64 satellite_data_consumed_bytes = 19;
+ optional bool is_multi_sim = 20;
}
message CarrierRoamingSatelliteControllerStats {
@@ -837,6 +838,7 @@ message CarrierRoamingSatelliteControllerStats {
optional int32 satellite_session_gap_max_sec = 7;
optional int32 carrier_id = 8;
optional bool is_device_entitled = 9;
+ optional bool is_multi_sim = 10;
}
message SatelliteEntitlement {
diff --git a/src/java/com/android/internal/telephony/metrics/MetricsCollector.java b/src/java/com/android/internal/telephony/metrics/MetricsCollector.java
index e8db5506be..d8cbb91434 100644
--- a/src/java/com/android/internal/telephony/metrics/MetricsCollector.java
+++ b/src/java/com/android/internal/telephony/metrics/MetricsCollector.java
@@ -1596,7 +1596,8 @@ public class MetricsCollector implements StatsManager.StatsPullAtomCallback {
stats.countOfOutgoingMms,
stats.supportedSatelliteServices,
stats.serviceDataPolicy,
- stats.satelliteDataConsumedBytes);
+ stats.satelliteDataConsumedBytes,
+ stats.isMultiSim);
}
private static StatsEvent buildStatsEvent(CarrierRoamingSatelliteControllerStats stats) {
@@ -1610,7 +1611,8 @@ public class MetricsCollector implements StatsManager.StatsPullAtomCallback {
stats.satelliteSessionGapAvgSec,
stats.satelliteSessionGapMaxSec,
stats.carrierId,
- stats.isDeviceEntitled);
+ stats.isDeviceEntitled,
+ stats.isMultiSim);
}
private static StatsEvent buildStatsEvent(SatelliteEntitlement stats) {
diff --git a/src/java/com/android/internal/telephony/metrics/PersistAtomsStorage.java b/src/java/com/android/internal/telephony/metrics/PersistAtomsStorage.java
index 0a0e9619c3..9ac62e0386 100644
--- a/src/java/com/android/internal/telephony/metrics/PersistAtomsStorage.java
+++ b/src/java/com/android/internal/telephony/metrics/PersistAtomsStorage.java
@@ -885,6 +885,7 @@ public class PersistAtomsStorage {
// Does not update configDataSource, carrierId, isDeviceEntitled, due to they are
// dimension fields.
existingStats.isDeviceEntitled = stats.isDeviceEntitled;
+ existingStats.isMultiSim = stats.isMultiSim;
} else {
mAtoms.carrierRoamingSatelliteControllerStats = insertAtRandomPlace(
mAtoms.carrierRoamingSatelliteControllerStats, stats, mMaxNumSatelliteStats);
diff --git a/src/java/com/android/internal/telephony/metrics/SatelliteStats.java b/src/java/com/android/internal/telephony/metrics/SatelliteStats.java
index 47b877eca3..9337164585 100644
--- a/src/java/com/android/internal/telephony/metrics/SatelliteStats.java
+++ b/src/java/com/android/internal/telephony/metrics/SatelliteStats.java
@@ -45,6 +45,7 @@ import java.util.Optional;
/** Tracks Satellite metrics for each phone */
public class SatelliteStats {
private static final String TAG = SatelliteStats.class.getSimpleName();
+ private static final boolean DBG = false;
private final PersistAtomsStorage mAtomsStorage =
PhoneFactory.getMetricsCollector().getAtomsStorage();
@@ -1765,6 +1766,7 @@ public class SatelliteStats {
private final int[] mSupportedSatelliteServices;
private final int mServiceDataPolicy;
private final long mSatelliteDataConsumedBytes;
+ private final boolean mIsMultiSim;
private CarrierRoamingSatelliteSessionParams(Builder builder) {
this.mCarrierId = builder.mCarrierId;
@@ -1788,6 +1790,7 @@ public class SatelliteStats {
this.mServiceDataPolicy = builder.mServiceDataPolicy;
this.mSatelliteDataConsumedBytes =
builder.mSatelliteDataConsumedBytes;
+ this.mIsMultiSim = builder.mIsMultiSim;
}
public int getCarrierId() {
@@ -1858,7 +1861,6 @@ public class SatelliteStats {
return mSupportedSatelliteServices;
}
-
public int getServiceDataPolicy() {
return mServiceDataPolicy;
}
@@ -1867,6 +1869,10 @@ public class SatelliteStats {
return mSatelliteDataConsumedBytes;
}
+ public boolean isMultiSim() {
+ return mIsMultiSim;
+ }
+
/**
* A builder class to create {@link CarrierRoamingSatelliteSessionParams} data structure
* class
@@ -1892,6 +1898,7 @@ public class SatelliteStats {
int mServiceDataPolicy =
SatelliteConstants.SATELLITE_ENTITLEMENT_SERVICE_POLICY_UNKNOWN;
long mSatelliteDataConsumedBytes = 0L;
+ private boolean mIsMultiSim = false;
/**
* Sets carrierId value of {@link CarrierRoamingSatelliteSession} atom
@@ -2069,6 +2076,15 @@ public class SatelliteStats {
}
/**
+ * Sets isMultiSim value of {@link CarrierRoamingSatelliteSession} atom, which indicates
+ * whether multi sim are activated or not, then returns Builder class
+ */
+ public Builder setIsMultiSim(boolean isMultiSim) {
+ this.mIsMultiSim = isMultiSim;
+ return this;
+ }
+
+ /**
* Returns CarrierRoamingSatelliteSessionParams, which contains whole component of
* {@link CarrierRoamingSatelliteSession} atom
*/
@@ -2101,6 +2117,7 @@ public class SatelliteStats {
+ ", supportedSatelliteServices=" + Arrays.toString(mSupportedSatelliteServices)
+ ", serviceDataPolicy=" + mServiceDataPolicy
+ ", SatelliteDataConsumedBytes=" + mSatelliteDataConsumedBytes
+ + ", isMultiSim=" + mIsMultiSim
+ ")";
}
}
@@ -2120,6 +2137,7 @@ public class SatelliteStats {
private static int sSatelliteSessionGapMaxSec;
private static int sCarrierId;
private static boolean sIsDeviceEntitled;
+ private static boolean sIsMultiSim;
private CarrierRoamingSatelliteControllerStatsParams(Builder builder) {
this.mConfigDataSource = builder.mConfigDataSource;
@@ -2132,23 +2150,28 @@ public class SatelliteStats {
// Update session gap params only when they are explicitly provided
if (builder.mSatelliteSessionGapMinSec.isPresent()) {
- this.sSatelliteSessionGapMinSec = builder.mSatelliteSessionGapMinSec.get();
+ sSatelliteSessionGapMinSec = builder.mSatelliteSessionGapMinSec.get();
}
if (builder.mSatelliteSessionGapAvgSec.isPresent()) {
- this.sSatelliteSessionGapAvgSec = builder.mSatelliteSessionGapAvgSec.get();
+ sSatelliteSessionGapAvgSec = builder.mSatelliteSessionGapAvgSec.get();
}
if (builder.mSatelliteSessionGapMaxSec.isPresent()) {
- this.sSatelliteSessionGapMaxSec = builder.mSatelliteSessionGapMaxSec.get();
+ sSatelliteSessionGapMaxSec = builder.mSatelliteSessionGapMaxSec.get();
}
// Carrier ID value should be updated only when it is meaningful.
if (builder.mCarrierId.isPresent()) {
- this.sCarrierId = builder.mCarrierId.get();
+ sCarrierId = builder.mCarrierId.get();
}
// isDeviceEntitled value should be updated only when it is meaningful.
if (builder.mIsDeviceEntitled.isPresent()) {
- this.sIsDeviceEntitled = builder.mIsDeviceEntitled.get();
+ sIsDeviceEntitled = builder.mIsDeviceEntitled.get();
+ }
+
+ // isMulti value should be updated only when it is meaningful.
+ if (builder.mIsMultiSim.isPresent()) {
+ sIsMultiSim = builder.mIsMultiSim.get();
}
}
@@ -2189,6 +2212,10 @@ public class SatelliteStats {
return sIsDeviceEntitled;
}
+ public boolean isMultiSim() {
+ return sIsMultiSim;
+ }
+
/**
* A builder class to create {@link CarrierRoamingSatelliteControllerStatsParams}
* data structure class
@@ -2203,6 +2230,7 @@ public class SatelliteStats {
private Optional<Integer> mSatelliteSessionGapMaxSec = Optional.empty();
private Optional<Integer> mCarrierId = Optional.empty();
private Optional<Boolean> mIsDeviceEntitled = Optional.empty();
+ private Optional<Boolean> mIsMultiSim = Optional.empty();
/**
* Sets configDataSource value of {@link CarrierRoamingSatelliteControllerStats} atom
@@ -2282,6 +2310,12 @@ public class SatelliteStats {
return this;
}
+ /** Sets whether the device is in DSDS state or not. */
+ public Builder setIsMultiSim(boolean isMultiSim) {
+ this.mIsMultiSim = Optional.of(isMultiSim);
+ return this;
+ }
+
/**
* Returns CarrierRoamingSatelliteControllerStatsParams, which contains whole component
* of {@link CarrierRoamingSatelliteControllerStats} atom
@@ -2307,6 +2341,7 @@ public class SatelliteStats {
+ ", satelliteSessionGapMaxSec=" + sSatelliteSessionGapMaxSec
+ ", carrierId=" + sCarrierId
+ ", isDeviceEntitled=" + sIsDeviceEntitled
+ + ", isMultiSim=" + sIsMultiSim
+ ")";
}
}
@@ -2837,7 +2872,7 @@ public class SatelliteStats {
param.getCountOfP2PSmsAvailableNotificationRemoved();
proto.isNtnOnlyCarrier = param.isNtnOnlyCarrier();
proto.versionOfSatelliteAccessConfig = param.getVersionSatelliteAccessConfig();
-
+ if (DBG) logd("onSatelliteControllerMetrics" + param);
mAtomsStorage.addSatelliteControllerStats(proto);
}
@@ -2866,6 +2901,7 @@ public class SatelliteStats {
proto.isEmergency = param.getIsEmergency();
proto.isNtnOnlyCarrier = param.isNtnOnlyCarrier();
proto.maxInactivityDurationSec = param.getMaxInactivityDurationSec();
+ if (DBG) logd("onSatelliteSessionMetrics" + param);
mAtomsStorage.addSatelliteSessionStats(proto);
}
@@ -2879,6 +2915,7 @@ public class SatelliteStats {
proto.isDemoMode = param.getIsDemoMode();
proto.carrierId = param.getCarrierId();
proto.isNtnOnlyCarrier = param.isNtnOnlyCarrier();
+ if (DBG) logd("onSatelliteIncomingDatagramMetrics" + param);
mAtomsStorage.addSatelliteIncomingDatagramStats(proto);
}
@@ -2893,6 +2930,7 @@ public class SatelliteStats {
proto.isDemoMode = param.getIsDemoMode();
proto.carrierId = param.getCarrierId();
proto.isNtnOnlyCarrier = param.isNtnOnlyCarrier();
+ if (DBG) logd("onSatelliteOutgoingDatagramMetrics: " + param);
mAtomsStorage.addSatelliteOutgoingDatagramStats(proto);
}
@@ -2905,6 +2943,7 @@ public class SatelliteStats {
proto.isCanceled = param.getIsCanceled();
proto.carrierId = param.getCarrierId();
proto.isNtnOnlyCarrier = param.isNtnOnlyCarrier();
+ if (DBG) logd("onSatelliteProvisionMetrics: " + param);
mAtomsStorage.addSatelliteProvisionStats(proto);
}
@@ -2923,6 +2962,7 @@ public class SatelliteStats {
proto.carrierId = param.getCarrierId();
proto.isNtnOnlyCarrier = param.isNtnOnlyCarrier();
proto.count = 1;
+ if (DBG) logd("onSatelliteSosMessageRecommender: " + param);
mAtomsStorage.addSatelliteSosMessageRecommenderStats(proto);
}
@@ -2949,6 +2989,8 @@ public class SatelliteStats {
proto.supportedSatelliteServices = param.mSupportedSatelliteServices;
proto.serviceDataPolicy = param.mServiceDataPolicy;
proto.satelliteDataConsumedBytes = param.mSatelliteDataConsumedBytes;
+ proto.isMultiSim = param.isMultiSim();
+ if (DBG) logd("onCarrierRoamingSatelliteSessionMetrics: " + param);
mAtomsStorage.addCarrierRoamingSatelliteSessionStats(proto);
}
@@ -2965,11 +3007,14 @@ public class SatelliteStats {
proto.satelliteSessionGapMaxSec = param.getSatelliteSessionGapMaxSec();
proto.carrierId = param.getCarrierId();
proto.isDeviceEntitled = param.isDeviceEntitled();
+ proto.isMultiSim = param.isMultiSim();
+ if (DBG) logd("onCarrierRoamingSatelliteControllerStatsMetrics: " + param);
mAtomsStorage.addCarrierRoamingSatelliteControllerStats(proto);
}
/** Reset carrier roaming satellite controller stats after atom is pulled. */
public synchronized void resetCarrierRoamingSatelliteControllerStats() {
+ if (DBG) logd("resetCarrierRoamingSatelliteControllerStats:");
com.android.internal.telephony.satellite.metrics
.CarrierRoamingSatelliteControllerStats.getOrCreateInstance()
.resetSessionGapLists();
@@ -2986,6 +3031,7 @@ public class SatelliteStats {
proto.isAllowedServiceEntitlement = param.getIsAllowedServiceEntitlement();
proto.entitlementServiceType = param.getEntitlementServiceType();
proto.entitlementDataPolicy = param.getEntitlementDataPolicy();
+ if (DBG) logd("onSatelliteEntitlementMetrics: " + param);
mAtomsStorage.addSatelliteEntitlementStats(proto);
}
@@ -2996,6 +3042,7 @@ public class SatelliteStats {
proto.oemConfigResult = param.getOemConfigResult();
proto.carrierConfigResult = param.getCarrierConfigResult();
proto.count = param.getCount();
+ if (DBG) logd("onSatelliteConfigUpdaterMetrics: " + param);
mAtomsStorage.addSatelliteConfigUpdaterStats(proto);
}
@@ -3015,6 +3062,11 @@ public class SatelliteStats {
proto.carrierId = param.getCarrierId();
proto.triggeringEvent = param.getTriggeringEvent();
proto.isNtnOnlyCarrier = param.isNtnOnlyCarrier();
+ if (DBG) logd("onSatelliteAccessControllerMetrics: " + param);
mAtomsStorage.addSatelliteAccessControllerStats(proto);
}
+
+ private static void logd(String msg) {
+ Rlog.d(TAG, msg);
+ }
}
diff --git a/src/java/com/android/internal/telephony/satellite/metrics/CarrierRoamingSatelliteControllerStats.java b/src/java/com/android/internal/telephony/satellite/metrics/CarrierRoamingSatelliteControllerStats.java
index 1db2361616..777fe7b243 100644
--- a/src/java/com/android/internal/telephony/satellite/metrics/CarrierRoamingSatelliteControllerStats.java
+++ b/src/java/com/android/internal/telephony/satellite/metrics/CarrierRoamingSatelliteControllerStats.java
@@ -19,8 +19,10 @@ package com.android.internal.telephony.satellite.metrics;
import android.annotation.NonNull;
import android.util.Log;
+import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.telephony.metrics.SatelliteStats;
import com.android.internal.telephony.satellite.SatelliteConstants;
+import com.android.internal.telephony.subscription.SubscriptionManagerService;
import java.util.ArrayList;
import java.util.Collections;
@@ -30,7 +32,6 @@ public class CarrierRoamingSatelliteControllerStats {
private static final String TAG = CarrierRoamingSatelliteControllerStats.class.getSimpleName();
private static CarrierRoamingSatelliteControllerStats sInstance = null;
private static final int ADD_COUNT = 1;
-
private SatelliteStats mSatelliteStats;
private List<Long> mSessionStartTimeList;
private List<Long> mSessionEndTimeList;
@@ -60,6 +61,7 @@ public class CarrierRoamingSatelliteControllerStats {
mSatelliteStats.onCarrierRoamingSatelliteControllerStatsMetrics(
new SatelliteStats.CarrierRoamingSatelliteControllerStatsParams.Builder()
.setConfigDataSource(configDataSource)
+ .setIsMultiSim(isMultiSim())
.build());
}
@@ -68,6 +70,7 @@ public class CarrierRoamingSatelliteControllerStats {
mSatelliteStats.onCarrierRoamingSatelliteControllerStatsMetrics(
new SatelliteStats.CarrierRoamingSatelliteControllerStatsParams.Builder()
.setCountOfEntitlementStatusQueryRequest(ADD_COUNT)
+ .setIsMultiSim(isMultiSim())
.build());
}
@@ -76,6 +79,7 @@ public class CarrierRoamingSatelliteControllerStats {
mSatelliteStats.onCarrierRoamingSatelliteControllerStatsMetrics(
new SatelliteStats.CarrierRoamingSatelliteControllerStatsParams.Builder()
.setCountOfSatelliteConfigUpdateRequest(ADD_COUNT)
+ .setIsMultiSim(isMultiSim())
.build());
}
@@ -84,6 +88,7 @@ public class CarrierRoamingSatelliteControllerStats {
mSatelliteStats.onCarrierRoamingSatelliteControllerStatsMetrics(
new SatelliteStats.CarrierRoamingSatelliteControllerStatsParams.Builder()
.setCountOfSatelliteNotificationDisplayed(ADD_COUNT)
+ .setIsMultiSim(isMultiSim())
.build());
}
@@ -92,6 +97,7 @@ public class CarrierRoamingSatelliteControllerStats {
mSatelliteStats.onCarrierRoamingSatelliteControllerStatsMetrics(
new SatelliteStats.CarrierRoamingSatelliteControllerStatsParams.Builder()
.setCarrierId(carrierId)
+ .setIsMultiSim(isMultiSim())
.build());
}
@@ -100,6 +106,7 @@ public class CarrierRoamingSatelliteControllerStats {
mSatelliteStats.onCarrierRoamingSatelliteControllerStatsMetrics(
new SatelliteStats.CarrierRoamingSatelliteControllerStatsParams.Builder()
.setIsDeviceEntitled(isDeviceEntitled)
+ .setIsMultiSim(isMultiSim())
.build());
}
@@ -126,6 +133,7 @@ public class CarrierRoamingSatelliteControllerStats {
.setSatelliteSessionGapMinSec(satelliteSessionGapMinSec)
.setSatelliteSessionGapAvgSec(getAvg(sessionGapList))
.setSatelliteSessionGapMaxSec(satelliteSessionGapMaxSec)
+ .setIsMultiSim(isMultiSim())
.build());
}
@@ -173,6 +181,11 @@ public class CarrierRoamingSatelliteControllerStats {
return System.currentTimeMillis();
}
+ @VisibleForTesting(visibility = VisibleForTesting.Visibility.PRIVATE)
+ public boolean isMultiSim() {
+ return SubscriptionManagerService.getInstance().getActiveSubIdList(true).length > 1;
+ }
+
private static void logd(@NonNull String log) {
Log.d(TAG, log);
}
diff --git a/src/java/com/android/internal/telephony/satellite/metrics/CarrierRoamingSatelliteSessionStats.java b/src/java/com/android/internal/telephony/satellite/metrics/CarrierRoamingSatelliteSessionStats.java
index b55e485062..df6b609fe2 100644
--- a/src/java/com/android/internal/telephony/satellite/metrics/CarrierRoamingSatelliteSessionStats.java
+++ b/src/java/com/android/internal/telephony/satellite/metrics/CarrierRoamingSatelliteSessionStats.java
@@ -230,6 +230,7 @@ public class CarrierRoamingSatelliteSessionStats {
satelliteConnectionGapMinSec = Collections.min(connectionGapList);
satelliteConnectionGapMaxSec = Collections.max(connectionGapList);
}
+ boolean isMultiSim = mSubscriptionManagerService.getActiveSubIdList(true).length > 1;
SatelliteStats.CarrierRoamingSatelliteSessionParams params =
new SatelliteStats.CarrierRoamingSatelliteSessionParams.Builder()
@@ -252,6 +253,7 @@ public class CarrierRoamingSatelliteSessionStats {
.setSupportedSatelliteServices(mSupportedSatelliteServices)
.setServiceDataPolicy(mServiceDataPolicy)
.setSatelliteDataConsumedBytes(mSatelliteDataConsumedBytes)
+ .setIsMultiSim(isMultiSim)
.build();
SatelliteStats.getInstance().onCarrierRoamingSatelliteSessionMetrics(params);
logd("Supported satellite services: " + Arrays.toString(mSupportedSatelliteServices));
diff --git a/tests/telephonytests/src/com/android/internal/telephony/configupdate/TelephonyConfigUpdateInstallReceiverTest.java b/tests/telephonytests/src/com/android/internal/telephony/configupdate/TelephonyConfigUpdateInstallReceiverTest.java
index 0563481551..64dd24e278 100644
--- a/tests/telephonytests/src/com/android/internal/telephony/configupdate/TelephonyConfigUpdateInstallReceiverTest.java
+++ b/tests/telephonytests/src/com/android/internal/telephony/configupdate/TelephonyConfigUpdateInstallReceiverTest.java
@@ -29,12 +29,14 @@ import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertSame;
import static org.junit.Assert.assertTrue;
import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.ArgumentMatchers.anyInt;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
import android.content.Intent;
import android.util.ArraySet;
@@ -64,6 +66,7 @@ import java.util.concurrent.Executors;
public class TelephonyConfigUpdateInstallReceiverTest extends TelephonyTest {
public static final String DOMAIN_SATELLITE = "satellite";
+ private static final int[] ACTIVE_SUB_LIST = {1};
@Mock
private Executor mExecutor;
@Mock
@@ -73,6 +76,8 @@ public class TelephonyConfigUpdateInstallReceiverTest extends TelephonyTest {
public void setUp() throws Exception {
super.setUp(getClass().getSimpleName());
MockitoAnnotations.initMocks(this);
+ when(mSubscriptionManagerService.getActiveSubIdList(anyBoolean())).thenReturn(
+ ACTIVE_SUB_LIST);
logd(TAG + " Setup!");
}
diff --git a/tests/telephonytests/src/com/android/internal/telephony/metrics/PersistAtomsStorageTest.java b/tests/telephonytests/src/com/android/internal/telephony/metrics/PersistAtomsStorageTest.java
index 1c0febfcac..9d8451e2f1 100644
--- a/tests/telephonytests/src/com/android/internal/telephony/metrics/PersistAtomsStorageTest.java
+++ b/tests/telephonytests/src/com/android/internal/telephony/metrics/PersistAtomsStorageTest.java
@@ -1358,6 +1358,7 @@ public class PersistAtomsStorageTest extends TelephonyTest {
mCarrierRoamingSatelliteSession1.countOfOutgoingSms = 4;
mCarrierRoamingSatelliteSession1.countOfIncomingMms = 1;
mCarrierRoamingSatelliteSession1.countOfOutgoingMms = 1;
+ mCarrierRoamingSatelliteSession1.isMultiSim = false;
mCarrierRoamingSatelliteSession2 = new CarrierRoamingSatelliteSession();
mCarrierRoamingSatelliteSession2.carrierId = 2;
@@ -1376,6 +1377,7 @@ public class PersistAtomsStorageTest extends TelephonyTest {
mCarrierRoamingSatelliteSession2.countOfOutgoingSms = 4;
mCarrierRoamingSatelliteSession2.countOfIncomingMms = 1;
mCarrierRoamingSatelliteSession2.countOfOutgoingMms = 1;
+ mCarrierRoamingSatelliteSession2.isMultiSim = true;
mCarrierRoamingSatelliteSessions = new CarrierRoamingSatelliteSession[] {
mCarrierRoamingSatelliteSession1, mCarrierRoamingSatelliteSession2};
@@ -1391,6 +1393,7 @@ public class PersistAtomsStorageTest extends TelephonyTest {
mCarrierRoamingSatelliteControllerStats1.satelliteSessionGapMaxSec = 4;
mCarrierRoamingSatelliteControllerStats1.carrierId = 1;
mCarrierRoamingSatelliteControllerStats1.isDeviceEntitled = true;
+ mCarrierRoamingSatelliteControllerStats1.isMultiSim = false;
mCarrierRoamingSatelliteControllerStats2 = new CarrierRoamingSatelliteControllerStats();
mCarrierRoamingSatelliteControllerStats2.configDataSource =
@@ -1403,6 +1406,7 @@ public class PersistAtomsStorageTest extends TelephonyTest {
mCarrierRoamingSatelliteControllerStats2.satelliteSessionGapMaxSec = 15;
mCarrierRoamingSatelliteControllerStats2.carrierId = 10;
mCarrierRoamingSatelliteControllerStats2.isDeviceEntitled = false;
+ mCarrierRoamingSatelliteControllerStats2.isMultiSim = true;
// CarrierRoamingSatelliteController has one data point
mCarrierRoamingSatelliteControllerStats = new CarrierRoamingSatelliteControllerStats[] {
@@ -5153,6 +5157,7 @@ public class PersistAtomsStorageTest extends TelephonyTest {
mCarrierRoamingSatelliteControllerStats1.satelliteSessionGapMaxSec;
expected.carrierId = mCarrierRoamingSatelliteControllerStats1.carrierId;
expected.isDeviceEntitled = mCarrierRoamingSatelliteControllerStats1.isDeviceEntitled;
+ expected.isMultiSim = mCarrierRoamingSatelliteControllerStats1.isMultiSim;
verifyCurrentStateSavedToFileOnce();
CarrierRoamingSatelliteControllerStats[] output =
mPersistAtomsStorage.getCarrierRoamingSatelliteControllerStats(0L);
@@ -6455,6 +6460,7 @@ public class PersistAtomsStorageTest extends TelephonyTest {
assertEquals(expectedStats.satelliteSessionGapMaxSec,
stats.satelliteSessionGapMaxSec);
assertEquals(expectedStats.isDeviceEntitled, stats.isDeviceEntitled);
+ assertEquals(expectedStats.isMultiSim, stats.isMultiSim);
count++;
}
}
diff --git a/tests/telephonytests/src/com/android/internal/telephony/metrics/SatelliteStatsTest.java b/tests/telephonytests/src/com/android/internal/telephony/metrics/SatelliteStatsTest.java
index e981e88dfe..fce481ec7e 100644
--- a/tests/telephonytests/src/com/android/internal/telephony/metrics/SatelliteStatsTest.java
+++ b/tests/telephonytests/src/com/android/internal/telephony/metrics/SatelliteStatsTest.java
@@ -459,6 +459,7 @@ public class SatelliteStatsTest extends TelephonyTest {
.setSatelliteSessionGapMaxSec(45)
.setCarrierId(10)
.setIsDeviceEntitled(true)
+ .setIsMultiSim(true)
.build();
mSatelliteStats.onCarrierRoamingSatelliteControllerStatsMetrics(param);
@@ -479,6 +480,7 @@ public class SatelliteStatsTest extends TelephonyTest {
assertEquals(param.getSatelliteSessionGapMaxSec(), stats.satelliteSessionGapMaxSec);
assertEquals(param.getCarrierId(), stats.carrierId);
assertEquals(param.isDeviceEntitled(), stats.isDeviceEntitled);
+ assertEquals(param.isMultiSim(), stats.isMultiSim);
verifyNoMoreInteractions(mPersistAtomsStorage);
}
@@ -497,6 +499,7 @@ public class SatelliteStatsTest extends TelephonyTest {
.setSatelliteSessionGapMaxSec(45)
.setCarrierId(10)
.setIsDeviceEntitled(true)
+ .setIsMultiSim(true)
.build();
mSatelliteStats.onCarrierRoamingSatelliteControllerStatsMetrics(param);
@@ -541,6 +544,7 @@ public class SatelliteStatsTest extends TelephonyTest {
// static values should be updated
assertEquals(20, stats.carrierId);
assertEquals(false, stats.isDeviceEntitled);
+ assertEquals(param.isMultiSim(), stats.isMultiSim);
verifyNoMoreInteractions(mPersistAtomsStorage);
}