Merge "Add SatelliteSosMessageRecommender call case" into 24D1-dev
diff --git a/src/com/android/services/telephony/TelephonyConnectionService.java b/src/com/android/services/telephony/TelephonyConnectionService.java
index 565393d..3a05c6d 100644
--- a/src/com/android/services/telephony/TelephonyConnectionService.java
+++ b/src/com/android/services/telephony/TelephonyConnectionService.java
@@ -2574,6 +2574,8 @@
mIsEmergencyCallPending = true;
mEmergencyConnection = (TelephonyConnection) resultConnection;
+ handleEmergencyCallStartedForSatelliteSOSMessageRecommender(mEmergencyConnection,
+ phone);
}
CompletableFuture<Void> maybeHoldFuture =
@@ -4642,6 +4644,8 @@
}
connection.addTelephonyConnectionListener(mEmergencyConnectionSatelliteListener);
mSatelliteSOSMessageRecommender.onEmergencyCallStarted(connection);
+ mSatelliteSOSMessageRecommender.onEmergencyCallConnectionStateChanged(
+ connection.getTelecomCallId(), connection.STATE_DIALING);
}
/**
diff --git a/tests/src/com/android/services/telephony/TelephonyConnectionServiceTest.java b/tests/src/com/android/services/telephony/TelephonyConnectionServiceTest.java
index e76c11c..3470d4a 100644
--- a/tests/src/com/android/services/telephony/TelephonyConnectionServiceTest.java
+++ b/tests/src/com/android/services/telephony/TelephonyConnectionServiceTest.java
@@ -2177,7 +2177,7 @@
.getDomainSelectionConnection(eq(mPhone0), eq(SELECTOR_TYPE_CALLING), eq(true));
verify(mEmergencyStateTracker)
.startEmergencyCall(eq(mPhone0), connectionCaptor.capture(), eq(false));
- verify(mSatelliteSOSMessageRecommender).onEmergencyCallStarted(any());
+ verify(mSatelliteSOSMessageRecommender, times(2)).onEmergencyCallStarted(any());
verify(mEmergencyCallDomainSelectionConnection).createEmergencyConnection(any(), any());
android.telecom.Connection tc = connectionCaptor.getValue();
@@ -2216,7 +2216,7 @@
.getDomainSelectionConnection(eq(mPhone0), eq(SELECTOR_TYPE_CALLING), eq(true));
verify(mEmergencyStateTracker)
.startEmergencyCall(eq(mPhone0), connectionCaptor.capture(), eq(false));
- verify(mSatelliteSOSMessageRecommender).onEmergencyCallStarted(any());
+ verify(mSatelliteSOSMessageRecommender, times(2)).onEmergencyCallStarted(any());
verify(mEmergencyCallDomainSelectionConnection).createEmergencyConnection(any(), any());
android.telecom.Connection tc = connectionCaptor.getValue();
@@ -2260,7 +2260,7 @@
.getDomainSelectionConnection(eq(mPhone0), eq(SELECTOR_TYPE_CALLING), eq(true));
verify(mEmergencyStateTracker)
.startEmergencyCall(eq(mPhone0), connectionCaptor.capture(), eq(false));
- verify(mSatelliteSOSMessageRecommender).onEmergencyCallStarted(any());
+ verify(mSatelliteSOSMessageRecommender, times(2)).onEmergencyCallStarted(any());
verify(mEmergencyCallDomainSelectionConnection).createEmergencyConnection(any(), any());
android.telecom.Connection tc = connectionCaptor.getValue();
@@ -2408,7 +2408,7 @@
listener.onDisconnect(0);
- verify(mSatelliteSOSMessageRecommender).onEmergencyCallStarted(any());
+ verify(mSatelliteSOSMessageRecommender, times(2)).onEmergencyCallStarted(any());
ArgumentCaptor<DialArgs> argsCaptor = ArgumentCaptor.forClass(DialArgs.class);
@@ -2611,7 +2611,7 @@
.getDomainSelectionConnection(eq(mPhone0), eq(SELECTOR_TYPE_CALLING), eq(true));
verify(mEmergencyStateTracker)
.startEmergencyCall(eq(mPhone0), connectionCaptor.capture(), eq(false));
- verify(mSatelliteSOSMessageRecommender).onEmergencyCallStarted(any());
+ verify(mSatelliteSOSMessageRecommender, times(2)).onEmergencyCallStarted(any());
verify(mEmergencyCallDomainSelectionConnection).createEmergencyConnection(any(), any());
android.telecom.Connection tc = connectionCaptor.getValue();
@@ -3340,7 +3340,7 @@
.getDomainSelectionConnection(eq(mPhone0), eq(SELECTOR_TYPE_CALLING), eq(true));
verify(mEmergencyStateTracker)
.startEmergencyCall(eq(mPhone0), connectionCaptor.capture(), eq(false));
- verify(mSatelliteSOSMessageRecommender).onEmergencyCallStarted(any());
+ verify(mSatelliteSOSMessageRecommender, times(2)).onEmergencyCallStarted(any());
verify(mEmergencyCallDomainSelectionConnection).createEmergencyConnection(any(), any());
verify(mPhone0).dial(anyString(), any(), any());
@@ -3369,7 +3369,7 @@
verify(mEmergencyStateTracker, times(0)).onEmergencyCallStateChanged(
any(), eq(c));
- verify(mSatelliteSOSMessageRecommender, times(0))
+ verify(mSatelliteSOSMessageRecommender, times(2))
.onEmergencyCallConnectionStateChanged(eq(TELECOM_CALL_ID1), anyInt());
c.setActive();
@@ -3393,7 +3393,7 @@
// state change not notified any more after CONNECTED once
verify(mEmergencyStateTracker, times(1)).onEmergencyCallStateChanged(
any(), eq(c));
- verify(mSatelliteSOSMessageRecommender, times(1))
+ verify(mSatelliteSOSMessageRecommender, times(3))
.onEmergencyCallConnectionStateChanged(eq(TELECOM_CALL_ID1), anyInt());
// state change to ACTIVE again
@@ -3405,7 +3405,7 @@
// state change not notified any more after CONNECTED once
verify(mEmergencyStateTracker, times(1)).onEmergencyCallStateChanged(
any(), eq(c));
- verify(mSatelliteSOSMessageRecommender, times(1))
+ verify(mSatelliteSOSMessageRecommender, times(3))
.onEmergencyCallConnectionStateChanged(eq(TELECOM_CALL_ID1), anyInt());
// SRVCC happens
@@ -3427,7 +3427,7 @@
// state change not notified
verify(mEmergencyStateTracker, times(1)).onEmergencyCallStateChanged(
any(), eq(c));
- verify(mSatelliteSOSMessageRecommender, times(1))
+ verify(mSatelliteSOSMessageRecommender, times(3))
.onEmergencyCallConnectionStateChanged(eq(TELECOM_CALL_ID1), anyInt());
}