From d7cab98427366c5bd02131d3ca5a8782132bf71d Mon Sep 17 00:00:00 2001 From: Daniil Ovchinnikov Date: Fri, 10 Dec 2021 20:06:46 +0100 Subject: [PATCH] fix `SuspendingReadWriteTest#test read action with constraints is cancelled by write and restarted` Dispatch events while the job is active, but no longer than a given timeout GitOrigin-RevId: 4f2f6b8501a76e958a77ebc2a277d840e9b94308 --- .../openapi/application/impl/SuspendingReadWriteTest.kt | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/platform/platform-tests/testSrc/com/intellij/openapi/application/impl/SuspendingReadWriteTest.kt b/platform/platform-tests/testSrc/com/intellij/openapi/application/impl/SuspendingReadWriteTest.kt index ef1936ec5143..f1d51a52fb33 100644 --- a/platform/platform-tests/testSrc/com/intellij/openapi/application/impl/SuspendingReadWriteTest.kt +++ b/platform/platform-tests/testSrc/com/intellij/openapi/application/impl/SuspendingReadWriteTest.kt @@ -208,8 +208,12 @@ class NonBlocking : SuspendingReadWriteTest() { application.runWriteAction { dumbService.isDumb = false } - UIUtil.dispatchAllInvocationEvents() // retry with satisfied constraint, attempt 1 - job.waitTimeout() + // retry with unsatisfied constraint + withTimeout(1000) { + while (job.isActive && isActive) { + UIUtil.dispatchAllInvocationEvents() + } + } } private fun twoAttemptJob(cs: CoroutineScope, constraints: List): Job {