SLING-9700 Enable code coverage with JaCoCo
inherit system properties from parent and check command
diff --git a/pom.xml b/pom.xml
index 7896dfb..61e608b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -78,12 +78,9 @@
</executions>
<configuration>
<redirectTestOutputToFile>true</redirectTestOutputToFile>
- <systemProperties>
- <property>
- <name>bundle.filename</name>
- <value>${basedir}/target/${project.build.finalName}.jar</value>
- </property>
- </systemProperties>
+ <systemPropertyVariables combine.children="append">
+ <bundle.filename>${basedir}/target/${project.build.finalName}.jar</bundle.filename>
+ </systemPropertyVariables>
</configuration>
</plugin>
<plugin>
diff --git a/src/test/java/org/apache/sling/commons/crypto/it/tests/CryptoTestSupport.java b/src/test/java/org/apache/sling/commons/crypto/it/tests/CryptoTestSupport.java
index 940d149..9bff12e 100644
--- a/src/test/java/org/apache/sling/commons/crypto/it/tests/CryptoTestSupport.java
+++ b/src/test/java/org/apache/sling/commons/crypto/it/tests/CryptoTestSupport.java
@@ -18,8 +18,12 @@
*/
package org.apache.sling.commons.crypto.it.tests;
+import java.util.Objects;
+
import org.apache.sling.testing.paxexam.TestSupport;
import org.ops4j.pax.exam.options.ModifiableCompositeOption;
+import org.ops4j.pax.exam.options.OptionalCompositeOption;
+import org.ops4j.pax.exam.options.extra.VMOption;
import static org.apache.sling.testing.paxexam.SlingOptions.paxUrlWrap;
import static org.apache.sling.testing.paxexam.SlingOptions.scr;
@@ -27,6 +31,7 @@
import static org.ops4j.pax.exam.CoreOptions.junitBundles;
import static org.ops4j.pax.exam.CoreOptions.mavenBundle;
import static org.ops4j.pax.exam.CoreOptions.vmOption;
+import static org.ops4j.pax.exam.CoreOptions.when;
import static org.ops4j.pax.exam.CoreOptions.wrappedBundle;
public abstract class CryptoTestSupport extends TestSupport {
@@ -44,8 +49,14 @@
mavenBundle().groupId("com.google.guava").artifactId("guava").versionAsInProject(),
mavenBundle().groupId("com.google.guava").artifactId("failureaccess").versionAsInProject(),
mavenBundle().groupId("com.googlecode.java-diff-utils").artifactId("diffutils").versionAsInProject(),
- vmOption(System.getProperty("jacoco.command"))
+ jacoco()
);
}
+ protected OptionalCompositeOption jacoco() {
+ final String jacocoCommand = System.getProperty("jacoco.command");
+ final VMOption option = Objects.nonNull(jacocoCommand) && !jacocoCommand.trim().isEmpty() ? vmOption(jacocoCommand) : null;
+ return when(Objects.nonNull(option)).useOptions(option);
+ }
+
}