mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[fus] IJPL-231993 Test on StatisticsJobsScheduler registered in Java IDE Customization
GitOrigin-RevId: 2b0e903532c57d9213737b8d017c6547fa92ca15
This commit is contained in:
committed by
intellij-monorepo-bot
parent
63661162cd
commit
fd45c7cbbf
@@ -30,4 +30,29 @@ jvm_library(
|
||||
"//notebooks/visualization",
|
||||
]
|
||||
)
|
||||
### auto-generated section `build intellij.java.ide.customization` end
|
||||
|
||||
jvm_library(
|
||||
name = "ide-customization_test_lib",
|
||||
visibility = ["//visibility:public"],
|
||||
srcs = glob(["test/**/*.kt", "test/**/*.java", "test/**/*.form"], allow_empty = True),
|
||||
associates = [":ide-customization"],
|
||||
deps = [
|
||||
"//java/java-psi-api:psi",
|
||||
"//platform/core-api:core",
|
||||
"//platform/lang-api:lang",
|
||||
"//platform/platform-impl:ide-impl",
|
||||
"//platform/lang-core",
|
||||
"//platform/testFramework",
|
||||
"//platform/testFramework:testFramework_test_lib",
|
||||
]
|
||||
)
|
||||
### auto-generated section `build intellij.java.ide.customization` end
|
||||
|
||||
### auto-generated section `test intellij.java.ide.customization` start
|
||||
load("@community//build:tests-options.bzl", "jps_test")
|
||||
|
||||
jps_test(
|
||||
name = "ide-customization_test",
|
||||
runtime_deps = [":ide-customization_test_lib"]
|
||||
)
|
||||
### auto-generated section `test intellij.java.ide.customization` end
|
||||
@@ -5,6 +5,7 @@
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/resources" type="java-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/test" isTestSource="true" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
@@ -20,5 +21,6 @@
|
||||
<orderEntry type="module" module-name="intellij.notebooks.visualization" scope="RUNTIME" />
|
||||
<orderEntry type="module" module-name="intellij.platform.ide.impl" />
|
||||
<orderEntry type="module" module-name="intellij.platform.lang.core" />
|
||||
<orderEntry type="module" module-name="intellij.platform.testFramework" scope="TEST" />
|
||||
</component>
|
||||
</module>
|
||||
+47
@@ -0,0 +1,47 @@
|
||||
// Copyright 2000-2026 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.ide.customization.java;
|
||||
|
||||
import com.intellij.ide.ApplicationActivity;
|
||||
import com.intellij.openapi.extensions.ExtensionPointName;
|
||||
import com.intellij.openapi.extensions.impl.ExtensionPointImpl;
|
||||
import com.intellij.openapi.util.Pair;
|
||||
import com.intellij.testFramework.fixtures.BasePlatformTestCase;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
public class FusSchedulersRegistrationTest extends BasePlatformTestCase {
|
||||
// runs with intellij.java.tests classpath
|
||||
|
||||
public static final String PLUGIN_ID = "com.intellij.java.ide";
|
||||
|
||||
private final ExtensionPointName<ApplicationActivity> APP_ACTIVITIES_EP =
|
||||
new ExtensionPointName<>("com.intellij.applicationActivity");
|
||||
private final ExtensionPointName<ApplicationActivity> POST_STARTUP_ACTIVITIES_EP =
|
||||
new ExtensionPointName<>("com.intellij.postStartupActivity");
|
||||
|
||||
public void testSchedulerActivitiesAvailable() {
|
||||
var applicationActivities = getExtensionClasses(APP_ACTIVITIES_EP);
|
||||
assertTrue("StatisticsJobsScheduler is missing",
|
||||
applicationActivities.containsKey("com.intellij.internal.statistic.updater.StatisticsJobsScheduler"));
|
||||
assertTrue("StatisticsStateCollectorsScheduler is missing",
|
||||
applicationActivities.containsKey("com.intellij.internal.statistic.updater.StatisticsStateCollectorsScheduler"));
|
||||
|
||||
assertEquals(PLUGIN_ID, applicationActivities.get("com.intellij.internal.statistic.updater.StatisticsJobsScheduler"));
|
||||
assertEquals(PLUGIN_ID, applicationActivities.get("com.intellij.internal.statistic.updater.StatisticsStateCollectorsScheduler"));
|
||||
|
||||
var postStartup = getExtensionClasses(POST_STARTUP_ACTIVITIES_EP);
|
||||
assertTrue("StatisticsStateCollectorsScheduler$MyStartupActivity is missing",
|
||||
postStartup.containsKey("com.intellij.internal.statistic.updater.StatisticsStateCollectorsScheduler$MyStartupActivity"));
|
||||
|
||||
assertEquals(PLUGIN_ID, applicationActivities.get("com.intellij.internal.statistic.updater.StatisticsStateCollectorsScheduler"));
|
||||
}
|
||||
|
||||
// operates with EP adapters instead of instances, because those activities are not created in unit tests mode
|
||||
// they throw ExtensionNotApplicableException.create() from init
|
||||
private static @NotNull Map<@NotNull String, String> getExtensionClasses(ExtensionPointName<ApplicationActivity> epName) {
|
||||
return ContainerUtil.map2Map(((ExtensionPointImpl<?>)epName.getPoint()).getSortedAdapters(),
|
||||
it -> new Pair<>(it.getAssignableToClassName(), it.pluginDescriptor.getPluginId().getIdString()));
|
||||
}
|
||||
}
|
||||
@@ -178,6 +178,7 @@ jvm_library(
|
||||
"//platform/testFramework/junit5:junit5_test_lib",
|
||||
"//platform/ml-api:ml",
|
||||
"//java/ide-customization",
|
||||
"//java/ide-customization:ide-customization_test_lib",
|
||||
"//platform/backend/workspace",
|
||||
"//platform/util",
|
||||
"//platform/core-api:core",
|
||||
|
||||
@@ -312,6 +312,7 @@ com.intellij.java.*
|
||||
org.jetbrains.java.*
|
||||
org.jetbrains.uast.test.java.*
|
||||
com.intellij.codeInspection.tests.java.*
|
||||
com.intellij.ide.customization.java.*
|
||||
com.siyeh.*
|
||||
-com.intellij.java.compiler.*
|
||||
-com.intellij.java.propertyBased.*
|
||||
|
||||
@@ -218,6 +218,7 @@ jvm_library(
|
||||
"//plugins/kotlin/kotlin.searching/base",
|
||||
"//plugins/kotlin/j2k/k1.old.post-processing",
|
||||
"//java/ide-customization",
|
||||
"//java/ide-customization:ide-customization_test_lib",
|
||||
"//plugins/kotlin/refactorings/kotlin.refactorings.common:kotlin-refactorings-common",
|
||||
"//plugins/kotlin/base/test:test_test_lib",
|
||||
"@lib//:hamcrest",
|
||||
|
||||
Reference in New Issue
Block a user