Merge "Bug 4805 add host_routes info to MDSAL"
[neutron.git] / integration / test / pom.xml
index d7694dfa832de1271a4a4e826ad191e467f01505..2b4d1ed9658ce748b227f8c0d3a94d139ececa43 100644 (file)
   <version>0.6.0-SNAPSHOT</version>
   <packaging>jar</packaging>
 
+  <properties>
+    <checkstyle.location>${project.parent.basedir}/src/main/resources</checkstyle.location>
+    <sonar.jacoco.itReportPath>target/jacoco-it.exec</sonar.jacoco.itReportPath>
+    <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
+    <sonar.sources>pom.xml,target/generated-sources/dependency</sonar.sources>
+  </properties>
   <dependencies>
     <dependency>
       <groupId>org.opendaylight.neutron</groupId>
       <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.apache.maven.plugins</groupId>
+        <artifactId>maven-dependency-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>unpack-classes</id>
+            <goals>
+              <goal>unpack</goal>
+            </goals>
+            <configuration>
+              <artifactItems>
+                <artifactItem>
+                  <groupId>${project.groupId}</groupId>
+                  <artifactId>neutron-spi</artifactId>
+                  <version>${project.version}</version>
+                </artifactItem>
+                <artifactItem>
+                  <groupId>${project.groupId}</groupId>
+                  <artifactId>northbound-api</artifactId>
+                  <version>${project.version}</version>
+                </artifactItem>
+                <artifactItem>
+                  <groupId>${project.groupId}</groupId>
+                  <artifactId>transcriber</artifactId>
+                  <version>${project.version}</version>
+                </artifactItem>
+              </artifactItems>
+              <outputDirectory>target/classes</outputDirectory>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
       <plugin>
         <groupId>org.ops4j.pax.exam</groupId>
         <artifactId>maven-paxexam-plugin</artifactId>
         </executions>
       </plugin>
       <plugin>
-        <groupId>org.jacoco</groupId>
-        <artifactId>jacoco-maven-plugin</artifactId>
-        <configuration>
-          <includes>
-            <include>org.opendaylight.neutron.*</include>
-          </includes>
-        </configuration>
+        <artifactId>maven-failsafe-plugin</artifactId>
+        <version>${failsafe.version}</version>
         <executions>
           <execution>
-            <id>pre-integration-test</id>
+            <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>prepare-agent</goal>
+              <goal>run</goal>
             </goals>
             <configuration>
-              <destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile>
-              <propertyName>failsafeArgLine</propertyName>
+              <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" />
+                <copy todir="target/generated-sources/dependency" overwrite="true">
+                  <fileset dir="../../neutron-spi/src/main/java" casesensitive="yes" />
+                  <fileset dir="../../northbound-api/src/main/java" casesensitive="yes" />
+                  <fileset dir="../../transcriber/src/main/java" casesensitive="yes" />
+                </copy>
+              </target>
             </configuration>
           </execution>
           <execution>
-            <id>post-integration-test</id>
+            <id>copyout-coverage-file</id>
             <phase>post-integration-test</phase>
             <goals>
-              <goal>report</goal>
+              <goal>run</goal>
+            </goals>
+            <configuration>
+              <target>
+                <copy todir="${project.basedir}/target" flatten="true" overwrite="true">
+                  <fileset dir="target/pax" casesensitive="yes">
+                    <include name="**/jacoco-it.exec" />
+                  </fileset>
+                </copy>
+              </target>
+            </configuration>
+          </execution>
+          <execution>
+            <id>remove-generated-sources</id>
+            <phase>verify</phase>
+            <goals>
+              <goal>run</goal>
             </goals>
             <configuration>
-              <dataFile>${project.build.directory}/coverage-reports/jacoco-it.exec</dataFile>
-              <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
+              <target>
+                <delete includeEmptyDirs="true">
+                  <fileset dir="target/generated-sources/dependency" includes="**/*" defaultexcludes="no"/>
+                </delete>
+              </target>
             </configuration>
           </execution>
         </executions>
       </plugin>
       <plugin>
-        <artifactId>maven-failsafe-plugin</artifactId>
-        <version>${failsafe.version}</version>
+        <groupId>org.jacoco</groupId>
+        <artifactId>jacoco-maven-plugin</artifactId>
         <executions>
           <execution>
-            <id>integration-tests</id>
-            <phase>integration-test</phase>
+            <id>post-integration-test</id>
+            <phase>post-integration-test</phase>
             <goals>
-              <goal>integration-test</goal>
-              <goal>verify</goal>
+              <goal>report-integration</goal>
             </goals>
             <configuration>
-              <argLine>${failsafeArgLine}</argLine>
-              <skipTests>${skip.integration.tests}</skipTests>
+              <dataFile>${sonar.jacoco.itReportPath}</dataFile>
+              <outputDirectory>${project.basedir}/target/site/jacoco-it</outputDirectory>
             </configuration>
           </execution>
         </executions>
       </plugin>
     </plugins>
-  </build>  
+  </build>
   <scm>
     <connection>scm:git:ssh://git.opendaylight.org:29418/neutron.git</connection>
     <developerConnection>scm:git:ssh://git.opendaylight.org:29418/neutron.git</developerConnection>