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

Commit 79c4f4ba authored by Daniel Bright's avatar Daniel Bright
Browse files

Fixed flaky test in DcTrackerTest

Calling quit and join on the handler after creating it.

Test: DcTrackerTest
Bug: 148680558
Change-Id: I2cb3abf3214f0372685f7aa1d2fc7391a5e7adfa
parent 61625b69
Loading
Loading
Loading
Loading
+14 −8
Original line number Diff line number Diff line
@@ -2047,20 +2047,26 @@ public class DcTrackerTest extends TelephonyTest {

        return true;
    }

    @Test
    public void testNoApnContextsWhenDataIsDisabled() {
    public void testNoApnContextsWhenDataIsDisabled() throws java.lang.InterruptedException {
        //Check that apn contexts are loaded.
        assertTrue(mDct.getApnContexts().size() > 0);

        //Do work normally done in teardown.
        mDct.removeCallbacksAndMessages(null);
        mDcTrackerTestHandler.quit();
        mDcTrackerTestHandler.join();

        //Set isDataCapable to false for the new DcTracker being created in DcTrackerTestHandler.
        doReturn(false).when(mTelephonyManager).isDataCapable();
        mDcTrackerTestHandler = new DcTrackerTestHandler(getClass().getSimpleName());
        setReady(false);
        mDcTrackerTestHandler.start();
        waitUntilReady();
        assertTrue(mDct.getApnContexts().size() == 0);

        doReturn(true).when(mTelephonyManager).isDataCapable();
        mDcTrackerTestHandler = new DcTrackerTestHandler(getClass().getSimpleName());
        setReady(false);
        mDcTrackerTestHandler.start();
        waitUntilReady();
        assertTrue(mDct.getApnContexts().size() > 0);
        assertEquals(0, mDct.getApnContexts().size());

        //No need to clean up handler because that work is done in teardown.
    }
}