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

Commit b0412a7e authored by Remi NGUYEN VAN's avatar Remi NGUYEN VAN Committed by Automerger Merge Worker
Browse files

Fix testIpClientServiceAvailableAfterPolling am: a4709152

Change-Id: Icca83bd6064c263ab352fc7d0bcacb18d9d24574
parents 3bbc506c a4709152
Loading
Loading
Loading
Loading
+10 −1
Original line number Diff line number Diff line
@@ -29,6 +29,8 @@ import android.os.Build
import android.os.IBinder
import androidx.test.ext.junit.runners.AndroidJUnit4
import androidx.test.filters.SmallTest
import com.android.dx.mockito.inline.extended.ExtendedMockito.doReturn
import com.android.dx.mockito.inline.extended.ExtendedMockito.mockitoSession
import com.android.testutils.DevSdkIgnoreRule
import org.junit.After
import org.junit.Before
@@ -37,7 +39,6 @@ import org.junit.Test
import org.junit.runner.RunWith
import org.mockito.ArgumentMatchers.any
import org.mockito.Mock
import org.mockito.Mockito.doReturn
import org.mockito.Mockito.never
import org.mockito.Mockito.timeout
import org.mockito.Mockito.verify
@@ -91,11 +92,19 @@ class ModuleNetworkStackClientTest {

    @Test
    fun testIpClientServiceAvailableAfterPolling() {
        // Force NetworkStack.getService() to return null: this cannot be done with
        // setServiceForTest, as passing null just restores default behavior.
        val session = mockitoSession().spyStatic(NetworkStack::class.java).startMocking()
        doReturn(null).`when` { NetworkStack.getService() }
        ModuleNetworkStackClient.getInstance(mContext).makeIpClient(TEST_IFNAME, mIpClientCb)

        Thread.sleep(TEST_TIMEOUT_MS)
        verify(mConnector, never()).makeIpClient(any(), any())
        NetworkStack.setServiceForTest(mConnectorBinder)

        // Restore behavior of NetworkStack to return what was set in setServiceForTest
        session.finishMocking()

        // Use a longer timeout as polling can cause larger delays
        verify(mConnector, timeout(TEST_TIMEOUT_MS * 4)).makeIpClient(TEST_IFNAME, mIpClientCb)
    }