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