Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 74abda9f authored by Hakjun Choi's avatar Hakjun Choi
Browse files

Add direct report back when registerForNtnSignalStrength is invoked

There is a case that caller has requested to report ntn signal strength, but no report for a whille as there is not signal strength happens.
Therefore added a immediate report back when registerForNtnSignalStrength is invoked

Bug: 353593633
Flag: EXEMPT bugfix
Test: atest SatelliteControllerTest
    manually e2e test and check whether direct reports triggered by log checking
Change-Id: I17bd7f7989171ec64a6b38a73665552a2619080a
parent ddcce1a5
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -2397,6 +2397,15 @@ public class SatelliteController extends Handler {
        int error = evaluateOemSatelliteRequestAllowed(true);
        if (error == SATELLITE_RESULT_SUCCESS) {
            mNtnSignalStrengthChangedListeners.put(callback.asBinder(), callback);
            synchronized (mNtnSignalsStrengthLock) {
                try {
                    callback.onNtnSignalStrengthChanged(mNtnSignalStrength);
                    plogd("registerForNtnSignalStrengthChanged: " + mNtnSignalStrength);
                } catch (RemoteException ex) {
                    ploge("registerForNtnSignalStrengthChanged: RemoteException ex="
                            + ex);
                }
            }
        } else {
            throw new RemoteException(new IllegalStateException("registration fails: " + error));
        }
+4 −0
Original line number Diff line number Diff line
@@ -2444,6 +2444,10 @@ public class SatelliteControllerTest extends TelephonyTest {
        verifyRegisterForNtnSignalStrengthChanged(SUB_ID, callback,
                SATELLITE_RESULT_SUCCESS);
        verifyRequestNtnSignalStrength(expectedLevel, SATELLITE_RESULT_SUCCESS);
        processAllMessages();
        assertTrue(waitForForEvents(
                semaphore, 1, "testRegisterForNtnSignalStrengthChanged"));
        assertEquals(expectedLevel, signalStrength[0].getLevel());

        expectedLevel = NTN_SIGNAL_STRENGTH_GOOD;
        sendNtnSignalStrengthChangedEvent(expectedLevel, null);