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

Commit 32e83962 authored by Mayank Garg's avatar Mayank Garg
Browse files

Update test for onBackPressedOnTaskRoot

Flag: EXEMPT minor change

Bug: 425748492
Test: atest com.android.server.wm.WindowOrganizerTests
Change-Id: I1139580632ac25a99e5db6a082e6cd1d69ef881e
parent f29202e9
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();