From 4fb9de6d962d6bf2170e9c0e128fad528dc2a522 Mon Sep 17 00:00:00 2001 From: omarmt Date: Wed, 2 Aug 2023 11:26:53 +0000 Subject: [PATCH] propagatesTopCallback_samePriority now verifies that onBackStarted() calls are made on the right Callback The test no longer checks calls to onBackProgressed(), as they are not part of this test. Test: atest WindowOnBackInvokedDispatcherTest --iterations 1000 Bug: 293516177 Change-Id: I08f112f806a76a5e03343c7f1cf1f641143de22e --- .../WindowOnBackInvokedDispatcherTest.java | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/core/tests/coretests/src/android/window/WindowOnBackInvokedDispatcherTest.java b/core/tests/coretests/src/android/window/WindowOnBackInvokedDispatcherTest.java index a6e74d0d6b945..68c0693fb23aa 100644 --- a/core/tests/coretests/src/android/window/WindowOnBackInvokedDispatcherTest.java +++ b/core/tests/coretests/src/android/window/WindowOnBackInvokedDispatcherTest.java @@ -23,12 +23,12 @@ import static org.junit.Assert.assertEquals; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.isNull; import static org.mockito.Mockito.atLeast; -import static org.mockito.Mockito.atMost; +import static org.mockito.Mockito.clearInvocations; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.never; +import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verifyNoMoreInteractions; -import static org.mockito.Mockito.verifyZeroInteractions; import android.content.Context; import android.content.pm.ApplicationInfo; @@ -254,18 +254,15 @@ public class WindowOnBackInvokedDispatcherTest { callbackInfo1.getCallback().onBackStarted(mBackEvent); waitForIdle(); - verify(mCallback1).onBackStarted(any(BackEvent.class)); - verifyZeroInteractions(mCallback2); + verify(mCallback1, times(1)).onBackStarted(any(BackEvent.class)); + verify(mCallback2, never()).onBackStarted(any(BackEvent.class)); + clearInvocations(mCallback1); callbackInfo2.getCallback().onBackStarted(mBackEvent); waitForIdle(); - verify(mCallback2).onBackStarted(any(BackEvent.class)); - - // Calls sequence: BackProgressAnimator.onBackStarted() -> BackProgressAnimator.reset() -> - // Spring.animateToFinalPosition(0). This causes a progress event to be fired. - verify(mCallback1, atMost(1)).onBackProgressed(any(BackEvent.class)); - verifyNoMoreInteractions(mCallback1); + verify(mCallback1, never()).onBackStarted(any(BackEvent.class)); + verify(mCallback2, times(1)).onBackStarted(any(BackEvent.class)); } @Test