diff --git a/tests/unit/java/com/android/server/NsdServiceTest.java b/tests/unit/java/com/android/server/NsdServiceTest.java index 2789c9a060..4e594a3cca 100644 --- a/tests/unit/java/com/android/server/NsdServiceTest.java +++ b/tests/unit/java/com/android/server/NsdServiceTest.java @@ -236,8 +236,8 @@ public class NsdServiceTest { @After public void tearDown() throws Exception { if (mThread != null) { - mThread.quit(); - mThread = null; + mThread.quitSafely(); + mThread.join(); } } diff --git a/tests/unit/java/com/android/server/connectivity/PermissionMonitorTest.java b/tests/unit/java/com/android/server/connectivity/PermissionMonitorTest.java index 8dcfffa0dd..5bde31ac19 100644 --- a/tests/unit/java/com/android/server/connectivity/PermissionMonitorTest.java +++ b/tests/unit/java/com/android/server/connectivity/PermissionMonitorTest.java @@ -100,6 +100,7 @@ import com.android.testutils.DevSdkIgnoreRule; import com.android.testutils.DevSdkIgnoreRunner; import com.android.testutils.HandlerUtils; +import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -214,6 +215,14 @@ public class PermissionMonitorTest { onUserAdded(MOCK_USER1); } + @After + public void tearDown() throws Exception { + if (mHandlerThread != null) { + mHandlerThread.quitSafely(); + mHandlerThread.join(); + } + } + private boolean hasRestrictedNetworkPermission(String partition, int targetSdkVersion, String packageName, int uid, String... permissions) { final PackageInfo packageInfo = diff --git a/tests/unit/java/com/android/server/connectivity/mdns/MdnsSocketProviderTest.java b/tests/unit/java/com/android/server/connectivity/mdns/MdnsSocketProviderTest.java index c0b74e16c6..1cc9985a75 100644 --- a/tests/unit/java/com/android/server/connectivity/mdns/MdnsSocketProviderTest.java +++ b/tests/unit/java/com/android/server/connectivity/mdns/MdnsSocketProviderTest.java @@ -78,6 +78,7 @@ import com.android.testutils.DevSdkIgnoreRule; import com.android.testutils.DevSdkIgnoreRunner; import com.android.testutils.HandlerUtils; +import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -119,6 +120,7 @@ public class MdnsSocketProviderTest { @Mock private NetworkInterfaceWrapper mLocalOnlyIfaceWrapper; @Mock private NetworkInterfaceWrapper mTetheredIfaceWrapper; @Mock private SocketRequestMonitor mSocketRequestMonitor; + private HandlerThread mHandlerThread; private Handler mHandler; private MdnsSocketProvider mSocketProvider; private NetworkCallback mNetworkCallback; @@ -157,9 +159,9 @@ public class MdnsSocketProviderTest { eq(TETHERED_IFACE_NAME), any()); doReturn(789).when(mDeps).getNetworkInterfaceIndexByName( eq(WIFI_P2P_IFACE_NAME), any()); - final HandlerThread thread = new HandlerThread("MdnsSocketProviderTest"); - thread.start(); - mHandler = new Handler(thread.getLooper()); + mHandlerThread = new HandlerThread("MdnsSocketProviderTest"); + mHandlerThread.start(); + mHandler = new Handler(mHandlerThread.getLooper()); doReturn(mTestSocketNetLinkMonitor).when(mDeps).createSocketNetlinkMonitor(any(), any(), any()); @@ -170,10 +172,18 @@ public class MdnsSocketProviderTest { return mTestSocketNetLinkMonitor; }).when(mDeps).createSocketNetlinkMonitor(any(), any(), any()); - mSocketProvider = new MdnsSocketProvider(mContext, thread.getLooper(), mDeps, mLog, + mSocketProvider = new MdnsSocketProvider(mContext, mHandlerThread.getLooper(), mDeps, mLog, mSocketRequestMonitor); } + @After + public void tearDown() throws Exception { + if (mHandlerThread != null) { + mHandlerThread.quitSafely(); + mHandlerThread.join(); + } + } + private void runOnHandler(Runnable r) { mHandler.post(r); HandlerUtils.waitForIdle(mHandler, DEFAULT_TIMEOUT);