From e1592f02ff6cf5f7966602133fa91333a558c6a4 Mon Sep 17 00:00:00 2001 From: Lev Serebryakov Date: Fri, 19 Jan 2024 20:17:35 +0100 Subject: [PATCH] IJPL-53: Implement ThreadingSupport via new lock. - Prepare for switchable RW Lock implementation. GitOrigin-RevId: 5765bdfda788fe64455e5d91121fc084585cb739 --- .../com/intellij/cucumber/CucumberMain.java | 2 +- .../src/com/intellij/ide/IdeEventQueue.kt | 13 +-- .../testFramework/common/src/EdtTestUtil.java | 8 +- .../test/showcase/JUnit5RunInEdtTest.java | 98 +++++++++---------- 4 files changed, 59 insertions(+), 62 deletions(-) diff --git a/build/cucumber-test-runner/src/com/intellij/cucumber/CucumberMain.java b/build/cucumber-test-runner/src/com/intellij/cucumber/CucumberMain.java index efa2fd893841..b0104255ac6a 100644 --- a/build/cucumber-test-runner/src/com/intellij/cucumber/CucumberMain.java +++ b/build/cucumber-test-runner/src/com/intellij/cucumber/CucumberMain.java @@ -71,7 +71,7 @@ public final class CucumberMain { try { UITestUtil.replaceIdeEventQueueSafely(); EdtInvocationManager.invokeAndWaitIfNeeded(() -> { - IdeEventQueue.getInstance().getRwLockHolder().runWriteIntentReadAction(() -> { + IdeEventQueue.getInstance().getThreadingSupport().runWriteIntentReadAction(() -> { try { RuntimeOptions runtimeOptions = new RuntimeOptions(new ArrayList<>(Arrays.asList(argv))); MultiLoader resourceLoader = new MultiLoader(classLoader) { diff --git a/platform/platform-impl/src/com/intellij/ide/IdeEventQueue.kt b/platform/platform-impl/src/com/intellij/ide/IdeEventQueue.kt index bffc99c8fe54..82fc0a0178a4 100644 --- a/platform/platform-impl/src/com/intellij/ide/IdeEventQueue.kt +++ b/platform/platform-impl/src/com/intellij/ide/IdeEventQueue.kt @@ -17,6 +17,7 @@ import com.intellij.ide.dnd.DnDManagerImpl import com.intellij.ide.ui.UISettings import com.intellij.openapi.Disposable import com.intellij.openapi.application.ApplicationManager +import com.intellij.openapi.application.ThreadingSupport import com.intellij.openapi.application.TransactionGuard import com.intellij.openapi.application.TransactionGuardImpl import com.intellij.openapi.application.ex.ApplicationManagerEx @@ -80,7 +81,7 @@ class IdeEventQueue private constructor() : EventQueue() { private val activityListeners = ContainerUtil.createLockFreeCopyOnWriteList() @Internal - val rwLockHolder: RwLockHolder = RwLockHolder + val threadingSupport: ThreadingSupport = RwLockHolder val keyEventDispatcher: IdeKeyEventDispatcher = IdeKeyEventDispatcher(this) val mouseEventDispatcher: IdeMouseEventDispatcher = IdeMouseEventDispatcher() val popupManager: IdePopupManager = IdePopupManager() @@ -143,7 +144,7 @@ class IdeEventQueue private constructor() : EventQueue() { val systemEventQueue = Toolkit.getDefaultToolkit().systemEventQueue assert(systemEventQueue !is IdeEventQueue) { systemEventQueue } systemEventQueue.push(this) - rwLockHolder.postInit(Thread.currentThread()) + threadingSupport.postInit(Thread.currentThread()) EDT.updateEdt() replaceDefaultKeyboardFocusManager() addDispatcher(WindowsAltSuppressor(), null) @@ -581,8 +582,8 @@ class IdeEventQueue private constructor() : EventQueue() { } when { - e is MouseEvent -> rwLockHolder.runWithImplicitRead { dispatchMouseEvent(e) } - e is KeyEvent -> rwLockHolder.runWithImplicitRead { dispatchKeyEvent(e) } + e is MouseEvent -> threadingSupport.runWithImplicitRead { dispatchMouseEvent(e) } + e is KeyEvent -> threadingSupport.runWithImplicitRead { dispatchKeyEvent(e) } appIsLoaded() -> { val app = ApplicationManagerEx.getApplicationEx() if (e is ComponentEvent) { @@ -590,9 +591,9 @@ class IdeEventQueue private constructor() : EventQueue() { (app.serviceIfCreated() as? WindowManagerEx)?.dispatchComponentEvent(e) } } - rwLockHolder.runWithoutImplicitRead { defaultDispatchEvent(e) } + threadingSupport.runWithoutImplicitRead { defaultDispatchEvent(e) } } - else -> rwLockHolder.runWithoutImplicitRead { defaultDispatchEvent(e) } + else -> threadingSupport.runWithoutImplicitRead { defaultDispatchEvent(e) } } } diff --git a/platform/testFramework/common/src/EdtTestUtil.java b/platform/testFramework/common/src/EdtTestUtil.java index 89c61c86c7bb..ce5089bb414d 100644 --- a/platform/testFramework/common/src/EdtTestUtil.java +++ b/platform/testFramework/common/src/EdtTestUtil.java @@ -3,11 +3,8 @@ package com.intellij.testFramework; import com.intellij.ide.IdeEventQueue; import com.intellij.mock.MockApplication; -import com.intellij.openapi.application.Application; -import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ex.ApplicationEx; import com.intellij.openapi.application.ex.ApplicationManagerEx; -import com.intellij.openapi.application.impl.ApplicationImpl; import com.intellij.openapi.util.Ref; import com.intellij.openapi.util.ThrowableComputable; import com.intellij.util.ThrowableRunnable; @@ -18,7 +15,6 @@ import org.jetbrains.annotations.TestOnly; import javax.swing.*; import java.lang.reflect.InvocationTargetException; -import static com.intellij.testFramework.UITestUtil.replaceIdeEventQueueSafely; import static com.intellij.testFramework.UITestUtil.setupEventQueue; public final class EdtTestUtil { @@ -64,7 +60,7 @@ public final class EdtTestUtil { else if (EDT.isCurrentThreadEdt()) { if (writeIntent) { setupEventQueue(); - IdeEventQueue.getInstance().getRwLockHolder().runWriteIntentReadAction(() -> { + IdeEventQueue.getInstance().getThreadingSupport().runWriteIntentReadAction(() -> { runnable.run(); return null; }); @@ -80,7 +76,7 @@ public final class EdtTestUtil { () -> { try { setupEventQueue(); - IdeEventQueue.getInstance().getRwLockHolder().runWriteIntentReadAction(() -> { + IdeEventQueue.getInstance().getThreadingSupport().runWriteIntentReadAction(() -> { runnable.run(); return null; }); diff --git a/platform/testFramework/junit5/test/showcase/JUnit5RunInEdtTest.java b/platform/testFramework/junit5/test/showcase/JUnit5RunInEdtTest.java index d0c3ec462213..5c9899788d14 100644 --- a/platform/testFramework/junit5/test/showcase/JUnit5RunInEdtTest.java +++ b/platform/testFramework/junit5/test/showcase/JUnit5RunInEdtTest.java @@ -116,27 +116,27 @@ final class JUnit5RunInEdtTest { @BeforeAll static void beforeAll() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt MethodLevelAnnotationTest() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt @BeforeEach void beforeEach() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt @Test void testMethod() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @Test @@ -149,7 +149,7 @@ final class JUnit5RunInEdtTest { @ExtendWith(EmptyTestTemplateInvocationContextProvider.class) void testTemplate() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt @@ -158,7 +158,7 @@ final class JUnit5RunInEdtTest { Assertions.assertTrue(EDT.isCurrentThreadEdt()); return List.of(DynamicTest.dynamicTest("dynamic test", () -> { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); })); } @@ -166,14 +166,14 @@ final class JUnit5RunInEdtTest { @AfterEach void afterEach() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt @AfterAll static void afterAll() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } } @@ -184,27 +184,27 @@ final class JUnit5RunInEdtTest { @BeforeAll static void beforeAll() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt MethodLevelAnnotationTestWithDefaultWriteIntent() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt @BeforeEach void beforeEach() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt @Test void testMethod() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @Test @@ -217,7 +217,7 @@ final class JUnit5RunInEdtTest { @ExtendWith(EmptyTestTemplateInvocationContextProvider.class) void testTemplate() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt @@ -226,7 +226,7 @@ final class JUnit5RunInEdtTest { Assertions.assertTrue(EDT.isCurrentThreadEdt()); return List.of(DynamicTest.dynamicTest("dynamic test", () -> { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); })); } @@ -234,14 +234,14 @@ final class JUnit5RunInEdtTest { @AfterEach void afterEach() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt @AfterAll static void afterAll() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } } @@ -252,27 +252,27 @@ final class JUnit5RunInEdtTest { @BeforeAll static void beforeAll() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt(writeIntent = RunMethodInEdt.WriteIntentMode.True) MethodLevelAnnotationTestWithPerMethodWriteIntent() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt(writeIntent = RunMethodInEdt.WriteIntentMode.True) @BeforeEach void beforeEach() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt(writeIntent = RunMethodInEdt.WriteIntentMode.True) @Test void testMethod() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @Test @@ -285,7 +285,7 @@ final class JUnit5RunInEdtTest { @ExtendWith(EmptyTestTemplateInvocationContextProvider.class) void testTemplate() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt(writeIntent = RunMethodInEdt.WriteIntentMode.True) @@ -294,7 +294,7 @@ final class JUnit5RunInEdtTest { Assertions.assertTrue(EDT.isCurrentThreadEdt()); return List.of(DynamicTest.dynamicTest("dynamic test", () -> { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); })); } @@ -302,14 +302,14 @@ final class JUnit5RunInEdtTest { @AfterEach void afterEach() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt(writeIntent = RunMethodInEdt.WriteIntentMode.True) @AfterAll static void afterAll() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } } @@ -321,27 +321,27 @@ final class JUnit5RunInEdtTest { @BeforeAll static void beforeAll() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt(writeIntent = RunMethodInEdt.WriteIntentMode.False) MethodLevelAnnotationTestWithoutPerMethodWriteIntent() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt(writeIntent = RunMethodInEdt.WriteIntentMode.False) @BeforeEach void beforeEach() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt(writeIntent = RunMethodInEdt.WriteIntentMode.False) @Test void testMethod() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @Test @@ -354,7 +354,7 @@ final class JUnit5RunInEdtTest { @ExtendWith(EmptyTestTemplateInvocationContextProvider.class) void testTemplate() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt(writeIntent = RunMethodInEdt.WriteIntentMode.False) @@ -363,7 +363,7 @@ final class JUnit5RunInEdtTest { Assertions.assertTrue(EDT.isCurrentThreadEdt()); return List.of(DynamicTest.dynamicTest("dynamic test", () -> { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); })); } @@ -371,14 +371,14 @@ final class JUnit5RunInEdtTest { @AfterEach void afterEach() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @RunMethodInEdt(writeIntent = RunMethodInEdt.WriteIntentMode.False) @AfterAll static void afterAll() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } } @@ -388,31 +388,31 @@ final class JUnit5RunInEdtTest { @BeforeAll static void beforeAll() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } ClassLevelAnnotationTest() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @BeforeEach void beforeEach() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @Test void testMethod() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @TestTemplate @ExtendWith(EmptyTestTemplateInvocationContextProvider.class) void testTemplate() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @TestFactory @@ -420,20 +420,20 @@ final class JUnit5RunInEdtTest { Assertions.assertTrue(EDT.isCurrentThreadEdt()); return List.of(DynamicTest.dynamicTest("dynamic test", () -> { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); })); } @AfterEach void afterEach() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @AfterAll static void afterAll() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } } @@ -443,31 +443,31 @@ final class JUnit5RunInEdtTest { @BeforeAll static void beforeAll() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } ClassLevelAnnotationTestWithGlobalWriteIntent() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @BeforeEach void beforeEach() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @Test void testMethod() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @TestTemplate @ExtendWith(EmptyTestTemplateInvocationContextProvider.class) void testTemplate() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @TestFactory @@ -475,20 +475,20 @@ final class JUnit5RunInEdtTest { Assertions.assertTrue(EDT.isCurrentThreadEdt()); return List.of(DynamicTest.dynamicTest("dynamic test", () -> { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); })); } @AfterEach void afterEach() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } @AfterAll static void afterAll() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertTrue(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertTrue(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } } @@ -501,7 +501,7 @@ final class JUnit5RunInEdtTest { @Test void testMethod() { Assertions.assertTrue(EDT.isCurrentThreadEdt()); - Assertions.assertFalse(IdeEventQueue.getInstance().getRwLockHolder().isWriteIntentLocked()); + Assertions.assertFalse(IdeEventQueue.getInstance().getThreadingSupport().isWriteIntentLocked()); } }