summaryrefslogtreecommitdiff
path: root/libs/WindowManager/Jetpack/tests/unittest/src/androidx/window/extensions/embedding/SplitControllerTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'libs/WindowManager/Jetpack/tests/unittest/src/androidx/window/extensions/embedding/SplitControllerTest.java')
-rw-r--r--libs/WindowManager/Jetpack/tests/unittest/src/androidx/window/extensions/embedding/SplitControllerTest.java107
1 files changed, 13 insertions, 94 deletions
diff --git a/libs/WindowManager/Jetpack/tests/unittest/src/androidx/window/extensions/embedding/SplitControllerTest.java b/libs/WindowManager/Jetpack/tests/unittest/src/androidx/window/extensions/embedding/SplitControllerTest.java
index ad496a906a33..982ab8043bbc 100644
--- a/libs/WindowManager/Jetpack/tests/unittest/src/androidx/window/extensions/embedding/SplitControllerTest.java
+++ b/libs/WindowManager/Jetpack/tests/unittest/src/androidx/window/extensions/embedding/SplitControllerTest.java
@@ -35,7 +35,6 @@ import static com.google.common.truth.Truth.assertWithMessage;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertThrows;
@@ -438,50 +437,6 @@ public class SplitControllerTest {
}
@Test
- public void testResolveStartActivityIntent_shouldExpandSplitContainer() {
- final Intent intent = new Intent().setComponent(
- new ComponentName(ApplicationProvider.getApplicationContext(),
- MinimumDimensionActivity.class));
- setupSplitRule(mActivity, intent, false /* clearTop */);
- final Activity secondaryActivity = createMockActivity();
- addSplitTaskFragments(mActivity, secondaryActivity, false /* clearTop */);
-
- final TaskFragmentContainer container = mSplitController.resolveStartActivityIntent(
- mTransaction, TASK_ID, intent, mActivity);
- final TaskFragmentContainer primaryContainer = mSplitController.getContainerWithActivity(
- mActivity);
-
- assertNotNull(mSplitController.getActiveSplitForContainers(primaryContainer, container));
- assertTrue(primaryContainer.areLastRequestedBoundsEqual(null));
- assertTrue(container.areLastRequestedBoundsEqual(null));
- assertEquals(container, mSplitController.getContainerWithActivity(secondaryActivity));
- }
-
- @Test
- public void testResolveStartActivityIntent_noInfo_shouldCreateSplitContainer() {
- final Intent intent = new Intent().setComponent(
- new ComponentName(ApplicationProvider.getApplicationContext(),
- MinimumDimensionActivity.class));
- setupSplitRule(mActivity, intent, false /* clearTop */);
- final Activity secondaryActivity = createMockActivity();
- addSplitTaskFragments(mActivity, secondaryActivity, false /* clearTop */);
-
- final TaskFragmentContainer secondaryContainer = mSplitController
- .getContainerWithActivity(secondaryActivity);
- secondaryContainer.mInfo = null;
-
- final TaskFragmentContainer container = mSplitController.resolveStartActivityIntent(
- mTransaction, TASK_ID, intent, mActivity);
- final TaskFragmentContainer primaryContainer = mSplitController.getContainerWithActivity(
- mActivity);
-
- assertNotNull(mSplitController.getActiveSplitForContainers(primaryContainer, container));
- assertTrue(primaryContainer.areLastRequestedBoundsEqual(null));
- assertTrue(container.areLastRequestedBoundsEqual(null));
- assertNotEquals(container, secondaryContainer);
- }
-
- @Test
public void testPlaceActivityInTopContainer() {
mSplitController.placeActivityInTopContainer(mActivity);
@@ -852,12 +807,17 @@ public class SplitControllerTest {
final Activity activityBelow = createMockActivity();
setupSplitRule(activityBelow, mActivity);
- doReturn(createActivityInfoWithMinDimensions()).when(mActivity).getActivityInfo();
+ ActivityInfo aInfo = new ActivityInfo();
+ final Rect secondaryBounds = getSplitBounds(false /* isPrimary */);
+ aInfo.windowLayout = new ActivityInfo.WindowLayout(0, 0, 0, 0, 0,
+ secondaryBounds.width() + 1, secondaryBounds.height() + 1);
+ doReturn(aInfo).when(mActivity).getActivityInfo();
final TaskFragmentContainer container = mSplitController.newContainer(activityBelow,
TASK_ID);
container.addPendingAppearedActivity(mActivity);
+ // Allow to split as primary.
boolean result = mSplitController.resolveActivityToContainer(mActivity,
false /* isOnReparent */);
@@ -866,27 +826,6 @@ public class SplitControllerTest {
}
@Test
- public void testResolveActivityToContainer_minDimensions_shouldExpandSplitContainer() {
- final Activity primaryActivity = createMockActivity();
- final Activity secondaryActivity = createMockActivity();
- addSplitTaskFragments(primaryActivity, secondaryActivity, false /* clearTop */);
-
- setupSplitRule(primaryActivity, mActivity, false /* clearTop */);
- doReturn(createActivityInfoWithMinDimensions()).when(mActivity).getActivityInfo();
- doReturn(secondaryActivity).when(mSplitController).findActivityBelow(eq(mActivity));
-
- clearInvocations(mSplitPresenter);
- boolean result = mSplitController.resolveActivityToContainer(mActivity,
- false /* isOnReparent */);
-
- assertTrue(result);
- assertSplitPair(primaryActivity, mActivity, true /* matchParentBounds */);
- assertEquals(mSplitController.getContainerWithActivity(secondaryActivity),
- mSplitController.getContainerWithActivity(mActivity));
- verify(mSplitPresenter, never()).createNewSplitContainer(any(), any(), any());
- }
-
- @Test
public void testResolveActivityToContainer_inUnknownTaskFragment() {
doReturn(new Binder()).when(mSplitController).getInitialTaskFragmentToken(mActivity);
@@ -1002,41 +941,23 @@ public class SplitControllerTest {
/** Setups a rule to always split the given activities. */
private void setupSplitRule(@NonNull Activity primaryActivity,
@NonNull Intent secondaryIntent) {
- setupSplitRule(primaryActivity, secondaryIntent, true /* clearTop */);
- }
-
- /** Setups a rule to always split the given activities. */
- private void setupSplitRule(@NonNull Activity primaryActivity,
- @NonNull Intent secondaryIntent, boolean clearTop) {
- final SplitRule splitRule = createSplitRule(primaryActivity, secondaryIntent, clearTop);
+ final SplitRule splitRule = createSplitRule(primaryActivity, secondaryIntent);
mSplitController.setEmbeddingRules(Collections.singleton(splitRule));
}
/** Setups a rule to always split the given activities. */
private void setupSplitRule(@NonNull Activity primaryActivity,
@NonNull Activity secondaryActivity) {
- setupSplitRule(primaryActivity, secondaryActivity, true /* clearTop */);
- }
-
- /** Setups a rule to always split the given activities. */
- private void setupSplitRule(@NonNull Activity primaryActivity,
- @NonNull Activity secondaryActivity, boolean clearTop) {
- final SplitRule splitRule = createSplitRule(primaryActivity, secondaryActivity, clearTop);
+ final SplitRule splitRule = createSplitRule(primaryActivity, secondaryActivity);
mSplitController.setEmbeddingRules(Collections.singleton(splitRule));
}
/** Adds a pair of TaskFragments as split for the given activities. */
private void addSplitTaskFragments(@NonNull Activity primaryActivity,
@NonNull Activity secondaryActivity) {
- addSplitTaskFragments(primaryActivity, secondaryActivity, true /* clearTop */);
- }
-
- /** Adds a pair of TaskFragments as split for the given activities. */
- private void addSplitTaskFragments(@NonNull Activity primaryActivity,
- @NonNull Activity secondaryActivity, boolean clearTop) {
registerSplitPair(createMockTaskFragmentContainer(primaryActivity),
createMockTaskFragmentContainer(secondaryActivity),
- createSplitRule(primaryActivity, secondaryActivity, clearTop));
+ createSplitRule(primaryActivity, secondaryActivity));
}
/** Registers the two given TaskFragments as split pair. */
@@ -1087,18 +1008,16 @@ public class SplitControllerTest {
if (primaryContainer.mInfo != null) {
final Rect primaryBounds = matchParentBounds ? new Rect()
: getSplitBounds(true /* isPrimary */);
- final int windowingMode = matchParentBounds ? WINDOWING_MODE_UNDEFINED
- : WINDOWING_MODE_MULTI_WINDOW;
assertTrue(primaryContainer.areLastRequestedBoundsEqual(primaryBounds));
- assertTrue(primaryContainer.isLastRequestedWindowingModeEqual(windowingMode));
+ assertTrue(primaryContainer.isLastRequestedWindowingModeEqual(
+ WINDOWING_MODE_MULTI_WINDOW));
}
if (secondaryContainer.mInfo != null) {
final Rect secondaryBounds = matchParentBounds ? new Rect()
: getSplitBounds(false /* isPrimary */);
- final int windowingMode = matchParentBounds ? WINDOWING_MODE_UNDEFINED
- : WINDOWING_MODE_MULTI_WINDOW;
assertTrue(secondaryContainer.areLastRequestedBoundsEqual(secondaryBounds));
- assertTrue(secondaryContainer.isLastRequestedWindowingModeEqual(windowingMode));
+ assertTrue(secondaryContainer.isLastRequestedWindowingModeEqual(
+ WINDOWING_MODE_MULTI_WINDOW));
}
}
}