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

Commit e7f8119c authored by Automerger Merge Worker's avatar Automerger Merge Worker Committed by Android (Google) Code Review
Browse files

Merge "Merge "Clear TelephonyManagerMap onStop" into udc-dev am: 5a29015e...

Merge "Merge "Clear TelephonyManagerMap onStop" into udc-dev am: 5a29015e am: e3a9b819 am: 52738813" into udc-qpr-dev-plus-aosp
parents 9695ad8f 4360ba47
Loading
Loading
Loading
Loading
+9 −4
Original line number Diff line number Diff line
@@ -153,14 +153,16 @@ public class InternetDialogController implements AccessPointController.AccessPoi
    @VisibleForTesting
    /** Should be accessible only to the main thread. */
    final Map<Integer, TelephonyDisplayInfo> mSubIdTelephonyDisplayInfoMap = new HashMap<>();
    @VisibleForTesting
    /** Should be accessible only to the main thread. */
    final Map<Integer, TelephonyManager> mSubIdTelephonyManagerMap = new HashMap<>();
    @VisibleForTesting
    /** Should be accessible only to the main thread. */
    final Map<Integer, TelephonyCallback> mSubIdTelephonyCallbackMap = new HashMap<>();

    private WifiManager mWifiManager;
    private Context mContext;
    private SubscriptionManager mSubscriptionManager;
    /** Should be accessible only to the main thread. */
    private Map<Integer, TelephonyManager> mSubIdTelephonyManagerMap = new HashMap<>();
    /** Should be accessible only to the main thread. */
    private Map<Integer, TelephonyCallback> mSubIdTelephonyCallbackMap = new HashMap<>();
    private TelephonyManager mTelephonyManager;
    private ConnectivityManager mConnectivityManager;
    private CarrierConfigTracker mCarrierConfigTracker;
@@ -320,6 +322,9 @@ public class InternetDialogController implements AccessPointController.AccessPoi
                Log.e(TAG, "Unexpected null telephony call back for Sub " + tm.getSubscriptionId());
            }
        }
        mSubIdTelephonyManagerMap.clear();
        mSubIdTelephonyCallbackMap.clear();
        mSubIdTelephonyDisplayInfoMap.clear();
        mSubscriptionManager.removeOnSubscriptionsChangedListener(
                mOnSubscriptionsChangedListener);
        mAccessPointController.removeAccessPointCallback(this);
+21 −0
Original line number Diff line number Diff line
@@ -43,6 +43,7 @@ import android.telephony.ServiceState;
import android.telephony.SignalStrength;
import android.telephony.SubscriptionInfo;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyCallback;
import android.telephony.TelephonyDisplayInfo;
import android.telephony.TelephonyManager;
import android.testing.AndroidTestingRunner;
@@ -961,6 +962,26 @@ public class InternetDialogControllerTest extends SysuiTestCase {
        assertThat(dds).contains(mContext.getString(R.string.carrier_network_change_mode));
    }

    @Test
    public void onStop_cleanUp() {
        doReturn(SUB_ID).when(mTelephonyManager).getSubscriptionId();
        assertThat(mInternetDialogController.mSubIdTelephonyManagerMap.get(SUB_ID)).isEqualTo(
                mTelephonyManager);
        assertThat(mInternetDialogController.mSubIdTelephonyCallbackMap.get(SUB_ID)).isNotNull();

        mInternetDialogController.onStop();

        verify(mTelephonyManager).unregisterTelephonyCallback(any(TelephonyCallback.class));
        assertThat(mInternetDialogController.mSubIdTelephonyDisplayInfoMap.isEmpty()).isTrue();
        assertThat(mInternetDialogController.mSubIdTelephonyManagerMap.isEmpty()).isTrue();
        assertThat(mInternetDialogController.mSubIdTelephonyCallbackMap.isEmpty()).isTrue();
        verify(mSubscriptionManager).removeOnSubscriptionsChangedListener(mInternetDialogController
                .mOnSubscriptionsChangedListener);
        verify(mAccessPointController).removeAccessPointCallback(mInternetDialogController);
        verify(mConnectivityManager).unregisterNetworkCallback(
                any(ConnectivityManager.NetworkCallback.class));
    }

    private String getResourcesString(String name) {
        return mContext.getResources().getString(getResourcesId(name));
    }