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

Commit 8262f117 authored by Automerger Merge Worker's avatar Automerger Merge Worker
Browse files

Merge "Use waitForIdle() to wait for Threaded processing." am: cd768aec am: 04dab910

Change-Id: I1d648dd7d700230afab893336ef853a41717ba80
parents d36a0b81 04dab910
Loading
Loading
Loading
Loading
+28 −13
Original line number Diff line number Diff line
@@ -6446,14 +6446,16 @@ public class ConnectivityServiceTest {
    public void testRegisterUnregisterConnectivityDiagnosticsCallback() throws Exception {
        final NetworkRequest wifiRequest =
                new NetworkRequest.Builder().addTransportType(TRANSPORT_WIFI).build();

        when(mConnectivityDiagnosticsCallback.asBinder()).thenReturn(mIBinder);

        mService.registerConnectivityDiagnosticsCallback(
                mConnectivityDiagnosticsCallback, wifiRequest, mContext.getPackageName());

        verify(mIBinder, timeout(TIMEOUT_MS))
                .linkToDeath(any(ConnectivityDiagnosticsCallbackInfo.class), anyInt());
        // Block until all other events are done processing.
        HandlerUtilsKt.waitForIdle(mCsHandlerThread, TIMEOUT_MS);

        verify(mIBinder).linkToDeath(any(ConnectivityDiagnosticsCallbackInfo.class), anyInt());
        verify(mConnectivityDiagnosticsCallback).asBinder();
        assertTrue(
                mService.mConnectivityDiagnosticsCallbacks.containsKey(
                        mConnectivityDiagnosticsCallback));
@@ -6476,8 +6478,10 @@ public class ConnectivityServiceTest {
        mService.registerConnectivityDiagnosticsCallback(
                mConnectivityDiagnosticsCallback, wifiRequest, mContext.getPackageName());

        verify(mIBinder, timeout(TIMEOUT_MS))
                .linkToDeath(any(ConnectivityDiagnosticsCallbackInfo.class), anyInt());
        // Block until all other events are done processing.
        HandlerUtilsKt.waitForIdle(mCsHandlerThread, TIMEOUT_MS);

        verify(mIBinder).linkToDeath(any(ConnectivityDiagnosticsCallbackInfo.class), anyInt());
        verify(mConnectivityDiagnosticsCallback).asBinder();
        assertTrue(
                mService.mConnectivityDiagnosticsCallbacks.containsKey(
@@ -6635,8 +6639,11 @@ public class ConnectivityServiceTest {
    public void testConnectivityDiagnosticsCallbackOnConnectivityReport() throws Exception {
        setUpConnectivityDiagnosticsCallback();

        // Wait for onConnectivityReport to fire
        verify(mConnectivityDiagnosticsCallback, timeout(TIMEOUT_MS))
        // Block until all other events are done processing.
        HandlerUtilsKt.waitForIdle(mCsHandlerThread, TIMEOUT_MS);

        // Verify onConnectivityReport fired
        verify(mConnectivityDiagnosticsCallback)
                .onConnectivityReport(any(ConnectivityReport.class));
    }

@@ -6648,9 +6655,11 @@ public class ConnectivityServiceTest {
        // cellular network agent
        mCellNetworkAgent.notifyDataStallSuspected();

        // Wait for onDataStallSuspected to fire
        verify(mConnectivityDiagnosticsCallback, timeout(TIMEOUT_MS))
                .onDataStallSuspected(any(DataStallReport.class));
        // Block until all other events are done processing.
        HandlerUtilsKt.waitForIdle(mCsHandlerThread, TIMEOUT_MS);

        // Verify onDataStallSuspected fired
        verify(mConnectivityDiagnosticsCallback).onDataStallSuspected(any(DataStallReport.class));
    }

    @Test
@@ -6661,15 +6670,21 @@ public class ConnectivityServiceTest {
        final boolean hasConnectivity = true;
        mService.reportNetworkConnectivity(n, hasConnectivity);

        // Wait for onNetworkConnectivityReported to fire
        verify(mConnectivityDiagnosticsCallback, timeout(TIMEOUT_MS))
        // Block until all other events are done processing.
        HandlerUtilsKt.waitForIdle(mCsHandlerThread, TIMEOUT_MS);

        // Verify onNetworkConnectivityReported fired
        verify(mConnectivityDiagnosticsCallback)
                .onNetworkConnectivityReported(eq(n), eq(hasConnectivity));

        final boolean noConnectivity = false;
        mService.reportNetworkConnectivity(n, noConnectivity);

        // Block until all other events are done processing.
        HandlerUtilsKt.waitForIdle(mCsHandlerThread, TIMEOUT_MS);

        // Wait for onNetworkConnectivityReported to fire
        verify(mConnectivityDiagnosticsCallback, timeout(TIMEOUT_MS))
        verify(mConnectivityDiagnosticsCallback)
                .onNetworkConnectivityReported(eq(n), eq(noConnectivity));
    }
}