summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/QualifiedNetworksService/src/com/android/telephony/qns/IwlanNetworkStatusTracker.java4
-rw-r--r--services/QualifiedNetworksService/src/com/android/telephony/qns/QnsComponents.java2
-rw-r--r--services/QualifiedNetworksService/src/com/android/telephony/qns/QnsTelephonyListener.java3
-rw-r--r--services/QualifiedNetworksService/tests/src/com/android/telephony/qns/QnsComponentsTest.java133
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();
+ }
+}