[project] add ssr configuration consistency test

GitOrigin-RevId: 7dbed607205099a5899e5f65357a50ba355d422a
This commit is contained in:
Bas Leijdekkers
2024-05-29 14:19:54 +00:00
committed by intellij-monorepo-bot
parent 43591f7339
commit 362d0555e5
2 changed files with 12 additions and 7 deletions
+4 -4
View File
@@ -822,6 +822,10 @@
<constraint name="__context__" within="" contains="" />
<constraint name="Block" within="" contains="" />
</replaceConfiguration>
<searchConfiguration name="@CoroutinesTimeout is discouraged" description="'@CoroutinesTimeout' results in installation of 'DebugProbes' from kotlinx.coroutines. In IntelliJ Platform, we install 'DebugProbes' ourselves, so the default way should be avoided" problemDescriptor="Consider using 'timeoutRunBlocking' and '@TestApplication'" text="@kotlinx.coroutines.debug.junit5.CoroutinesTimeout($var$)" recursive="true" caseInsensitive="true" type="Kotlin" pattern_context="default">
<constraint name="__context__" within="" contains="" />
<constraint name="var" within="" contains="" />
</searchConfiguration>
<searchConfiguration name="@HardwareAgentRequired should be applied only for performance tests" text="@com.intellij.idea.HardwareAgentRequired&#10;class $class$ {&#10; &#10;}" recursive="true" caseInsensitive="true" type="JAVA" pattern_context="default">
<constraint name="__context__" within="" contains="" />
<constraint name="class" regexp=".*Performance.*" negateName="true" within="" contains="" />
@@ -830,10 +834,6 @@
<constraint name="__context__" within="" contains="" />
<constraint name="class" regexp=".*Performance.*" negateName="true" within="" contains="" />
</searchConfiguration>
<searchConfiguration name="@CoroutinesTimeout is discouraged" text="@kotlinx.coroutines.debug.junit5.CoroutinesTimeout($var$)" recursive="true" caseInsensitive="true" type="Kotlin" pattern_context="default" problemDescriptor="Consider using 'timeoutRunBlocking' and '@TestApplication'" description="'@CoroutinesTimeout' results in installation of 'DebugProbes' from kotlinx.coroutines. In IntelliJ Platform, we install 'DebugProbes' ourselves, so the default way should be avoided">
<constraint name="__context__" within="" contains="" />
<constraint name="var" within="" contains="" />
</searchConfiguration>
<replaceConfiguration name="@ScheduledForRemoval with version" description="Report usages of @ScheduledForRemoval annotation which specify 'inVersion' attribute. " suppressId="ScheduledForRemovalWithVersion" problemDescriptor="We don't specify target version in @ScheduledForRemoval annotation anymore." text="@org.jetbrains.annotations.ApiStatus.ScheduledForRemoval(inVersion = $version$)" recursive="false" caseInsensitive="true" type="JAVA" pattern_context="default" reformatAccordingToStyle="false" shortenFQN="true" replacement="@org.jetbrains.annotations.ApiStatus.ScheduledForRemoval">
<constraint name="__context__" within="" contains="" />
<constraint name="version" within="" contains="" />
@@ -50,9 +50,7 @@ import com.intellij.util.SmartList;
import com.intellij.util.containers.ContainerUtil;
import com.intellij.util.containers.MultiMap;
import org.jdom.Element;
import org.jetbrains.annotations.NonNls;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.*;
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
@@ -399,6 +397,13 @@ public class SSBasedInspection extends LocalInspectionTool implements DynamicGro
return result;
}
@ApiStatus.Internal @TestOnly
public void compileAllConfigurations(@NotNull Project project) {
for (Configuration configuration : myConfigurations) {
buildCompiledConfiguration(configuration, project);
}
}
private static Matcher buildCompiledConfiguration(@NotNull Configuration configuration, @NotNull Project project) {
try {
final MatchOptions matchOptions = configuration.getMatchOptions();