Jacoco coverage generated in a single jacoco.exec
Makes it easier to use the old version of Sonarqube provided by Eclipse
Change-Id: Ife9f86d0cfa62cfd4fb77c0ec9595e4483a87d66
Signed-off-by: Lorenzo Bettini <lorenzo.bettini@gmail.com>
diff --git a/devtools/org.eclipse.emf.parsley.workspace/component.ext b/devtools/org.eclipse.emf.parsley.workspace/component.ext
index 06f1bfe..1ecf465 100644
--- a/devtools/org.eclipse.emf.parsley.workspace/component.ext
+++ b/devtools/org.eclipse.emf.parsley.workspace/component.ext
@@ -13,4 +13,6 @@
name="org.eclipse.emf.parsley.oomph"/>
<requirement
name="org.eclipse.emf.parsley.repository.plain.project"/>
+ <requirement
+ name="org.eclipse.emf.parsley.tests.coverage.plain.project"/>
</targlets:ComponentExtension>
diff --git a/releng/org.eclipse.emf.parsley.parent/pom.xml b/releng/org.eclipse.emf.parsley.parent/pom.xml
index 5c3a4f2..fc032f3 100644
--- a/releng/org.eclipse.emf.parsley.parent/pom.xml
+++ b/releng/org.eclipse.emf.parsley.parent/pom.xml
@@ -104,7 +104,7 @@
<!-- Sonar -->
<sonar.language>java</sonar.language>
<sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
- <sonar.jacoco.reportPath>../${project.artifactId}.tests/target/jacoco.exec</sonar.jacoco.reportPath>
+ <sonar.jacoco.reportPath>../../tests/org.eclipse.emf.parsley.tests.coverage/target/jacoco.exec</sonar.jacoco.reportPath>
<sonar.junit.reportsPath>../${project.artifactId}.tests/target/surefire-reports/</sonar.junit.reportsPath>
<!-- **/EmfParsleyViewFilesGenerator.java,**/EmfParsleyProjectFilesGenerator.java report massive code
duplication, but they're generated by Xtend and they are basically template generators;
@@ -182,6 +182,7 @@
<activeByDefault>true</activeByDefault>
</activation>
<modules>
+ <module>../../tests/org.eclipse.emf.parsley.tests.coverage</module>
<module>../../devtools/org.eclipse.emf.parsley.targetplatform</module>
<module>../../plugins/org.eclipse.emf.parsley.runtime.common</module>
@@ -746,8 +747,7 @@
</goals>
<configuration>
<!-- Where to put jacoco coverage report -->
- <!-- Take the default -->
- <!-- <destFile>${sonar.jacoco.reportPath}</destFile> -->
+ <destFile>${sonar.jacoco.reportPath}</destFile>
<includes>
<include>org.eclipse.emf.parsley.*</include>
</includes>
@@ -763,7 +763,7 @@
<exclude>**/Abstract*ProposalProvider.java</exclude>
<exclude>**/*Test.java</exclude>
</excludes>
- <!-- <append>true</append> -->
+ <append>true</append>
</configuration>
</execution>
</executions>
diff --git a/tests/org.eclipse.emf.parsley.tests.coverage/.project b/tests/org.eclipse.emf.parsley.tests.coverage/.project
new file mode 100644
index 0000000..9b8da86
--- /dev/null
+++ b/tests/org.eclipse.emf.parsley.tests.coverage/.project
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.emf.parsley.tests.coverage</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ </buildSpec>
+ <natures>
+ </natures>
+</projectDescription>
diff --git a/tests/org.eclipse.emf.parsley.tests.coverage/README b/tests/org.eclipse.emf.parsley.tests.coverage/README
new file mode 100644
index 0000000..833b08c
--- /dev/null
+++ b/tests/org.eclipse.emf.parsley.tests.coverage/README
@@ -0,0 +1,3 @@
+This project is used only as a container where Jacoco code coverage will be generated.
+
+We need a single jacoco.exec because Sonarqube provided by Eclipse is quite old and having a single jacoco.exec makes configuration easy.
\ No newline at end of file
diff --git a/tests/org.eclipse.emf.parsley.tests.coverage/pom.xml b/tests/org.eclipse.emf.parsley.tests.coverage/pom.xml
new file mode 100644
index 0000000..1d5300a
--- /dev/null
+++ b/tests/org.eclipse.emf.parsley.tests.coverage/pom.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <relativePath>../../releng/org.eclipse.emf.parsley.parent/pom.xml</relativePath>
+ <groupId>org.eclipse.emf.parsley</groupId>
+ <artifactId>org.eclipse.emf.parsley.parent</artifactId>
+ <version>1.2.2-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>org.eclipse.emf.tests.coverage</artifactId>
+
+ <packaging>pom</packaging>
+</project>
\ No newline at end of file