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

Commit b52bdbcc authored by Sarah Chin's avatar Sarah Chin
Browse files

Remove remaining messages after Telephony tests end

After finishing a test, the existing handlers might not be freed because
they were still processing existing messages. Clear all remaining
messages in tearDown to prevent memory leaks.

Test: atest FrameworksTelephonyTests OOM before and passes after
Bug: 220401651
Change-Id: I9d5f5b50d2425ef044203351e15f428838213534
Merged-In: I9d5f5b50d2425ef044203351e15f428838213534
parent 7fbd8652
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -350,6 +350,7 @@ public class ServiceStateTrackerTest extends TelephonyTest {

    @After
    public void tearDown() throws Exception {
        sst.removeCallbacksAndMessages(null);
        sst = null;
        mSSTTestHandler.quit();
        mSSTTestHandler.join();
+6 −0
Original line number Diff line number Diff line
@@ -839,6 +839,12 @@ public abstract class TelephonyTest {
    }

    protected void tearDown() throws Exception {
        // Clear all remaining messages
        if (!mTestableLoopers.isEmpty()) {
            for (TestableLooper looper : mTestableLoopers) {
                looper.getLooper().quit();
            }
        }
        // Ensure there are no references to handlers between tests.
        PhoneConfigurationManager.unregisterAllMultiSimConfigChangeRegistrants();
        // unmonitor TestableLooper for TelephonyTest class