Improve code coverage for aaf cadi modules
[aaf/cadi.git] / pom.xml
diff --git a/pom.xml b/pom.xml
index 1568559..97d1204 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -24,7 +24,7 @@
        <modelVersion>4.0.0</modelVersion>
        <groupId>org.onap.aaf.cadi</groupId>
        <artifactId>parent</artifactId>
-       <name>CADI Parent POM (Code, Access, Data, Identity)</name>
+       <name>aaf-cadi</name>
        <version>1.0.0-SNAPSHOT</version>
        <inceptionYear>2015-07-20</inceptionYear>       
        <packaging>pom</packaging>
        <organizationUrl></organizationUrl>
                </developer>
        </developers>
+       
+       <parent>             
+       <groupId>org.onap.oparent</groupId>
+       <artifactId>oparent</artifactId>
+       <version>0.1.1</version>
+    </parent>
+       
        <properties>
                <skipSigning>true</skipSigning>
                <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
                <!-- jetty-version>7.2.0.v20101020</jetty-version -->
                <!-- project.jettyVersion>9.0.3.v20130506</project.jettyVersion -->
                <project.cadiVersion>1.0.0-SNAPSHOT</project.cadiVersion>
+               <sonar.language>java</sonar.language>
+               <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
+               <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>
+               <sonar.jacoco.reportPath>${project.build.directory}/coverage-reports/jacoco.exec</sonar.jacoco.reportPath>
+               <sonar.jacoco.itReportPath>${project.build.directory}/coverage-reports/jacoco-it.exec</sonar.jacoco.itReportPath>
+               <sonar.jacoco.reportMissing.force.zero>false</sonar.jacoco.reportMissing.force.zero>
+               <sonar.projectVersion>${project.version}</sonar.projectVersion>
                <nexusproxy>https://nexus.onap.org</nexusproxy>
                <snapshotNexusPath>/content/repositories/snapshots/</snapshotNexusPath>
                <releaseNexusPath>/content/repositories/releases/</releaseNexusPath>
        <!-- ============================================================== -->
        <dependencyManagement>
                <dependencies>
+               <dependency>
+                       <groupId>org.mockito</groupId>
+                       <artifactId>mockito-all</artifactId>
+                       <version>1.9.5</version>
+                       <scope>test</scope>
+                       </dependency>
                        <dependency>
                                <groupId>org.onap.aaf.authz</groupId>
                                <artifactId>authz-client</artifactId>
                                                <exclude>**/JU_PermEval.java</exclude>
                                                <exclude>**/JU_JMeter.java</exclude>
                                                <exclude>**/JU_Lur2_0Call.java</exclude>
-                                       </excludes>
+                                       </excludes>   
                                  </configuration>
                                </plugin>
 
                                        </configuration>
                                </plugin>
                
-       
-       
-                               <!-- Define the javadoc plugin -->
-                               <!-- <plugin>
-                                       <groupId>org.apache.maven.plugins</groupId>
-                                       <artifactId>maven-javadoc-plugin</artifactId>
-                                       <version>2.10</version>
-                                       <configuration>
-                                               <excludePackageNames>org.opendaylight.*</excludePackageNames>
-                                       </configuration>
-                               </plugin> -->
-       
+               
                                <plugin>
                                        <artifactId>maven-release-plugin</artifactId>
                                        <version>2.5.2</version>
                                        <version>2.10</version>
                                </plugin>
                                
-                               <plugin>
+               <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-javadoc-plugin</artifactId>
-                                       <configuration>
+                       <version>2.10.4</version>
+                       <configuration>
                        <failOnError>false</failOnError>
                        </configuration>
                        <executions>
                                        <serverId>ecomp-staging</serverId>
                                </configuration>
                        </plugin> 
+                       
+                       <plugin>
+          <groupId>org.jacoco</groupId>
+          <artifactId>jacoco-maven-plugin</artifactId>
+          <version>${jacoco.version}</version>
+          <configuration>
+            <!-- Note: This exclusion list should match <sonar.exclusions>
+         property above -->
+            <excludes>
+              <exclude>**/gen/**</exclude>
+              <exclude>**/generated-sources/**</exclude>
+              <exclude>**/yang-gen/**</exclude>
+              <exclude>**/pax/**</exclude>
+            </excludes>
+          </configuration>
+          <executions>
+            <!--
+        Prepares the property pointing to the JaCoCo runtime agent which
+        is passed as VM argument when Maven the Surefire plugin is executed.
+        -->
+            <execution>
+              <id>pre-unit-test</id>
+              <goals>
+                <goal>prepare-agent</goal>
+              </goals>
+              <configuration>
+                <!-- Sets the path to the file which contains the execution data. -->
+                <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
+                <!--
+            Sets the name of the property containing the settings
+            for JaCoCo runtime agent.
+        -->
+                <propertyName>surefireArgLine</propertyName>
+              </configuration>
+            </execution>
+            <!--
+        Ensures that the code coverage report for unit tests is created after
+        unit tests have been run.
+        -->
+            <execution>
+              <id>post-unit-test</id>
+              <phase>test</phase>
+              <goals>
+                <goal>report</goal>
+              </goals>
+              <configuration>
+                <!-- Sets the path to the file which contains the execution data. -->
+                <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
+                <!-- Sets the output directory for the code coverage report. -->
+                <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
+              </configuration>
+            </execution>
+            <execution>
+              <id>pre-integration-test</id>
+              <phase>pre-integration-test</phase>
+              <goals>
+                <goal>prepare-agent</goal>
+              </goals>
+              <configuration>
+                <!-- Sets the path to the file which contains the execution data. -->
+                <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
+                <!--
+            Sets the name of the property containing the settings
+            for JaCoCo runtime agent.
+        -->
+                <propertyName>failsafeArgLine</propertyName>
+              </configuration>
+            </execution>
+            <!--
+        Ensures that the code coverage report for integration tests after
+        integration tests have been run.
+        -->
+            <execution>
+              <id>post-integration-test</id>
+              <phase>post-integration-test</phase>
+              <goals>
+                <goal>report</goal>
+              </goals>
+              <configuration>
+                <!-- Sets the path to the file which contains the execution data. -->
+                <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
+                <!-- Sets the output directory for the code coverage report. -->
+                <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
+              </configuration>
+            </execution>
+          </executions>
+        </plugin>                    
+
                        </plugins>                      
        </build>
        <distributionManagement>
                        <url>dav:${nexusproxy}${sitePath}</url>
                </site>
        </distributionManagement>
-<pluginRepositories>
-        <pluginRepository>
-            <id>onap-plugin-snapshots</id>
-            <url>https://nexus.onap.org/content/repositories/snapshots/</url>
-        </pluginRepository>
-    </pluginRepositories>
-       
-       <repositories>
-               <repository>
-                       <id>central</id>
-                       <name>Maven 2 repository 2</name>
-                       <url>http://repo2.maven.org/maven2/</url>
-               </repository>
-               <repository>
-            <id>onap-jar-snapshots</id>
-            <url>https://nexus.onap.org/content/repositories/snapshots</url>
-        </repository>
-               <repository>
-                       <id>spring-repo</id>
-                       <name>Spring repo</name>
-                       <url>https://artifacts.alfresco.com/nexus/content/repositories/public/</url>
-               </repository>
-               <repository>
-                       <id>repository.jboss.org-public</id>
-                       <name>JBoss.org Maven repository</name>
-                       <url>https://repository.jboss.org/nexus/content/groups/public</url>
-               </repository>
-       </repositories>
 </project>