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

Commit d0de5ca3 authored by Jon Miranda's avatar Jon Miranda Committed by Automerger Merge Worker
Browse files

Add resume check to other WorkProfileTests to fix flakiness. am: f37d7a21 am: cbe0f5fa

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16222650

Change-Id: Ib2bd359448328ab1fea1fcb5f68c1ad2b5e4e466
parents bc53f801 cbe0f5fa
Loading
Loading
Loading
Loading
+0 −8
Original line number Diff line number Diff line
@@ -352,14 +352,6 @@ public abstract class AbstractLauncherUiTest {
                launcher -> launcher.getStateManager().getCurrentStableState() == state.get());
    }

    // Cannot be used in TaplTests between a Tapl call injecting a gesture and a tapl call
    // expecting the results of that gesture because the wait can hide flakeness.
    protected void waitForStateTransitionToEnd(String message, Supplier<LauncherState> state) {
        waitForLauncherCondition(message,
                launcher -> launcher.getStateManager().isInStableState(state.get())
                        && !launcher.getStateManager().isInTransition());
    }

    protected void waitForResumed(String message) {
        waitForLauncherCondition(message, launcher -> launcher.hasBeenResumed());
    }
+7 −19
Original line number Diff line number Diff line
@@ -59,6 +59,13 @@ public class WorkProfileTest extends AbstractLauncherUiTest {
        String[] tokens = output.split("\\s+");
        mProfileUserId = Integer.parseInt(tokens[tokens.length - 1]);
        mDevice.executeShellCommand("am start-user " + mProfileUserId);

        mDevice.pressHome();
        waitForLauncherCondition("Launcher didn't start", Objects::nonNull);
        waitForState("Launcher internal state didn't switch to Normal", () -> NORMAL);
        waitForResumed("Launcher internal state is still Background");
        executeOnLauncher(launcher -> launcher.getStateManager().goToState(ALL_APPS));
        waitForState("Launcher internal state didn't switch to All Apps", () -> ALL_APPS);
    }

    @After
@@ -89,14 +96,6 @@ public class WorkProfileTest extends AbstractLauncherUiTest {
    @Test
    @ScreenRecord // b/202735477
    public void workTabExists() {
        mDevice.pressHome();
        waitForLauncherCondition("Launcher didn't start", Objects::nonNull);
        waitForStateTransitionToEnd("Launcher internal state didn't switch to Normal",
                () -> NORMAL);
        waitForResumed("Launcher internal state is still Background");
        executeOnLauncher(launcher -> launcher.getStateManager().goToState(ALL_APPS));
        waitForStateTransitionToEnd("Launcher internal state didn't switch to All Apps",
                () -> ALL_APPS);
        waitForLauncherCondition("Personal tab is missing",
                launcher -> launcher.getAppsView().isPersonalTabVisible(),
                LauncherInstrumentation.WAIT_TIME_MS);
@@ -107,12 +106,6 @@ public class WorkProfileTest extends AbstractLauncherUiTest {

    @Test
    public void toggleWorks() {
        mDevice.pressHome();
        waitForLauncherCondition("Launcher didn't start", Objects::nonNull);
        waitForState("Launcher internal state didn't switch to Normal", () -> NORMAL);
        executeOnLauncher(launcher -> launcher.getStateManager().goToState(ALL_APPS));
        waitForState("Launcher internal state didn't switch to All Apps", () -> ALL_APPS);

        waitForWorkTabSetup();

        executeOnLauncher(launcher -> {
@@ -154,11 +147,6 @@ public class WorkProfileTest extends AbstractLauncherUiTest {

    @Test
    public void testEdu() {
        mDevice.pressHome();
        waitForLauncherCondition("Launcher didn't start", Objects::nonNull);
        waitForState("Launcher internal state didn't switch to Normal", () -> NORMAL);
        executeOnLauncher(launcher -> launcher.getStateManager().goToState(ALL_APPS));
        waitForState("Launcher internal state didn't switch to All Apps", () -> ALL_APPS);
        waitForWorkTabSetup();
        executeOnLauncher(l -> {
            l.getSharedPrefs().edit().putInt(WorkAdapterProvider.KEY_WORK_EDU_STEP, 0).commit();