Loading packages/SystemUI/tests/src/com/android/systemui/accessibility/WindowMagnificationAnimationControllerTest.java +3 −80 Original line number Diff line number Diff line Loading @@ -19,7 +19,6 @@ package com.android.systemui.accessibility; import static androidx.test.platform.app.InstrumentationRegistry.getInstrumentation; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyBoolean; Loading @@ -37,8 +36,6 @@ import android.content.Context; import android.graphics.Rect; import android.os.Handler; import android.os.RemoteException; import android.platform.test.annotations.RequiresFlagsDisabled; import android.platform.test.annotations.RequiresFlagsEnabled; import android.platform.test.flag.junit.CheckFlagsRule; import android.platform.test.flag.junit.DeviceFlagsValueProvider; import android.testing.AndroidTestingRunner; Loading @@ -51,8 +48,8 @@ import android.view.animation.AccelerateInterpolator; import android.window.InputTransferToken; import androidx.test.filters.LargeTest; import com.android.internal.graphics.SfVsyncFrameCallbackProvider; import com.android.systemui.Flags; import com.android.systemui.SysuiTestCase; import com.android.systemui.animation.AnimatorTestRule; import com.android.systemui.model.SysUiState; Loading Loading @@ -273,10 +270,8 @@ public class WindowMagnificationAnimationControllerTest extends SysuiTestCase { verifyFinalSpec(DEFAULT_SCALE, DEFAULT_CENTER_X, DEFAULT_CENTER_Y); } @RequiresFlagsEnabled(Flags.FLAG_CREATE_WINDOWLESS_WINDOW_MAGNIFIER) @Test public void enableWindowMagnificationScaleOne_enabledAndWindowlessFlagOn_AnimationAndCallbackTrue() public void enableWindowMagnificationScaleOne_enabled_AnimationAndCallbackTrue() throws RemoteException { enableWindowMagnificationWithoutAnimation(); Loading Loading @@ -315,48 +310,6 @@ public class WindowMagnificationAnimationControllerTest extends SysuiTestCase { mWindowMagnificationAnimationController.getState()); } @RequiresFlagsDisabled(Flags.FLAG_CREATE_WINDOWLESS_WINDOW_MAGNIFIER) @Test public void enableWindowMagnificationScaleOne_enabledAndWindowlessFlagOff_AnimationAndCallbackTrue() throws RemoteException { enableWindowMagnificationWithoutAnimation(); // Wait for Rects updated. waitForIdleSync(); View mirrorView = mWindowManager.getAttachedView(); final float targetScale = 1.0f; // Move the magnifier to the top left corner, within the boundary final float targetCenterX = mirrorView.getWidth() / 2.0f; final float targetCenterY = mirrorView.getHeight() / 2.0f; Mockito.reset(mSpyController); getInstrumentation().runOnMainSync(() -> { mWindowMagnificationAnimationController.enableWindowMagnification(targetScale, targetCenterX, targetCenterY, mAnimationCallback); mCurrentScale.set(mController.getScale()); mCurrentCenterX.set(mController.getMagnificationFrameCenterX()); mCurrentCenterY.set(mController.getMagnificationFrameCenterY()); advanceTimeBy(mWaitAnimationDuration); }); verify(mSpyController, atLeast(2)).updateWindowMagnificationInternal( mScaleCaptor.capture(), mCenterXCaptor.capture(), mCenterYCaptor.capture(), mOffsetXCaptor.capture(), mOffsetYCaptor.capture()); verifyStartValue(mScaleCaptor, mCurrentScale.get()); verifyStartValue(mCenterXCaptor, mCurrentCenterX.get()); verifyStartValue(mCenterYCaptor, mCurrentCenterY.get()); verifyStartValue(mOffsetXCaptor, 0f); verifyStartValue(mOffsetYCaptor, 0f); verifyFinalSpec(targetScale, targetCenterX, targetCenterY); verify(mAnimationCallback).onResult(true); assertEquals(WindowMagnificationAnimationController.STATE_ENABLED, mWindowMagnificationAnimationController.getState()); } @Test public void enableWindowMagnificationWithScaleLessThanOne_enabled_AnimationAndInvokeCallback() throws RemoteException { Loading Loading @@ -562,9 +515,8 @@ public class WindowMagnificationAnimationControllerTest extends SysuiTestCase { verify(mAnimationCallback2).onResult(true); } @RequiresFlagsEnabled(Flags.FLAG_CREATE_WINDOWLESS_WINDOW_MAGNIFIER) @Test public void enableWindowMagnificationWithOffset_windowlessFlagOn_expectedValues() { public void enableWindowMagnificationWithOffset_expectedValues() { final float offsetRatio = -0.1f; final Rect windowBounds = new Rect(mWindowManager.getCurrentWindowMetrics().getBounds()); Loading Loading @@ -599,35 +551,6 @@ public class WindowMagnificationAnimationControllerTest extends SysuiTestCase { .setPosition(any(SurfaceControl.class), eq(expectedX), eq(expectedY)); } @RequiresFlagsDisabled(Flags.FLAG_CREATE_WINDOWLESS_WINDOW_MAGNIFIER) @Test public void enableWindowMagnificationWithOffset_windowlessFlagOff_expectedValues() { final float offsetRatio = -0.1f; final Rect windowBounds = new Rect(mWindowManager.getCurrentWindowMetrics().getBounds()); Mockito.reset(mSpyController); getInstrumentation().runOnMainSync(() -> { mWindowMagnificationAnimationController.enableWindowMagnification(DEFAULT_SCALE, windowBounds.exactCenterX(), windowBounds.exactCenterY(), offsetRatio, offsetRatio, mAnimationCallback); advanceTimeBy(mWaitAnimationDuration); }); // Wait for Rects update waitForIdleSync(); final View attachedView = mWindowManager.getAttachedView(); assertNotNull(attachedView); final Rect mirrorViewBound = new Rect(); final View mirrorView = attachedView.findViewById(R.id.surface_view); assertNotNull(mirrorView); mirrorView.getBoundsOnScreen(mirrorViewBound); assertEquals((int) (offsetRatio * mirrorViewBound.width() / 2), (int) (mirrorViewBound.exactCenterX() - windowBounds.exactCenterX())); assertEquals((int) (offsetRatio * mirrorViewBound.height() / 2), (int) (mirrorViewBound.exactCenterY() - windowBounds.exactCenterY())); } @Test public void moveWindowMagnifierToPosition_enabled_expectedValues() throws RemoteException { final float targetCenterX = DEFAULT_CENTER_X + 100; Loading Loading
packages/SystemUI/tests/src/com/android/systemui/accessibility/WindowMagnificationAnimationControllerTest.java +3 −80 Original line number Diff line number Diff line Loading @@ -19,7 +19,6 @@ package com.android.systemui.accessibility; import static androidx.test.platform.app.InstrumentationRegistry.getInstrumentation; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyBoolean; Loading @@ -37,8 +36,6 @@ import android.content.Context; import android.graphics.Rect; import android.os.Handler; import android.os.RemoteException; import android.platform.test.annotations.RequiresFlagsDisabled; import android.platform.test.annotations.RequiresFlagsEnabled; import android.platform.test.flag.junit.CheckFlagsRule; import android.platform.test.flag.junit.DeviceFlagsValueProvider; import android.testing.AndroidTestingRunner; Loading @@ -51,8 +48,8 @@ import android.view.animation.AccelerateInterpolator; import android.window.InputTransferToken; import androidx.test.filters.LargeTest; import com.android.internal.graphics.SfVsyncFrameCallbackProvider; import com.android.systemui.Flags; import com.android.systemui.SysuiTestCase; import com.android.systemui.animation.AnimatorTestRule; import com.android.systemui.model.SysUiState; Loading Loading @@ -273,10 +270,8 @@ public class WindowMagnificationAnimationControllerTest extends SysuiTestCase { verifyFinalSpec(DEFAULT_SCALE, DEFAULT_CENTER_X, DEFAULT_CENTER_Y); } @RequiresFlagsEnabled(Flags.FLAG_CREATE_WINDOWLESS_WINDOW_MAGNIFIER) @Test public void enableWindowMagnificationScaleOne_enabledAndWindowlessFlagOn_AnimationAndCallbackTrue() public void enableWindowMagnificationScaleOne_enabled_AnimationAndCallbackTrue() throws RemoteException { enableWindowMagnificationWithoutAnimation(); Loading Loading @@ -315,48 +310,6 @@ public class WindowMagnificationAnimationControllerTest extends SysuiTestCase { mWindowMagnificationAnimationController.getState()); } @RequiresFlagsDisabled(Flags.FLAG_CREATE_WINDOWLESS_WINDOW_MAGNIFIER) @Test public void enableWindowMagnificationScaleOne_enabledAndWindowlessFlagOff_AnimationAndCallbackTrue() throws RemoteException { enableWindowMagnificationWithoutAnimation(); // Wait for Rects updated. waitForIdleSync(); View mirrorView = mWindowManager.getAttachedView(); final float targetScale = 1.0f; // Move the magnifier to the top left corner, within the boundary final float targetCenterX = mirrorView.getWidth() / 2.0f; final float targetCenterY = mirrorView.getHeight() / 2.0f; Mockito.reset(mSpyController); getInstrumentation().runOnMainSync(() -> { mWindowMagnificationAnimationController.enableWindowMagnification(targetScale, targetCenterX, targetCenterY, mAnimationCallback); mCurrentScale.set(mController.getScale()); mCurrentCenterX.set(mController.getMagnificationFrameCenterX()); mCurrentCenterY.set(mController.getMagnificationFrameCenterY()); advanceTimeBy(mWaitAnimationDuration); }); verify(mSpyController, atLeast(2)).updateWindowMagnificationInternal( mScaleCaptor.capture(), mCenterXCaptor.capture(), mCenterYCaptor.capture(), mOffsetXCaptor.capture(), mOffsetYCaptor.capture()); verifyStartValue(mScaleCaptor, mCurrentScale.get()); verifyStartValue(mCenterXCaptor, mCurrentCenterX.get()); verifyStartValue(mCenterYCaptor, mCurrentCenterY.get()); verifyStartValue(mOffsetXCaptor, 0f); verifyStartValue(mOffsetYCaptor, 0f); verifyFinalSpec(targetScale, targetCenterX, targetCenterY); verify(mAnimationCallback).onResult(true); assertEquals(WindowMagnificationAnimationController.STATE_ENABLED, mWindowMagnificationAnimationController.getState()); } @Test public void enableWindowMagnificationWithScaleLessThanOne_enabled_AnimationAndInvokeCallback() throws RemoteException { Loading Loading @@ -562,9 +515,8 @@ public class WindowMagnificationAnimationControllerTest extends SysuiTestCase { verify(mAnimationCallback2).onResult(true); } @RequiresFlagsEnabled(Flags.FLAG_CREATE_WINDOWLESS_WINDOW_MAGNIFIER) @Test public void enableWindowMagnificationWithOffset_windowlessFlagOn_expectedValues() { public void enableWindowMagnificationWithOffset_expectedValues() { final float offsetRatio = -0.1f; final Rect windowBounds = new Rect(mWindowManager.getCurrentWindowMetrics().getBounds()); Loading Loading @@ -599,35 +551,6 @@ public class WindowMagnificationAnimationControllerTest extends SysuiTestCase { .setPosition(any(SurfaceControl.class), eq(expectedX), eq(expectedY)); } @RequiresFlagsDisabled(Flags.FLAG_CREATE_WINDOWLESS_WINDOW_MAGNIFIER) @Test public void enableWindowMagnificationWithOffset_windowlessFlagOff_expectedValues() { final float offsetRatio = -0.1f; final Rect windowBounds = new Rect(mWindowManager.getCurrentWindowMetrics().getBounds()); Mockito.reset(mSpyController); getInstrumentation().runOnMainSync(() -> { mWindowMagnificationAnimationController.enableWindowMagnification(DEFAULT_SCALE, windowBounds.exactCenterX(), windowBounds.exactCenterY(), offsetRatio, offsetRatio, mAnimationCallback); advanceTimeBy(mWaitAnimationDuration); }); // Wait for Rects update waitForIdleSync(); final View attachedView = mWindowManager.getAttachedView(); assertNotNull(attachedView); final Rect mirrorViewBound = new Rect(); final View mirrorView = attachedView.findViewById(R.id.surface_view); assertNotNull(mirrorView); mirrorView.getBoundsOnScreen(mirrorViewBound); assertEquals((int) (offsetRatio * mirrorViewBound.width() / 2), (int) (mirrorViewBound.exactCenterX() - windowBounds.exactCenterX())); assertEquals((int) (offsetRatio * mirrorViewBound.height() / 2), (int) (mirrorViewBound.exactCenterY() - windowBounds.exactCenterY())); } @Test public void moveWindowMagnifierToPosition_enabled_expectedValues() throws RemoteException { final float targetCenterX = DEFAULT_CENTER_X + 100; Loading