From 53d60b72b213e52c2ac267be668e061d1ed48362 Mon Sep 17 00:00:00 2001 From: Tianli Feng Date: Mon, 13 Sep 2021 10:56:11 -0700 Subject: [PATCH] Fix defects in code-coverage.gralde to generate code coverage report properly (#1214) * Refactor the logic to control the format for code coverage report and rename the system property * Remove outdated code of giving JaCoCo files permission when Java security manager enabled Signed-off-by: Tianli Feng --- gradle/code-coverage.gradle | 9 ++++----- .../org/opensearch/bootstrap/BootstrapForTesting.java | 9 --------- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/gradle/code-coverage.gradle b/gradle/code-coverage.gradle index 1c2ee64fe18..34fdf5d99ed 100644 --- a/gradle/code-coverage.gradle +++ b/gradle/code-coverage.gradle @@ -78,11 +78,10 @@ tasks.withType(JacocoReport).configureEach { classDirectories.setFrom files(selectedProjects.sourceSets.main.output) reports { - xml.enabled true - // Code coverage report in HTML format is on demand, since it takes up 100+MB of disk space. - if (System.getProperty('tests.coverage.html_report')) { - html.enabled true - } + // Code coverage report in HTML and CSV formats are on demand, in case they take extra disk space. + xml.enabled System.getProperty('tests.coverage.report.xml', 'true').toBoolean() + html.enabled System.getProperty('tests.coverage.report.html', 'false').toBoolean() + csv.enabled System.getProperty('tests.coverage.report.csv', 'false').toBoolean() } } diff --git a/test/framework/src/main/java/org/opensearch/bootstrap/BootstrapForTesting.java b/test/framework/src/main/java/org/opensearch/bootstrap/BootstrapForTesting.java index b686a577bca..8b860ff7beb 100644 --- a/test/framework/src/main/java/org/opensearch/bootstrap/BootstrapForTesting.java +++ b/test/framework/src/main/java/org/opensearch/bootstrap/BootstrapForTesting.java @@ -127,15 +127,6 @@ public class BootstrapForTesting { if (Strings.hasLength(System.getProperty("tests.config"))) { FilePermissionUtils.addSingleFilePath(perms, PathUtils.get(System.getProperty("tests.config")), "read,readlink"); } - // jacoco coverage output file - final boolean testsCoverage = - Booleans.parseBoolean(System.getProperty("tests.coverage", "false")); - if (testsCoverage) { - Path coverageDir = PathUtils.get(System.getProperty("tests.coverage.dir")); - FilePermissionUtils.addSingleFilePath(perms, coverageDir.resolve("jacoco.exec"), "read,write"); - // in case we get fancy and use the -integration goals later: - FilePermissionUtils.addSingleFilePath(perms, coverageDir.resolve("jacoco-it.exec"), "read,write"); - } // intellij hack: intellij test runner wants setIO and will // screw up all test logging without it! if (System.getProperty("tests.gradle") == null) {