[coverage] IDEA-333766 Deprecate and remove EMMA coverage support

Merge-request: IJ-MR-115929
Merged-by: Maksim Zuev <Maksim.Zuev@jetbrains.com>

GitOrigin-RevId: de14caf714ea5183edcb78216527f4edabbfebed
This commit is contained in:
Maksim Zuev
2023-10-02 23:35:51 +00:00
committed by intellij-monorepo-bot
parent 44bce2859b
commit c2b955e360
4 changed files with 11 additions and 20 deletions
@@ -9,13 +9,13 @@ import com.intellij.internal.statistic.utils.StatisticsUtil
import com.intellij.openapi.project.Project
enum class RunnerType {
IJCSampling, IJCTracing, IJCTracingTestTracking, JaCoCo, Emma
IJCSampling, IJCTracing, IJCTracingTestTracking, JaCoCo
}
object CoverageLogger : CounterUsagesCollector() {
private val GROUP = EventLogGroup("coverage", 7)
private val GROUP = EventLogGroup("coverage", 8)
private val runners = listOf("idea", "jacoco", "Emma", "PhpCoverage", "utPlSqlCoverageRunner", "JestJavaScriptTestRunnerCoverage",
private val runners = listOf("idea", "jacoco", "PhpCoverage", "utPlSqlCoverageRunner", "JestJavaScriptTestRunnerCoverage",
"rcov", "DartCoverageRunner", "WipCoverageRunner", "VitestJavaScriptTestRunnerCoverage",
"jacoco_xml_report", "MochaJavaScriptTestRunnerCoverage", "GoCoverage",
"KarmaJavaScriptTestRunnerCoverage", "coverage.py")
@@ -43,7 +43,6 @@ object CoverageLogger : CounterUsagesCollector() {
includePatterns: Int,
excludePatterns: Int) {
val type = when (coverageRunner.id) {
"emma" -> RunnerType.Emma
"jacoco" -> RunnerType.JaCoCo
"idea" -> when {
!branchCoverage -> RunnerType.IJCSampling
@@ -32,8 +32,6 @@ coverage.settings.exclude=Exclude classes and packages
coverage.settings.runner=Specify alternative coverage runner
coverage.settings.tracing=Enable branch coverage and test tracking
coverage.settings.test.folders=Collect coverage in test folders
coverage.instrumentation.jdk7.compatibility.veryfy.error.warning={0} coverage instrumentation can lead to java.lang.VerifyError errors with JDK 7. If so, please try IDEA coverage runner.
coverage.instrumentation.jdk7.compatibility=Coverage instrumentation is not fully compatible with JDK 7
sub.coverage.notification=Active per test coverage: no cumulative data is available
java.coverage.engine.presentable.text=Java Coverage
report.unknown.outcome=Unknown outcome: {0}
@@ -38,10 +38,6 @@ import java.util.concurrent.TimeUnit;
public abstract class JavaCoverageRunner extends CoverageRunner {
private static final String JAVA_COVERAGE_AGENT_AGENT_PATH = "java.test.agent.lib.path";
public boolean isJdk7Compatible() {
return true;
}
@Override
public boolean acceptsCoverageEngine(@NotNull CoverageEngine engine) {
return engine instanceof JavaCoverageEngine;
@@ -132,4 +128,12 @@ public abstract class JavaCoverageRunner extends CoverageRunner {
}
return tempFile;
}
/**
* @deprecated This method is not used anymore, as all the runners support JDK 7+.
*/
@Deprecated
public boolean isJdk7Compatible() {
return true;
}
}
@@ -138,16 +138,6 @@ public class CoverageJavaRunConfigurationExtension extends RunConfigurationExten
coverageConfig.setCurrentCoverageSuite(coverageDataManager.addCoverageSuite(coverageConfig));
}, ModalityState.nonModal(), project.getDisposed());
appendCoverageArgument(configuration, params, coverageConfig);
final Sdk jdk = params.getJdk();
if (jdk != null && JavaSdk.getInstance().isOfVersionOrHigher(jdk, JavaSdkVersion.JDK_1_7) && coverageRunner instanceof JavaCoverageRunner && !((JavaCoverageRunner)coverageRunner).isJdk7Compatible()) {
Notifications.Bus.notify(new Notification("Coverage",
JavaCoverageBundle.message("coverage.instrumentation.jdk7.compatibility"),
JavaCoverageBundle.message(
"coverage.instrumentation.jdk7.compatibility.veryfy.error.warning",
coverageRunner.getPresentableName()),
NotificationType.WARNING));
}
}
}