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

Commit 6c868f83 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Update test for onBackPressedOnTaskRoot" into main

parents 54daa118 32e83962
Loading
Loading
Loading
Loading
+31 −5
Original line number Diff line number Diff line
@@ -1512,13 +1512,9 @@ public class WindowOrganizerTests extends WindowTestsBase {
        final Task task = createTask(rootTask);
        task.setTaskOrganizer(organizer);
        final ActivityRecord activity = createActivityRecord(rootTask.mDisplayContent, task);
        final Task rootTask2 = createRootTask();
        final Task task2 = createTask(rootTask2);
        task2.setTaskOrganizer(organizer);
        final ActivityRecord activity2 = createActivityRecord(rootTask.mDisplayContent, task2);

        assertTrue(rootTask.isOrganized());
        assertTrue(rootTask2.isOrganized());
        assertTrue(task.isOrganized());

        // Verify a back pressed does not call the organizer
        mWm.mAtmService.mActivityClientController.onBackPressed(activity.token,
@@ -1550,6 +1546,36 @@ public class WindowOrganizerTests extends WindowTestsBase {
        verify(organizer, times(1)).onBackPressedOnTaskRoot(any());
    }

    @Test
    public void testInterceptBackPressedOnTaskRootForUnOrganizedTask() throws RemoteException {
        final ITaskOrganizer organizer = registerMockOrganizer();
        final Task rootTask = createRootTask();
        final Task unorganizedTask = createTask(rootTask);
        final ActivityRecord activity = createActivityRecord(rootTask.mDisplayContent,
                unorganizedTask);

        assertTrue(rootTask.isOrganized());
        assertFalse(unorganizedTask.isOrganized());

        // Verify a back pressed does not call the organizer
        mWm.mAtmService.mActivityClientController.onBackPressed(activity.token,
                new IRequestFinishCallback.Default());
        // Ensure events dispatch to organizer.
        mWm.mAtmService.mTaskOrganizerController.dispatchPendingEvents();
        verify(organizer, never()).onBackPressedOnTaskRoot(any());

        // Enable intercepting back
        mWm.mAtmService.mTaskOrganizerController.setInterceptBackPressedOnTaskRoot(
                rootTask.mTaskId, true);

        // Verify again that the back press does not call the organizer as task is not organized
        mWm.mAtmService.mActivityClientController.onBackPressed(activity.token,
                new IRequestFinishCallback.Default());
        // Ensure events dispatch to organizer.
        mWm.mAtmService.mTaskOrganizerController.dispatchPendingEvents();
        verify(organizer, never()).onBackPressedOnTaskRoot(any());
    }

    @Test
    public void testBLASTCallbackWithWindows() throws Exception {
        final Task rootTaskController = createRootTask();