Make PointerEventDispatcherTest faster

Before this CL, the test waited 10 seconds (on hwasan builds) to assert
that there aren't any events.

Make this check faster by adding a separate assertion that events didn't
occur.

Bug: 290931418
Test: atest PointerEventDispatcherTest --rerun-until-failure 1000

Change-Id: Id4582ab0a2b58787a453e06250b82ecf2b1720f0
diff --git a/tests/Input/src/com/android/test/input/InputEventSenderAndReceiverTest.kt b/tests/Input/src/com/android/test/input/InputEventSenderAndReceiverTest.kt
index 37b67f4..075cf0c 100644
--- a/tests/Input/src/com/android/test/input/InputEventSenderAndReceiverTest.kt
+++ b/tests/Input/src/com/android/test/input/InputEventSenderAndReceiverTest.kt
@@ -113,13 +113,11 @@
         val sent = SpyInputEventSender.Timeline(
             inputEventId = 1, gpuCompletedTime = 3, presentTime = 2)
         mReceiver.reportTimeline(sent.inputEventId, sent.gpuCompletedTime, sent.presentTime)
-        val received = mSender.getTimeline()
-        assertEquals(null, received)
+        mSender.assertNoEvents()
         // Sender will no longer receive callbacks for this fd, even if receiver sends a valid
         // timeline later
         mReceiver.reportTimeline(2 /*inputEventId*/, 3 /*gpuCompletedTime*/, 4 /*presentTime*/)
-        val receivedSecondTimeline = mSender.getTimeline()
-        assertEquals(null, receivedSecondTimeline)
+        mSender.assertNoEvents()
     }
 
     /**
diff --git a/tests/Input/src/com/android/test/input/PointerEventDispatcherTest.kt b/tests/Input/src/com/android/test/input/PointerEventDispatcherTest.kt
index 1099878..f311bc2 100644
--- a/tests/Input/src/com/android/test/input/PointerEventDispatcherTest.kt
+++ b/tests/Input/src/com/android/test/input/PointerEventDispatcherTest.kt
@@ -25,7 +25,6 @@
 import com.android.server.UiThread
 import com.android.server.wm.PointerEventDispatcher
 import org.junit.Assert.assertEquals
-import org.junit.Assert.assertNull
 import org.junit.After
 import org.junit.Before
 import org.junit.Test
@@ -86,8 +85,7 @@
         // Since the listener raises an exception during the event handling, the event should be
         // marked as 'not handled'.
         assertEquals(SpyInputEventSender.FinishedSignal(seq, handled = false), finishedSignal)
-        // Ensure that there aren't double finish calls. This would crash if there's a call
-        // to finish twice.
-        assertNull(mSender.getFinishedSignal())
+        // Ensure that there aren't double finish calls.
+        mSender.assertNoEvents()
     }
 }
diff --git a/tests/Input/src/com/android/test/input/SpyInputEventSenderAndReceiver.kt b/tests/Input/src/com/android/test/input/SpyInputEventSenderAndReceiver.kt
index 2d9af9a..5cbfce5 100644
--- a/tests/Input/src/com/android/test/input/SpyInputEventSenderAndReceiver.kt
+++ b/tests/Input/src/com/android/test/input/SpyInputEventSenderAndReceiver.kt
@@ -27,10 +27,17 @@
 import java.util.concurrent.LinkedBlockingQueue
 import java.util.concurrent.TimeUnit
 
+import org.junit.Assert.assertNull
+
 private fun <T> getEvent(queue: LinkedBlockingQueue<T>): T? {
     return queue.poll(DEFAULT_DISPATCHING_TIMEOUT_MILLIS.toLong(), TimeUnit.MILLISECONDS)
 }
 
+private fun <T> assertNoEvents(queue: LinkedBlockingQueue<T>) {
+    // Poll the queue with a shorter timeout, to make the check faster.
+    assertNull(queue.poll(100L, TimeUnit.MILLISECONDS))
+}
+
 class SpyInputEventReceiver(channel: InputChannel, looper: Looper) :
         InputEventReceiver(channel, looper) {
     private val mInputEvents = LinkedBlockingQueue<InputEvent>()
@@ -72,4 +79,9 @@
     fun getTimeline(): Timeline? {
         return getEvent(mTimelines)
     }
+
+    fun assertNoEvents() {
+        assertNoEvents(mFinishedSignals)
+        assertNoEvents(mTimelines)
+    }
 }