diff options
Diffstat (limited to 'tests/src/com/android/server/telecom/tests/CarModeTrackerTest.java')
-rw-r--r-- | tests/src/com/android/server/telecom/tests/CarModeTrackerTest.java | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/src/com/android/server/telecom/tests/CarModeTrackerTest.java b/tests/src/com/android/server/telecom/tests/CarModeTrackerTest.java index 4ad46ae52..60567479b 100644 --- a/tests/src/com/android/server/telecom/tests/CarModeTrackerTest.java +++ b/tests/src/com/android/server/telecom/tests/CarModeTrackerTest.java @@ -236,6 +236,28 @@ public class CarModeTrackerTest extends TelecomTestCase { } /** + * Verifies that setting automotive projection overrides entering car mode with the highest + * priority of 0. Also ensures exiting car mode doesn't interfere with the automotive + * projection being set. + */ + @Test + public void testInterleaveCarModeAndProjectionMode() { + mCarModeTracker.handleEnterCarMode(0, CAR_MODE_APP1_PACKAGE_NAME); + assertEquals(CAR_MODE_APP1_PACKAGE_NAME, mCarModeTracker.getCurrentCarModePackage()); + assertTrue(mCarModeTracker.isInCarMode()); + + mCarModeTracker.handleSetAutomotiveProjection(CAR_MODE_APP2_PACKAGE_NAME); + assertEquals(CAR_MODE_APP2_PACKAGE_NAME, mCarModeTracker.getCurrentCarModePackage()); + assertTrue(mCarModeTracker.isInCarMode()); + + mCarModeTracker.handleExitCarMode(0, CAR_MODE_APP1_PACKAGE_NAME); + assertEquals(CAR_MODE_APP2_PACKAGE_NAME, mCarModeTracker.getCurrentCarModePackage()); + assertTrue(mCarModeTracker.isInCarMode()); + + mCarModeTracker.handleReleaseAutomotiveProjection(); + } + + /** * Verifies that if we set automotive projection more than once with the same package, nothing * changes. */ |