From 127039a95bdeca3d00f7759cdb97da405bce22a9 Mon Sep 17 00:00:00 2001 From: Max Medvedev Date: Sat, 23 Aug 2025 12:50:30 +0200 Subject: [PATCH] register syntax extension points in parsing tests GitOrigin-RevId: 8bd236561b539a5e4e9dc5c8728096fdbd030245 --- platform/testFramework/BUILD.bazel | 2 ++ .../intellij.platform.testFramework.iml | 1 + .../com/intellij/testFramework/ParsingTestCase.java | 12 ++++++++++++ 3 files changed, 15 insertions(+) diff --git a/platform/testFramework/BUILD.bazel b/platform/testFramework/BUILD.bazel index b3343f4bf9b5..cf6279bb526f 100644 --- a/platform/testFramework/BUILD.bazel +++ b/platform/testFramework/BUILD.bazel @@ -78,6 +78,7 @@ jvm_library( "//platform/structure-view-impl:structureView-impl", "//platform/syntax/syntax-api:syntax", "//platform/syntax/syntax-psi:psi", + "//platform/syntax/syntax-util:util", "//platform/testFramework/common", "//platform/testFramework/core", "//platform/todo", @@ -174,6 +175,7 @@ jvm_library( "//platform/syntax/syntax-api:syntax", "//platform/syntax/syntax-api:syntax_test_lib", "//platform/syntax/syntax-psi:psi", + "//platform/syntax/syntax-util:util", "//platform/testFramework/common", "//platform/testFramework/core", "//platform/testFramework/junit5", diff --git a/platform/testFramework/intellij.platform.testFramework.iml b/platform/testFramework/intellij.platform.testFramework.iml index 01486afd7dde..4e7cfeb33358 100644 --- a/platform/testFramework/intellij.platform.testFramework.iml +++ b/platform/testFramework/intellij.platform.testFramework.iml @@ -64,6 +64,7 @@ + diff --git a/platform/testFramework/src/com/intellij/testFramework/ParsingTestCase.java b/platform/testFramework/src/com/intellij/testFramework/ParsingTestCase.java index aa54b80f2acb..192d5d30cd4b 100644 --- a/platform/testFramework/src/com/intellij/testFramework/ParsingTestCase.java +++ b/platform/testFramework/src/com/intellij/testFramework/ParsingTestCase.java @@ -32,6 +32,10 @@ import com.intellij.openapi.util.text.StringUtil; import com.intellij.openapi.vfs.CharsetToolkit; import com.intellij.platform.syntax.psi.CommonElementTypeConverterFactory; import com.intellij.platform.syntax.psi.ElementTypeConverters; +import com.intellij.platform.syntax.psi.IntelliJCancellationProvider; +import com.intellij.platform.syntax.psi.IntelliJLogProvider; +import com.intellij.platform.syntax.util.cancellation.CancellationProviderExtension; +import com.intellij.platform.syntax.util.log.LogProvider; import com.intellij.pom.PomModel; import com.intellij.pom.core.impl.PomModelImpl; import com.intellij.pom.tree.TreeAspect; @@ -133,6 +137,14 @@ public abstract class ParsingTestCase extends UsefulTestCase { addExplicitExtensionForAnyLanguage(ElementTypeConverters.getInstance(), new CommonElementTypeConverterFactory()); + ExtensionPointName cancellationProviderEP = new ExtensionPointName<>("com.intellij.syntax.cancellationProviderExtension"); + registerExtensionPoint(app.getExtensionArea(), cancellationProviderEP, CancellationProviderExtension.class); + registerExtension(cancellationProviderEP, new IntelliJCancellationProvider()); + + ExtensionPointName logProviderEP = new ExtensionPointName<>("com.intellij.syntax.logProvider"); + registerExtensionPoint(app.getExtensionArea(), logProviderEP, LogProvider.class); + registerExtension(logProviderEP, new IntelliJLogProvider()); + myLangParserDefinition = app.getExtensionArea().registerFakeBeanPoint(LanguageParserDefinitions.INSTANCE.getName(), getPluginDescriptor()); if (myDefinitions.length > 0) {