diff --git a/services/tests/wmtests/src/com/android/server/wm/TaskTests.java b/services/tests/wmtests/src/com/android/server/wm/TaskTests.java index 3203ccb400d63..91e55ed7ab6ae 100644 --- a/services/tests/wmtests/src/com/android/server/wm/TaskTests.java +++ b/services/tests/wmtests/src/com/android/server/wm/TaskTests.java @@ -181,6 +181,21 @@ public class TaskTests extends WindowTestsBase { }); } + @Test + public void testSwitchUser() { + final Task rootTask = createTaskStackOnDisplay(mDisplayContent); + final Task childTask = createTaskInStack(rootTask, 0 /* userId */); + final Task leafTask1 = createTaskInStack(childTask, 10 /* userId */); + final Task leafTask2 = createTaskInStack(childTask, 0 /* userId */); + assertEquals(1, rootTask.getChildCount()); + assertEquals(leafTask2, childTask.getTopChild()); + + doReturn(true).when(leafTask1).showToCurrentUser(); + rootTask.switchUser(10); + assertEquals(1, rootTask.getChildCount()); + assertEquals(leafTask1, childTask.getTopChild()); + } + @Test public void testEnsureActivitiesVisible() { final Task rootTask = createTaskStackOnDisplay(mDisplayContent);