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

Commit 42a1c818 authored by Hyosun Kim's avatar Hyosun Kim Committed by Android (Google) Code Review
Browse files

Merge "Do not report satellite network if carrier config is disabled" into main

parents f9d963cd 33ed4025
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -2519,6 +2519,12 @@ public class SatelliteController extends Handler {
            logd("getSatellitePlmnsForCarrier: carrierEnabledSatelliteFlag is disabled");
            return new ArrayList<>();
        }

        if (!isSatelliteSupportedViaCarrier(subId)) {
            logd("Satellite for carrier is not supported.");
            return new ArrayList<>();
        }

        synchronized (mSupportedSatelliteServicesLock) {
            return mMergedPlmnListPerCarrier.get(subId, new ArrayList<>()).stream().toList();
        }
+20 −2
Original line number Diff line number Diff line
@@ -1736,6 +1736,8 @@ public class SatelliteControllerTest extends TelephonyTest {

        // Trigger carrier config changed with carrierEnabledSatelliteFlag enabled
        when(mFeatureFlags.carrierEnabledSatelliteFlag()).thenReturn(true);
        mCarrierConfigBundle.putBoolean(CarrierConfigManager.KEY_SATELLITE_ATTACH_SUPPORTED_BOOL,
                true);
        for (Pair<Executor, CarrierConfigManager.CarrierConfigChangeListener> pair
                : mCarrierConfigChangedListenerList) {
            pair.first.execute(() -> pair.second.onCarrierConfigChanged(
@@ -2723,8 +2725,8 @@ public class SatelliteControllerTest extends TelephonyTest {
        verify(mMockSatelliteModemInterface, times(1)).setSatellitePlmn(anyInt(),
                eq(plmnListPerCarrier), eq(allSatellitePlmnList), any(Message.class));

        // If the PlmnListPerCarrier and the overlay config plmn list are exist verify passing
        // the modem.
        // If the PlmnListPerCarrier and the overlay config plmn list are exist but
        // KEY_SATELLITE_ATTACH_SUPPORTED_BOOL is false, verify passing to the modem.
        entitlementPlmnList = Arrays.stream(new String[]{"00101", "00102", "00103"}).toList();
        overlayConfigPlmnList =
                Arrays.stream(new String[]{"00101", "00102", "00104"}).toList();
@@ -2734,6 +2736,22 @@ public class SatelliteControllerTest extends TelephonyTest {
        mSatelliteControllerUT.onSatelliteEntitlementStatusUpdated(SUB_ID, true,
                entitlementPlmnList, mIIntegerConsumer);

        plmnListPerCarrier = mSatelliteControllerUT.getSatellitePlmnsForCarrier(SUB_ID);
        assertEquals(new ArrayList<>(), plmnListPerCarrier);
        allSatellitePlmnList = SatelliteServiceUtils.mergeStrLists(
                entitlementPlmnList, overlayConfigPlmnList);
        verify(mMockSatelliteModemInterface, times(1)).setSatellitePlmn(anyInt(),
                eq(entitlementPlmnList), eq(allSatellitePlmnList), any(Message.class));

        // If the PlmnListPerCarrier and the overlay config plmn list are exist and
        // KEY_SATELLITE_ATTACH_SUPPORTED_BOOL is true verify passing the modem.
        reset(mMockSatelliteModemInterface);
        mCarrierConfigBundle.putBoolean(CarrierConfigManager.KEY_SATELLITE_ATTACH_SUPPORTED_BOOL,
                true);

        mSatelliteControllerUT.onSatelliteEntitlementStatusUpdated(SUB_ID, true,
                entitlementPlmnList, mIIntegerConsumer);

        plmnListPerCarrier = mSatelliteControllerUT.getSatellitePlmnsForCarrier(SUB_ID);
        allSatellitePlmnList = SatelliteServiceUtils.mergeStrLists(
                plmnListPerCarrier, overlayConfigPlmnList);