From 2973cf4363e9cc91cf761a1978b789060f40ce3f Mon Sep 17 00:00:00 2001 From: Chiachang Wang Date: Tue, 31 Oct 2023 09:23:18 +0000 Subject: [PATCH] Quit handler threads at the end of the tests The created handler threads should be quit after the tests to prevent memory leakage. Also, this commit updates the method used to close the created HandlerThread to do it correctly. Bug: 308537727 Test: atest ConnectivityCoverageTests Change-Id: I3715a73a9142418c05f98bc95e275f97161ab3cd --- .../server/ConnectivityServiceTest.java | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/tests/unit/java/com/android/server/ConnectivityServiceTest.java b/tests/unit/java/com/android/server/ConnectivityServiceTest.java index 42b0d59f13..35c1f41203 100755 --- a/tests/unit/java/com/android/server/ConnectivityServiceTest.java +++ b/tests/unit/java/com/android/server/ConnectivityServiceTest.java @@ -4323,7 +4323,9 @@ public class ConnectivityServiceTest { testFactory.terminate(); testFactory.assertNoRequestChanged(); if (networkCallback != null) mCm.unregisterNetworkCallback(networkCallback); - handlerThread.quit(); + + handlerThread.quitSafely(); + handlerThread.join(); } @Test @@ -4384,6 +4386,8 @@ public class ConnectivityServiceTest { expectNoRequestChanged(testFactoryAll); // still seeing the request mWiFiAgent.disconnect(); + handlerThread.quitSafely(); + handlerThread.join(); } @Test @@ -4417,7 +4421,8 @@ public class ConnectivityServiceTest { } } } - handlerThread.quit(); + handlerThread.quitSafely(); + handlerThread.join(); } @Test @@ -6038,7 +6043,8 @@ public class ConnectivityServiceTest { testFactory.assertNoRequestChanged(); } finally { mCm.unregisterNetworkCallback(cellNetworkCallback); - handlerThread.quit(); + handlerThread.quitSafely(); + handlerThread.join(); } } @@ -6628,7 +6634,8 @@ public class ConnectivityServiceTest { } } finally { testFactory.terminate(); - handlerThread.quit(); + handlerThread.quitSafely(); + handlerThread.join(); } } @@ -15331,6 +15338,8 @@ public class ConnectivityServiceTest { expectNoRequestChanged(oemPaidFactory); internetFactory.expectRequestAdd(); mCm.unregisterNetworkCallback(wifiCallback); + handlerThread.quitSafely(); + handlerThread.join(); } /** @@ -15695,6 +15704,8 @@ public class ConnectivityServiceTest { assertTrue(testFactory.getMyStartRequested()); } finally { testFactory.terminate(); + handlerThread.quitSafely(); + handlerThread.join(); } }