Remove model classes from sonar reporting
[neutron.git] / integration / test / pom.xml
index 3ce4b7c5b4fe6f3339818195e4c2353ccdda36f7..48ee85498f04c64218b1e03a26ae62f7f2bfbff1 100644 (file)
   <version>0.6.0-SNAPSHOT</version>
   <packaging>jar</packaging>
 
+  <properties>
+    <sonar.binaries>../../neutron-spi/target/classes,../../transcriber/target/classes,../../northbound-api/target/classes</sonar.binaries>
+    <sonar.jacoco.itReportPath>target/jacoco-it.exec</sonar.jacoco.itReportPath>
+  </properties>
   <dependencies>
     <dependency>
       <groupId>org.opendaylight.neutron</groupId>
       <artifactId>dummyprovider</artifactId>
       <version>${project.version}</version>
     </dependency>
+    <dependency>
+      <groupId>org.opendaylight.neutron</groupId>
+      <artifactId>neutron-karaf</artifactId>
+      <version>${project.version}</version>
+      <type>zip</type>
+    </dependency>
+    <dependency>
+      <groupId>org.jacoco</groupId>
+      <artifactId>org.jacoco.agent</artifactId>
+      <version>${jacoco.version}</version>
+    </dependency>
   </dependencies>
 
   <build>
       </plugins>
     </pluginManagement>
     <plugins>
+      <plugin>
+        <groupId>org.ops4j.pax.exam</groupId>
+        <artifactId>maven-paxexam-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>generate-config</id>
+            <goals>
+              <goal>generate-depends-file</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <artifactId>maven-failsafe-plugin</artifactId>
+        <version>${failsafe.version}</version>
+        <executions>
+          <execution>
+            <id>integration-tests</id>
+            <phase>integration-test</phase>
+            <goals>
+              <goal>integration-test</goal>
+              <goal>verify</goal>
+            </goals>
+            <configuration>
+              <argLine>${failsafeArgLine}</argLine>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <artifactId>maven-antrun-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>prep-jacoco-agent</id>
+            <phase>pre-integration-test</phase>
+            <goals>
+              <goal>run</goal>
+            </goals>
+            <configuration>
+              <target>
+                <copy file="${settings.localRepository}/org/jacoco/org.jacoco.agent/${jacoco.version}/org.jacoco.agent-${jacoco.version}-runtime.jar"
+                      tofile="target/pax/jars/org.jacoco.agent.jar" />
+              </target>
+            </configuration>
+          </execution>
+          <execution>
+            <id>copyout-coverage-file</id>
+            <phase>post-integration-test</phase>
+            <goals>
+              <goal>run</goal>
+            </goals>
+            <configuration>
+              <target>
+                <copy todir="${project.build.directory}" flatten="true" overwrite="true">
+                  <fileset dir="target/pax" casesensitive="yes">
+                    <include name="**/jacoco-it.exec" />
+                  </fileset>
+                </copy>
+              </target>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
       <plugin>
         <groupId>org.jacoco</groupId>
         <artifactId>jacoco-maven-plugin</artifactId>
         </configuration>
         <executions>
           <execution>
-            <id>pre-test</id>
-            <goals>
-              <goal>prepare-agent-integration</goal>
-            </goals>
-          </execution>
-          <execution>
-            <id>post-test</id>
+            <id>post-integration-test</id>
+            <phase>post-integration-test</phase>
             <goals>
-              <goal>report</goal>
+              <goal>report-integration</goal>
             </goals>
-            <phase>test</phase>
+            <configuration>
+              <dataFile>${sonar.jacoco.itReportPath}</dataFile>
+            </configuration>
           </execution>
         </executions>
       </plugin>