diff options
Diffstat (limited to 'services/QualifiedNetworksService')
4 files changed, 139 insertions, 3 deletions
diff --git a/services/QualifiedNetworksService/src/com/android/telephony/qns/IwlanNetworkStatusTracker.java b/services/QualifiedNetworksService/src/com/android/telephony/qns/IwlanNetworkStatusTracker.java index 8175a2a..1377077 100644 --- a/services/QualifiedNetworksService/src/com/android/telephony/qns/IwlanNetworkStatusTracker.java +++ b/services/QualifiedNetworksService/src/com/android/telephony/qns/IwlanNetworkStatusTracker.java @@ -394,11 +394,11 @@ class IwlanNetworkStatusTracker { Log.d(sLogTag, "notifyIwlanNetworkStatus for slot: " + slotId); IwlanAvailabilityInfo info = makeIwlanAvailabilityInfo(slotId); if (!info.getIwlanAvailable() && notifyIwlanDisabled) { - Log.d(sLogTag, "setNotifyIwlanDisabled"); + Log.d(sLogTag, "setNotifyIwlanDisabled for slot: " + slotId); info.setNotifyIwlanDisabled(); } if (!info.equals(mLastIwlanAvailabilityInfo.get(slotId))) { - Log.d(sLogTag, "notify updated info"); + Log.d(sLogTag, "notify updated info for slot: " + slotId); if (mIwlanNetworkListenersArray.get(slotId) != null) { mIwlanNetworkListenersArray.get(slotId).notifyResult(info); } diff --git a/services/QualifiedNetworksService/src/com/android/telephony/qns/QnsComponents.java b/services/QualifiedNetworksService/src/com/android/telephony/qns/QnsComponents.java index 4d33f5a..1c9b898 100644 --- a/services/QualifiedNetworksService/src/com/android/telephony/qns/QnsComponents.java +++ b/services/QualifiedNetworksService/src/com/android/telephony/qns/QnsComponents.java @@ -275,7 +275,7 @@ class QnsComponents { } QnsImsManager qnsImsManager = mQnsImsManagers.get(slotId); if (qnsImsManager != null) { - mQnsTelephonyListeners.remove(slotId); + mQnsImsManagers.remove(slotId); qnsImsManager.close(); } QnsTelephonyListener qnsTelephonyListener = mQnsTelephonyListeners.get(slotId); diff --git a/services/QualifiedNetworksService/src/com/android/telephony/qns/QnsTelephonyListener.java b/services/QualifiedNetworksService/src/com/android/telephony/qns/QnsTelephonyListener.java index 51414e1..32883d4 100644 --- a/services/QualifiedNetworksService/src/com/android/telephony/qns/QnsTelephonyListener.java +++ b/services/QualifiedNetworksService/src/com/android/telephony/qns/QnsTelephonyListener.java @@ -364,6 +364,7 @@ class QnsTelephonyListener { * @param h the handler to get event. */ void unregisterCallStateChanged(Handler h) { + log("unregisterCallStateChanged"); if (h != null) { mCallStateListener.remove(h); } @@ -387,6 +388,7 @@ class QnsTelephonyListener { * @param h the handler to get event. */ void unregisterSubscriptionIdChanged(Handler h) { + log("unregisterSubscriptionIdChanged"); if (h != null) { mSubscriptionIdListener.remove(h); } @@ -398,6 +400,7 @@ class QnsTelephonyListener { * @param h the handler to get event. */ void unregisterIwlanServiceStateChanged(Handler h) { + log("unregisterIwlanServiceStateChanged"); if (h != null) { mIwlanServiceStateListener.remove(h); } diff --git a/services/QualifiedNetworksService/tests/src/com/android/telephony/qns/QnsComponentsTest.java b/services/QualifiedNetworksService/tests/src/com/android/telephony/qns/QnsComponentsTest.java new file mode 100644 index 0000000..9924331 --- /dev/null +++ b/services/QualifiedNetworksService/tests/src/com/android/telephony/qns/QnsComponentsTest.java @@ -0,0 +1,133 @@ +/* + * Copyright (C) 2023 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.telephony.qns; + +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; +import static org.mockito.Mockito.verify; + +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.JUnit4; +import org.mockito.MockitoAnnotations; + +@RunWith(JUnit4.class) +public class QnsComponentsTest extends QnsTest { + + @Before + public void setUp() throws Exception { + MockitoAnnotations.initMocks(this); + super.setUp(); + } + + @Test + public void testCreateQnsComponents() { + int slotId = 0; + QnsComponents qnsComponents = new QnsComponents(sMockContext); + + assertNull(qnsComponents.getQnsTelephonyListener(slotId)); + assertNull(qnsComponents.getQnsImsManager(slotId)); + assertNull(qnsComponents.getAlternativeEventListener(slotId)); + assertNull(qnsComponents.getCellularNetworkStatusTracker(slotId)); + assertNull(qnsComponents.getCellularQualityMonitor(slotId)); + assertNull(qnsComponents.getQnsProvisioningListener(slotId)); + assertNull(qnsComponents.getQnsEventDispatcher(slotId)); + assertNull(qnsComponents.getQnsCarrierConfigManager(slotId)); + assertNull(qnsComponents.getQnsCallStatusTracker(slotId)); + assertNull(qnsComponents.getWifiBackhaulMonitor(slotId)); + assertNull(qnsComponents.getWifiQualityMonitor()); + assertNull(qnsComponents.getIwlanNetworkStatusTracker()); + + qnsComponents.createQnsComponents(slotId); + + assertNotNull(qnsComponents.getQnsTelephonyListener(slotId)); + assertNotNull(qnsComponents.getQnsImsManager(slotId)); + assertNotNull(qnsComponents.getAlternativeEventListener(slotId)); + assertNotNull(qnsComponents.getCellularNetworkStatusTracker(slotId)); + assertNotNull(qnsComponents.getCellularQualityMonitor(slotId)); + assertNotNull(qnsComponents.getQnsProvisioningListener(slotId)); + assertNotNull(qnsComponents.getQnsEventDispatcher(slotId)); + assertNotNull(qnsComponents.getQnsCarrierConfigManager(slotId)); + assertNotNull(qnsComponents.getQnsCallStatusTracker(slotId)); + assertNotNull(qnsComponents.getWifiBackhaulMonitor(slotId)); + assertNotNull(qnsComponents.getWifiQualityMonitor()); + assertNotNull(qnsComponents.getIwlanNetworkStatusTracker()); + } + + + @Test + public void testCloseQnsComponents() { + int slotId = 0; + QnsComponents qnsComponents = new QnsComponents( + sMockContext, + mMockAltEventListener, + mMockCellNetStatusTracker, + mMockCellularQm, + mMockIwlanNetworkStatusTracker, + mMockQnsImsManager, + mMockQnsConfigManager, + mMockQnsEventDispatcher, + mMockQnsProvisioningListener, + mMockQnsTelephonyListener, + mMockQnsCallStatusTracker, + mMockWifiBm, + mMockWifiQm, + slotId); + + assertNotNull(qnsComponents.getQnsTelephonyListener(slotId)); + assertNotNull(qnsComponents.getQnsImsManager(slotId)); + assertNotNull(qnsComponents.getAlternativeEventListener(slotId)); + assertNotNull(qnsComponents.getCellularNetworkStatusTracker(slotId)); + assertNotNull(qnsComponents.getCellularQualityMonitor(slotId)); + assertNotNull(qnsComponents.getQnsProvisioningListener(slotId)); + assertNotNull(qnsComponents.getQnsEventDispatcher(slotId)); + assertNotNull(qnsComponents.getQnsCarrierConfigManager(slotId)); + assertNotNull(qnsComponents.getQnsCallStatusTracker(slotId)); + assertNotNull(qnsComponents.getWifiBackhaulMonitor(slotId)); + assertNotNull(qnsComponents.getWifiQualityMonitor()); + assertNotNull(qnsComponents.getIwlanNetworkStatusTracker()); + + qnsComponents.closeComponents(slotId); + + assertNull(qnsComponents.getQnsTelephonyListener(slotId)); + assertNull(qnsComponents.getQnsImsManager(slotId)); + assertNull(qnsComponents.getAlternativeEventListener(slotId)); + assertNull(qnsComponents.getCellularNetworkStatusTracker(slotId)); + assertNull(qnsComponents.getCellularQualityMonitor(slotId)); + assertNull(qnsComponents.getQnsProvisioningListener(slotId)); + assertNull(qnsComponents.getQnsEventDispatcher(slotId)); + assertNull(qnsComponents.getQnsCarrierConfigManager(slotId)); + assertNull(qnsComponents.getQnsCallStatusTracker(slotId)); + assertNull(qnsComponents.getWifiBackhaulMonitor(slotId)); + assertNull(qnsComponents.getWifiQualityMonitor()); + assertNull(qnsComponents.getIwlanNetworkStatusTracker()); + + verify(mMockQnsTelephonyListener).close(); + verify(mMockQnsImsManager).close(); + verify(mMockAltEventListener).close(); + verify(mMockCellNetStatusTracker).close(); + verify(mMockCellularQm).close(); + verify(mMockQnsProvisioningListener).close(); + verify(mMockQnsEventDispatcher).close(); + verify(mMockQnsConfigManager).close(); + verify(mMockQnsCallStatusTracker).close(); + verify(mMockWifiBm).close(); + verify(mMockWifiQm).close(); + verify(mMockIwlanNetworkStatusTracker).close(); + } +} |