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

Commit cbe0f5fa 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

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

Change-Id: Ibb9c82bdab00dae3953a33b4e53f785528fdf2f3
parents 2ccecc16 f37d7a21
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();