You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
device-mgt-plugins/components/test-coverage/pom.xml

274 lines
18 KiB

<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (c) 2018 - 2023, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
~
~ Entgra (Pvt) Ltd. licenses this file to you under the Apache License,
~ Version 2.0 (the "License"); you may not use this file except
~ in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing,
~ software distributed under the License is distributed on an
~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
~ KIND, either express or implied. See the License for the
~ specific language governing permissions and limitations
~ under the License.
-->
<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">
<parent>
<artifactId>io.entgra.device.mgt.plugins.parent</artifactId>
<groupId>io.entgra.device.mgt.plugins</groupId>
<version>6.0.0-SNAPSHOT</version>
<relativePath>../../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>test-coverage</artifactId>
<name>WSO2 Carbon - Carbon Device Management Plugins Test Coverage Component</name>
<properties>
<target>target</target>
<coverge-report>coverage-reports</coverge-report>
<individual.test.report.name>jacoco-unit.exec</individual.test.report.name>
<classes>classes</classes>
<source>src/main/java</source>
<!-- extensions component related properties -->
<extensions>extensions</extensions>
<!-- cdmf-transport adapters-->
<cdmf.adapters>${extensions}/cdmf-transport-adapters</cdmf.adapters>
<input.extension>
${basedir}/../${cdmf.adapters}/input/io.entgra.device.mgt.plugins.input.adapter.extension
</input.extension>
<input.http>
${basedir}/../${cdmf.adapters}/input/io.entgra.device.mgt.plugins.input.adapter.http
</input.http>
<input.mqtt>
${basedir}/../${cdmf.adapters}/input/io.entgra.device.mgt.plugins.input.adapter.mqtt
</input.mqtt>
<input.thrift>
${basedir}/../${cdmf.adapters}/input/io.entgra.device.mgt.plugins.input.adapter.thrift
</input.thrift>
<input.xmpp>
${basedir}/../${cdmf.adapters}/input/io.entgra.device.mgt.plugins.input.adapter.xmpp
</input.xmpp>
<output.mqtt>
${basedir}/../${cdmf.adapters}/output/io.entgra.device.mgt.plugins.output.adapter.mqtt
</output.mqtt>
<output.websocket>
${basedir}/../${cdmf.adapters}/output/io.entgra.device.mgt.plugins.output.adapter.websocket
</output.websocket>
<output.websocket.endpoint>
${basedir}/../${cdmf.adapters}/output/io.entgra.device.mgt.plugins.output.adapter.websocket.endpoint
</output.websocket.endpoint>
<output.xmpp>
${basedir}/../${cdmf.adapters}/output/io.entgra.device.mgt.plugins.output.adapter.xmpp
</output.xmpp>
<mb.extensions>${extensions}/mb-extensions</mb.extensions>
<mb.api>${basedir}/../${mb.extensions}/org.wso2.carbon.andes.extensions.device.mgt.api</mb.api>
<mb.authorization>
${basedir}/../${mb.extensions}/org.wso2.carbon.andes.extensions.device.mgt.mqtt.authorization
</mb.authorization>
<pull.notification.listener>
${basedir}/../${extensions}/pull-notification-listeners/io.entgra.device.mgt.plugins.mqtt.notification.listener
</pull.notification.listener>
<!-- mobile-plugins component -->
<mobile.plugins>mobile-plugins</mobile.plugins>
<android.plugin>${mobile.plugins}/android-plugin</android.plugin>
<android.mobile>${basedir}/../${android.plugin}/io.entgra.device.mgt.plugins.mobile.android</android.mobile>
<android.api>${basedir}/../${android.plugin}/io.entgra.device.mgt.plugins.mobile.android.api</android.api>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<phase>post-integration-test</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target name="mergeReports">
<taskdef resource="net/sf/antcontrib/antcontrib.properties" classpathref="maven.plugin.classpath" />
<if>
<and>
<available file="${android.api}/${target}/${coverge-report}/${individual.test.report.name}" />
</and>
<then>
<taskdef name="report" classname="org.jacoco.ant.ReportTask">
<classpath path="${basedir}/target/jacoco-jars/org.jacoco.ant.jar" />
</taskdef>
<mkdir dir="${basedir}/target/coverage-report" />
<report>
<executiondata>
<fileset dir="${android.api}/${target}/${coverge-report}">
<include name="${individual.test.report.name}" />
</fileset>
<!-- Need to list the newly added exec files here -->
</executiondata>
<structure name="Carbon Device Management Plugins Component Coverage Report">
<group name="extensions">
<group name="cdmf-transport-adapters">
<group name="input">
<group name="io.entgra.device.mgt.plugins.input.adapter.extension">
<classfiles>
<fileset dir="${input.extension}/${target}/${classes}" />
</classfiles>
<sourcefiles encoding="UTF-8">
<fileset dir="${input.extension}/${source}" />
</sourcefiles>
</group>
<group name="io.entgra.device.mgt.plugins.input.adapter.http">
<classfiles>
<fileset dir="${input.http}/${target}/${classes}" />
</classfiles>
<sourcefiles encoding="UTF-8">
<fileset dir="${input.http}/${source}" />
</sourcefiles>
</group>
<group name="io.entgra.device.mgt.plugins.input.adapter.mqtt">
<classfiles>
<fileset dir="${input.mqtt}/${target}/${classes}" />
</classfiles>
<sourcefiles encoding="UTF-8">
<fileset dir="${input.mqtt}/${source}" />
</sourcefiles>
</group>
<group name="io.entgra.device.mgt.plugins.input.adapter.thrift">
<classfiles>
<fileset dir="${input.thrift}/${target}/${classes}" />
</classfiles>
<sourcefiles encoding="UTF-8">
<fileset dir="${input.thrift}/${source}" />
</sourcefiles>
</group>
</group>
<group name="output">
<group name="io.entgra.device.mgt.plugins.output.adapter.mqtt">
<classfiles>
<fileset dir="${output.mqtt}/${target}/${classes}" />
</classfiles>
<sourcefiles encoding="UTF-8">
<fileset dir="${output.mqtt}/${source}" />
</sourcefiles>
</group>
<group name="io.entgra.device.mgt.plugins.output.adapter.websocket">
<classfiles>
<fileset dir="${output.websocket}/${target}/${classes}" />
</classfiles>
<sourcefiles encoding="UTF-8">
<fileset dir="${output.websocket}/${source}" />
</sourcefiles>
</group>
<group name="io.entgra.device.mgt.plugins.output.adapter.websocket.endpoint">
<classfiles>
<fileset dir="${output.websocket.endpoint}/${target}/${classes}" />
</classfiles>
<sourcefiles encoding="UTF-8">
<fileset dir="${output.websocket.endpoint}/${source}" />
</sourcefiles>
</group>
<group name="io.entgra.device.mgt.plugins.output.adapter.xmpp">
<classfiles>
<fileset dir="${output.xmpp}/${target}/${classes}" />
</classfiles>
<sourcefiles encoding="UTF-8">
<fileset dir="${output.xmpp}/${source}" />
</sourcefiles>
</group>
</group>
</group>
<group name="mb-extensions">
<group name="org.wso2.carbon.andes.extensions.device.mgt.api">
<classfiles>
<fileset dir="${mb.api}/${target}/${classes}" />
</classfiles>
<sourcefiles encoding="UTF-8">
<fileset dir="${mb.api}/${source}" />
</sourcefiles>
</group>
<group name="org.wso2.carbon.andes.extensions.device.mgt.mqtt.authorization">
<classfiles>
<fileset dir="${mb.authorization}/${target}/${classes}" />
</classfiles>
<sourcefiles encoding="UTF-8">
<fileset dir="${mb.authorization}/${source}" />
</sourcefiles>
</group>
</group>
<group name="pull-notification-listeners">
<classfiles>
<fileset dir="${pull.notification.listener}/${target}/${classes}" />
</classfiles>
<sourcefiles encoding="UTF-8">
<fileset dir="${pull.notification.listener}/${source}" />
</sourcefiles>
</group>
</group>
<group name="mobile-plugins">
<group name="android-plugin">
<group name="io.entgra.device.mgt.plugins.mobile.android">
<classfiles>
<fileset dir="${android.mobile}/${target}/${classes}" />
</classfiles>
<sourcefiles encoding="UTF-8">
<fileset dir="${android.mobile}/${source}" />
</sourcefiles>
</group>
<group name="io.entgra.device.mgt.plugins.mobile.android.api">
<classfiles>
<fileset dir="${android.api}/${target}/${classes}" />
</classfiles>
<sourcefiles encoding="UTF-8">
<fileset dir="${android.api}/${source}" />
</sourcefiles>
</group>
</group>
</group>
</structure>
<html destdir="${basedir}/target/coverage-report/site" />
</report>
</then>
</if>
</target>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.jacoco</groupId>
<artifactId>org.jacoco.ant</artifactId>
<version>${jacoco.ant.verision}</version>
</dependency>
<dependency>
<groupId>ant-contrib</groupId>
<artifactId>ant-contrib</artifactId>
<version>${ant.contrib.version}</version>
<exclusions>
<exclusion>
<groupId>ant</groupId>
<artifactId>ant</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</project>