Remove @HardwareAgentRequired annotation

All Perf Unit tests are run on the hardware agents to ensure stability of the metrics.
So the annotation is not needed anymore and it doesn't work on JUnit5 tests so the same test is run twice and since test execution time depends on the bucketing, metrics are jumping.

GitOrigin-RevId: fc83a368447d09d6ad1b269c88fe4f6c79067a91
This commit is contained in:
Maxim.Kolmakov
2024-09-13 15:05:49 +02:00
committed by intellij-monorepo-bot
parent 187cb1ec16
commit c6d31a553c
11 changed files with 0 additions and 64 deletions

View File

@@ -7,7 +7,6 @@ import com.intellij.codeInsight.daemon.DaemonCodeAnalyzer;
import com.intellij.diagnostic.PerformanceWatcher; import com.intellij.diagnostic.PerformanceWatcher;
import com.intellij.diagnostic.ThreadDumper; import com.intellij.diagnostic.ThreadDumper;
import com.intellij.ide.highlighter.JavaFileType; import com.intellij.ide.highlighter.JavaFileType;
import com.intellij.idea.HardwareAgentRequired;
import com.intellij.lang.LanguageAnnotators; import com.intellij.lang.LanguageAnnotators;
import com.intellij.lang.annotation.AnnotationHolder; import com.intellij.lang.annotation.AnnotationHolder;
import com.intellij.lang.annotation.HighlightSeverity; import com.intellij.lang.annotation.HighlightSeverity;
@@ -51,7 +50,6 @@ import java.util.concurrent.atomic.AtomicReference;
/** /**
* tests the daemon performance during highlighting interruptions/typing * tests the daemon performance during highlighting interruptions/typing
*/ */
@HardwareAgentRequired
public class DaemonRespondToChangesPerformanceTest extends DaemonAnalyzerTestCase { public class DaemonRespondToChangesPerformanceTest extends DaemonAnalyzerTestCase {
private static final boolean DEBUG = false; private static final boolean DEBUG = false;

View File

@@ -1,7 +1,6 @@
// Copyright 2000-2017 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. // Copyright 2000-2017 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.jetbrains.jsonSchema; package com.jetbrains.jsonSchema;
import com.intellij.idea.HardwareAgentRequired;
import com.intellij.json.JsonFileType; import com.intellij.json.JsonFileType;
import com.intellij.json.psi.JsonFile; import com.intellij.json.psi.JsonFile;
import com.intellij.json.psi.JsonObject; import com.intellij.json.psi.JsonObject;
@@ -26,7 +25,6 @@ import java.util.Collections;
import static com.jetbrains.jsonSchema.JsonSchemaHighlightingTestBase.registerJsonSchema; import static com.jetbrains.jsonSchema.JsonSchemaHighlightingTestBase.registerJsonSchema;
@HardwareAgentRequired
public class JsonSchemaPerformanceTest extends JsonSchemaHeavyAbstractTest { public class JsonSchemaPerformanceTest extends JsonSchemaHeavyAbstractTest {
public static final String BASE_PATH = "/tests/testData/jsonSchema/performance/"; public static final String BASE_PATH = "/tests/testData/jsonSchema/performance/";

View File

@@ -3,7 +3,6 @@ package com.intellij.openapi.vfs;
import com.intellij.concurrency.JobLauncher; import com.intellij.concurrency.JobLauncher;
import com.intellij.concurrency.JobSchedulerImpl; import com.intellij.concurrency.JobSchedulerImpl;
import com.intellij.idea.HardwareAgentRequired;
import com.intellij.openapi.application.ex.ApplicationManagerEx; import com.intellij.openapi.application.ex.ApplicationManagerEx;
import com.intellij.openapi.command.WriteCommandAction; import com.intellij.openapi.command.WriteCommandAction;
import com.intellij.openapi.diagnostic.FrequentEventDetector; import com.intellij.openapi.diagnostic.FrequentEventDetector;
@@ -51,7 +50,6 @@ import static org.junit.Assert.*;
@RunFirst @RunFirst
@SkipSlowTestLocally @SkipSlowTestLocally
@HardwareAgentRequired
public class VfsUtilPerformanceTest extends BareTestFixtureTestCase { public class VfsUtilPerformanceTest extends BareTestFixtureTestCase {
@Rule public TempDirectory tempDir = new TempDirectory(); @Rule public TempDirectory tempDir = new TempDirectory();

View File

@@ -1,7 +1,6 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. // Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.ui; package com.intellij.ui;
import com.intellij.idea.HardwareAgentRequired;
import com.intellij.internal.IconsLoadTime; import com.intellij.internal.IconsLoadTime;
import com.intellij.internal.IconsLoadTime.StatData; import com.intellij.internal.IconsLoadTime.StatData;
import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.diagnostic.Logger;
@@ -30,7 +29,6 @@ import static org.junit.Assume.assumeTrue;
* *
* @author tav * @author tav
*/ */
@HardwareAgentRequired
public class IconsLoadTimePerformanceTest { public class IconsLoadTimePerformanceTest {
private static final Logger LOG = Logger.getInstance(IconsLoadTimePerformanceTest.class); private static final Logger LOG = Logger.getInstance(IconsLoadTimePerformanceTest.class);
private static final int SVG_ICON_AVERAGE_LOAD_TIME_EXPECTED_NO_CACHE = 100; // ms private static final int SVG_ICON_AVERAGE_LOAD_TIME_EXPECTED_NO_CACHE = 100; // ms

View File

@@ -1,7 +1,6 @@
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. // Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
package com.intellij.util.io; package com.intellij.util.io;
import com.intellij.idea.HardwareAgentRequired;
import com.intellij.openapi.util.io.FileUtil; import com.intellij.openapi.util.io.FileUtil;
import com.intellij.openapi.util.text.StringUtil; import com.intellij.openapi.util.text.StringUtil;
import com.intellij.tools.ide.metrics.benchmark.Benchmark; import com.intellij.tools.ide.metrics.benchmark.Benchmark;
@@ -22,7 +21,6 @@ import java.util.concurrent.atomic.AtomicInteger;
* @author Eugene Zhuravlev * @author Eugene Zhuravlev
*/ */
@SkipSlowTestLocally @SkipSlowTestLocally
@HardwareAgentRequired
public class PersistentMapPerformanceTest extends PersistentMapTestBase { public class PersistentMapPerformanceTest extends PersistentMapTestBase {
interface MapConstructor<T, T2> { interface MapConstructor<T, T2> {
PersistentHashMap<T, T2> createMap(File file) throws IOException; PersistentHashMap<T, T2> createMap(File file) throws IOException;

View File

@@ -2,7 +2,6 @@
package com.intellij; package com.intellij;
import com.intellij.idea.ExcludeFromTestDiscovery; import com.intellij.idea.ExcludeFromTestDiscovery;
import com.intellij.idea.HardwareAgentRequired;
import com.intellij.idea.IJIgnore; import com.intellij.idea.IJIgnore;
import com.intellij.idea.IgnoreJUnit3; import com.intellij.idea.IgnoreJUnit3;
import com.intellij.nastradamus.NastradamusClient; import com.intellij.nastradamus.NastradamusClient;
@@ -371,9 +370,6 @@ public class TestCaseLoader {
if (checkForExclusion) { if (checkForExclusion) {
if (shouldExcludeTestClass(moduleName, testCaseClass)) return false; if (shouldExcludeTestClass(moduleName, testCaseClass)) return false;
boolean isHardwareAgentRequired = getAnnotationInHierarchy(testCaseClass, HardwareAgentRequired.class) != null;
if (isHardwareAgentRequired != HARDWARE_AGENT_REQUIRED) return false;
} }
if (TestCase.class.isAssignableFrom(testCaseClass) || TestSuite.class.isAssignableFrom(testCaseClass)) { if (TestCase.class.isAssignableFrom(testCaseClass) || TestSuite.class.isAssignableFrom(testCaseClass)) {

View File

@@ -1,14 +0,0 @@
// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.idea;
import com.intellij.idea.extensions.HardwareAgentRequiredExecutionCondition;
import org.junit.jupiter.api.extension.ExtendWith;
import java.lang.annotation.*;
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
@Inherited
@ExtendWith(HardwareAgentRequiredExecutionCondition.class)
public @interface HardwareAgentRequired {
}

View File

@@ -1,30 +0,0 @@
// Copyright 2000-2021 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.idea.extensions;
import com.intellij.TestCaseLoader;
import com.intellij.idea.HardwareAgentRequired;
import org.junit.jupiter.api.extension.ConditionEvaluationResult;
import org.junit.jupiter.api.extension.ExecutionCondition;
import org.junit.jupiter.api.extension.ExtensionContext;
import org.junit.platform.commons.support.AnnotationSupport;
public class HardwareAgentRequiredExecutionCondition implements ExecutionCondition {
private static final boolean RUN_WITH_HARDWARE_REQUIREMENT = Boolean.getBoolean(TestCaseLoader.HARDWARE_AGENT_REQUIRED_FLAG);
private static final boolean IS_LOCAL_RUN = System.getenv("TEAMCITY_VERSION") == null;
private static final ConditionEvaluationResult ENABLED_LOCALLY = ConditionEvaluationResult.enabled("Enabled locally");
private static final ConditionEvaluationResult MET_HARDWARE_REQUIREMENT = ConditionEvaluationResult.enabled("Hardware requirement met");
private static final ConditionEvaluationResult UNMET_HARDWARE_REQUIREMENT = ConditionEvaluationResult.disabled("Unmet hardware requirement");
@Override
public ConditionEvaluationResult evaluateExecutionCondition(ExtensionContext context) {
if (IS_LOCAL_RUN) {
return ENABLED_LOCALLY;
}
boolean hasAnnotation = AnnotationSupport.findAnnotation(context.getTestClass(), HardwareAgentRequired.class).isPresent();
return hasAnnotation == RUN_WITH_HARDWARE_REQUIREMENT
? MET_HARDWARE_REQUIREMENT
: UNMET_HARDWARE_REQUIREMENT;
}
}

View File

@@ -3,7 +3,6 @@ package com.intellij.lang.ant;
import com.intellij.codeInsight.daemon.DaemonAnalyzerTestCase; import com.intellij.codeInsight.daemon.DaemonAnalyzerTestCase;
import com.intellij.codeInsight.daemon.impl.HighlightInfo; import com.intellij.codeInsight.daemon.impl.HighlightInfo;
import com.intellij.idea.HardwareAgentRequired;
import com.intellij.openapi.application.PluginPathManager; import com.intellij.openapi.application.PluginPathManager;
import com.intellij.testFramework.ExpectedHighlightingData; import com.intellij.testFramework.ExpectedHighlightingData;
import com.intellij.tools.ide.metrics.benchmark.Benchmark; import com.intellij.tools.ide.metrics.benchmark.Benchmark;
@@ -12,7 +11,6 @@ import org.jetbrains.annotations.NotNull;
import java.io.IOException; import java.io.IOException;
import java.util.Collection; import java.util.Collection;
@HardwareAgentRequired
public class AntHighlightingPerformanceTest extends DaemonAnalyzerTestCase { public class AntHighlightingPerformanceTest extends DaemonAnalyzerTestCase {
@NotNull @NotNull
@Override @Override

View File

@@ -2,7 +2,6 @@
package com.intellij.lang.properties; package com.intellij.lang.properties;
import com.intellij.codeInsight.JavaCodeInsightTestCase; import com.intellij.codeInsight.JavaCodeInsightTestCase;
import com.intellij.idea.HardwareAgentRequired;
import com.intellij.openapi.application.PluginPathManager; import com.intellij.openapi.application.PluginPathManager;
import com.intellij.openapi.module.Module; import com.intellij.openapi.module.Module;
import com.intellij.openapi.roots.ModuleRootManager; import com.intellij.openapi.roots.ModuleRootManager;
@@ -19,7 +18,6 @@ import java.io.File;
import java.io.FileWriter; import java.io.FileWriter;
import java.io.IOException; import java.io.IOException;
@HardwareAgentRequired
public class PropertiesPerformanceTest extends JavaCodeInsightTestCase { public class PropertiesPerformanceTest extends JavaCodeInsightTestCase {
@Override @Override
protected void setUp() throws Exception { protected void setUp() throws Exception {

View File

@@ -15,7 +15,6 @@
*/ */
package com.intellij.util.xml; package com.intellij.util.xml;
import com.intellij.idea.HardwareAgentRequired;
import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.command.WriteCommandAction; import com.intellij.openapi.command.WriteCommandAction;
import com.intellij.openapi.module.Module; import com.intellij.openapi.module.Module;
@@ -32,7 +31,6 @@ import org.jetbrains.annotations.NotNull;
import java.io.IOException; import java.io.IOException;
import java.util.List; import java.util.List;
@HardwareAgentRequired
public class DomPerformanceTest extends DomHardCoreTestCase { public class DomPerformanceTest extends DomHardCoreTestCase {
public void testVisitorPerformance() { public void testVisitorPerformance() {
Ref<MyElement> ref = new Ref<>(); Ref<MyElement> ref = new Ref<>();