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

Commit b61fac95 authored by Richard Uhler's avatar Richard Uhler
Browse files

Fix flaky testEnableRollbackTimeoutFailsRollback test

We no longer block on the handler thread in getAvailableRollbacks. That
means it is possible we see an available rollback left over from a
previous test run. Update the test to ensure previous rollbacks are
removed and give sufficient time to make a new rollback available before
concluding that no rollback will be made available in this case.

Test: atest RollbackTest:com.android.tests.rollback.RollbackTest#testEnableRollbackTimeoutFailsRollback
Change-Id: Id94d5452836b07d6f802758bd0dfdd3c276a3c05
parent 2c833c2b
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -1020,6 +1020,7 @@ public class RollbackTest {

            Uninstall.packages(TestApp.A);
            Install.single(TestApp.A1).commit();
            waitForUnavailableRollback(TestApp.A);

            // Block the RollbackManager to make extra sure it will not be
            // able to enable the rollback in time.
@@ -1028,6 +1029,10 @@ public class RollbackTest {

            assertThat(InstallUtils.getInstalledVersion(TestApp.A)).isEqualTo(2);

            // Give plenty of time for RollbackManager to unblock and attempt
            // to make the rollback available before asserting that the
            // rollback was not made available.
            Thread.sleep(TimeUnit.SECONDS.toMillis(2));
            assertThat(
                getUniqueRollbackInfoForPackage(rm.getAvailableRollbacks(), TestApp.A)).isNull();
        } finally {