<?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">
    <parent>
        <artifactId>restcomm-connect</artifactId>
        <groupId>io.bitbucket.supportomateinc</groupId>
        <version>9.0.0</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>restcomm-connect.testsuite</artifactId>

    <properties>
        <commons-lang3.version>3.7</commons-lang3.version>
    </properties>

    <dependencies>
        <!-- Testing -->
        <dependency>
            <groupId>io.bitbucket.supportomateinc</groupId>
            <artifactId>restcomm-connect.dao</artifactId>
            <version>${project.version}</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>io.bitbucket.supportomateinc</groupId>
            <artifactId>restcomm-connect.commons</artifactId>
            <version>${project.version}</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>io.bitbucket.supportomateinc</groupId>
            <artifactId>restcomm-connect.http</artifactId>
            <version>${project.version}</version>
            <scope>provided</scope>
        </dependency>

        <!-- <dependency> <groupId>io.bitbucket.supportomateinc</groupId> <artifactId>restcomm-connect.application</artifactId>
        <version>${project.version}</version> <type>war</type> <scope>test</scope>
        </dependency> <dependency> <groupId>io.bitbucket.supportomateinc</groupId> <artifactId>restcomm-connect.commons</artifactId>
        <version>${project.version}</version> <scope>provided</scope> </dependency>
        <dependency> <groupId>io.bitbucket.supportomateinc</groupId> <artifactId>restcomm-connect.dao</artifactId>
        <version>${project.version}</version> <scope>provided</scope> </dependency>
        <dependency> <groupId>io.bitbucket.supportomateinc</groupId> <artifactId>restcomm-connect.mgcp</artifactId>
        <version>${project.version}</version> <scope>provided</scope> </dependency>
        <dependency> <groupId>io.bitbucket.supportomateinc</groupId> <artifactId>restcomm-connect.sms</artifactId>
        <version>${project.version}</version> <scope>provided</scope> </dependency>
        <dependency> <groupId>io.bitbucket.supportomateinc</groupId> <artifactId>restcomm-connect.http</artifactId>
        <version>${project.version}</version> <scope>provided</scope> </dependency>
        <dependency> <groupId>io.bitbucket.supportomateinc</groupId> <artifactId>restcomm-connect.telephony</artifactId>
        <version>${project.version}</version> <scope>provided</scope> </dependency>
        <dependency> <groupId>io.bitbucket.supportomateinc</groupId> <artifactId>restcomm-connect.telephony.api</artifactId>
        <version>${project.version}</version> <scope>provided</scope> </dependency>
        <dependency> <groupId>io.bitbucket.supportomateinc</groupId> <artifactId>restcomm-connect.interpreter</artifactId>
        <version>${project.version}</version> <scope>test</scope> </dependency> -->

        <dependency>
            <groupId>org.scala-lang</groupId>
            <artifactId>scala-library</artifactId>
        </dependency>

        <dependency>
            <groupId>com.typesafe.akka</groupId>
            <artifactId>akka-actor_2.10</artifactId>
        </dependency>
        <dependency>
            <groupId>com.typesafe.akka</groupId>
            <artifactId>akka-slf4j_2.10</artifactId>
        </dependency>


        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-slf4j-impl</artifactId>
        </dependency>

        <dependency>
            <groupId>org.apache.shiro</groupId>
            <artifactId>shiro-core</artifactId>
        </dependency>

        <dependency>
            <groupId>org.apache.shiro</groupId>
            <artifactId>shiro-web</artifactId>
        </dependency>

        <dependency>
            <groupId>com.sun.jersey</groupId>
            <artifactId>jersey-server</artifactId>
        </dependency>

        <dependency>
            <groupId>com.sun.jersey</groupId>
            <artifactId>jersey-client</artifactId>
        </dependency>

        <dependency>
            <groupId>stax</groupId>
            <artifactId>stax-api</artifactId>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>stax</groupId>
            <artifactId>stax</artifactId>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>com.thoughtworks.xstream</groupId>
            <artifactId>xstream</artifactId>
        </dependency>

        <dependency>
            <groupId>com.google.code.gson</groupId>
            <artifactId>gson</artifactId>
        </dependency>

        <dependency>
            <groupId>javax.sip</groupId>
            <artifactId>jain-sip-ri</artifactId>
        </dependency>

        <dependency>
                <groupId>org.jboss.arquillian.junit</groupId>
                <artifactId>arquillian-junit-container</artifactId>
                <version>${arquillian.version}</version>
                <scope>compile</scope>
        </dependency>

        <dependency>
                <groupId>org.jboss.shrinkwrap.resolver</groupId>
                <artifactId>shrinkwrap-resolver-impl-maven</artifactId>
                <version>${shrinkwrap.resolver.version}</version>
                <scope>compile</scope>
        </dependency>

        <dependency>
                <groupId>org.jboss.shrinkwrap.resolver</groupId>
                <artifactId>shrinkwrap-resolver-api-maven</artifactId>
                <version>${shrinkwrap.resolver.version}</version>
                <scope>compile</scope>
        </dependency>

        <dependency>
                <groupId>org.jboss.shrinkwrap.resolver</groupId>
                <artifactId>shrinkwrap-resolver-api-maven-archive</artifactId>
                <version>${shrinkwrap.resolver.version}</version>
                <scope>compile</scope>
        </dependency>

        <dependency>
                <groupId>org.jboss.shrinkwrap.resolver</groupId>
                <artifactId>shrinkwrap-resolver-impl-maven-archive</artifactId>
                <version>${shrinkwrap.resolver.version}</version>
                <scope>compile</scope>
        </dependency>

        <!--Dependencies for Tomcat-7 -->
        <dependency>
            <groupId>org.mobicents.servlet.sip.containers</groupId>
            <artifactId>sip-servlets-catalina-7</artifactId>
            <version>${sipservletapi.version}</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>org.mobicents.servlet.sip.containers</groupId>
            <artifactId>sip-servlets-tomcat-7</artifactId>
            <version>${sipservletapi.version}</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>io.bitbucket.supportomateinc.arquillian.container</groupId>
            <artifactId>mss-tomcat-embedded-7</artifactId>
            <version>1.0.3</version>
            <scope>compile</scope>
        </dependency>

        <!--Dependencies for Tomcat-7 -->

        <!--Dependencies for Tomcat-6 -->
        <!-- <dependency> <groupId>org.mobicents.servlet.sip.containers</groupId>
        <artifactId>sip-servlets-catalina-6</artifactId> <version>${sipservletapi.version}</version>
        <scope>test</scope> </dependency> <dependency> <groupId>org.mobicents.servlet.sip.containers</groupId>
        <artifactId>sip-servlets-tomcat-jboss4</artifactId> <version>${sipservletapi.version}</version>
        <scope>test</scope> </dependency> <dependency> <groupId>io.bitbucket.supportomateinc.arquillian.container</groupId>
        <artifactId>mss-tomcat-embedded-6</artifactId> <version>${mss.arquillian.version}</version>
        <scope>test</scope> </dependency> -->

        <!--Dependencies for Tomcat-6 -->

        <dependency>
            <groupId>com.cloudhopper</groupId>
            <artifactId>ch-commons-gsm</artifactId>
        </dependency>

        <dependency>
            <groupId>com.cloudhopper</groupId>
            <artifactId>ch-smpp</artifactId>
        </dependency>

        <dependency>
            <groupId>com.cloudhopper</groupId>
            <artifactId>ch-commons-util</artifactId>
            <version>${ch-commons-util.version}</version>
        </dependency>

        <dependency>
            <groupId>org.mobicents.servlet.sip</groupId>
            <artifactId>sip-servlets-core-api</artifactId>
            <version>${sipservletapi.version}</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.mobicents.servlet.sip</groupId>
            <artifactId>sip-servlets-spec</artifactId>
            <version>${sipservletapi.version}</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.mobicents.servlet.sip</groupId>
            <artifactId>sip-servlets-impl</artifactId>
            <version>${sipservletapi.version}</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.mobicents.servlet.sip</groupId>
            <artifactId>sip-servlets-client</artifactId>
            <version>${sipservletapi.version}</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.mobicents.ha.javax.sip</groupId>
            <artifactId>mobicents-jain-sip-ha-core</artifactId>
            <version>1.5.5</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>javax.sip</groupId>
            <artifactId>jain-sip-api</artifactId>
            <version>1.2</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>javax.mail</groupId>
            <artifactId>mail</artifactId>
            <version>1.4</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
        </dependency>

        <dependency>
            <groupId>commons-configuration</groupId>
            <artifactId>commons-configuration</artifactId>
        </dependency>

        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
        </dependency>

        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>${commons-lang3.version}</version>
        </dependency>

        <dependency>
            <groupId>org.mobicents.servlet.sip</groupId>
            <artifactId>sip-servlets-application-router</artifactId>
            <version>${sipservletapi.version}</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.apache.tomcat</groupId>
            <artifactId>tomcat-coyote</artifactId>
            <version>${tomcat7.version}</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.apache.tomcat</groupId>
            <artifactId>tomcat-jasper</artifactId>
            <version>${tomcat7.version}</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.mockito</groupId>
            <artifactId>mockito-all</artifactId>
            <version>1.8.5</version>
            <scope>test</scope>
        </dependency>
        <!-- <dependency>
                <groupId>org.powermock</groupId>
                <artifactId>powermock-module-testng-agent</artifactId>
                <version>1.6.6</version>
                <scope>test</scope>
        </dependency> -->

        <dependency>
            <groupId>com.github.tomakehurst</groupId>
            <artifactId>wiremock</artifactId>
            <version>1.57</version>
            <!-- Include this if you have dependency conflicts for Guava, Jetty, Jackson
            or Apache HTTP Client -->
            <classifier>standalone</classifier>
        </dependency>

        <dependency>
            <groupId>org.apache.tomcat</groupId>
            <artifactId>tomcat-catalina</artifactId>
            <version>${tomcat7.version}</version>
        </dependency>

        <dependency>
            <groupId>org.mobicents.commtesting</groupId>
            <artifactId>mgcpUnit</artifactId>
            <version>${mgcpunit.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>io.bitbucket.supportomateinc.arquillian.container</groupId>
            <artifactId>mss-arquillian-mediaserver-api</artifactId>
            <version>1.0.3</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>io.bitbucket.supportomateinc.arquillian.container</groupId>
            <artifactId>mss-arquillian-mediaserver-extension</artifactId>
            <version>1.0.3</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>com.icegreen</groupId>
            <artifactId>greenmail</artifactId>
            <version>1.4.0</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>io.bitbucket.supportomateinc</groupId>
            <artifactId>restcomm-connect.email.api</artifactId>
            <version>${project.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>io.bitbucket.supportomateinc</groupId>
            <artifactId>restcomm-connect.sms</artifactId>
            <version>${project.version}</version>
        </dependency>
        <dependency>
            <groupId>io.bitbucket.supportomateinc</groupId>
            <artifactId>restcomm-connect.mgcp</artifactId>
            <version>${project.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>io.bitbucket.supportomateinc</groupId>
            <artifactId>restcomm-connect.extension.api</artifactId>
            <version>${project.version}</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>io.bitbucket.supportomateinc</groupId>
            <artifactId>restcomm-connect.extension.controller</artifactId>
            <version>${project.version}</version>
            <scope>test</scope>
        </dependency>

		<dependency>
			<groupId>io.bitbucket.supportomateinc</groupId>
			<artifactId>restcomm-connect.monitoring.service</artifactId>
			<version>${project.version}</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.restcomm.smpp</groupId>
			<artifactId>smpp-extensions</artifactId>
		</dependency>

    </dependencies>

    <build>
        <testResources>
            <testResource>
                <directory>src/test/resources</directory>
                <filtering>false</filtering>
            </testResource>
            <testResource>
                <directory>src/test/resources/org/restcomm/connect/testsuite/http</directory>
                <filtering>true</filtering>
                <includes>
                    <include>*.xml</include>
                </includes>

            </testResource>
        </testResources>

        <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <compilerArguments>
                        <g />
                    </compilerArguments>
                    <source>1.7</source>
                    <target>1.7</target>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-eclipse-plugin</artifactId>
                <version>2.8</version>
                <configuration>
                    <useProjectReferences>false</useProjectReferences>
                </configuration>
            </plugin>

            <plugin>
                <groupId>org.basepom.maven</groupId>
                <artifactId>duplicate-finder-maven-plugin</artifactId>
                <version>1.2.1</version>
                <executions>
                    <execution>
                        <id>default</id>
                        <phase>verify</phase>
                        <goals>
                            <goal>check</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <skip>false</skip>
                    <quiet>false</quiet>
                    <checkCompileClasspath>true</checkCompileClasspath>
                    <checkRuntimeClasspath>true</checkRuntimeClasspath>
                    <checkTestClasspath>true</checkTestClasspath>
                    <failBuildInCaseOfDifferentContentConflict>false</failBuildInCaseOfDifferentContentConflict>
                    <failBuildInCaseOfEqualContentConflict>false</failBuildInCaseOfEqualContentConflict>
                    <failBuildInCaseOfConflict>false</failBuildInCaseOfConflict>
                    <printEqualFiles>false</printEqualFiles>
                    <preferLocal>true</preferLocal>

                    <!-- Version 1.1.1+ -->
                    <includeBootClasspath>false</includeBootClasspath>
                    <bootClasspathProperty>sun.boot.class.path</bootClasspathProperty>
                    <!-- Version 1.1.1+ -->


                    <!-- Version 1.2.0+ -->
                    <includePomProjects>false</includePomProjects>

                    <useResultFile>true</useResultFile>
                    <resultFile>${project.build.directory}/duplicate-finder-result.xml</resultFile>
                    <resultFileMinClasspathCount>2</resultFileMinClasspathCount>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.19.1</version>
                <configuration>
                    <argLine>-Xms256m -Xmx2048m -XX:MaxPermSize=1024m ${jacocoArgLine}</argLine>
                    <reuseForks>false</reuseForks>
                </configuration>
            </plugin>
        </plugins>
    </build>
    <profiles>
        <profile>
            <id>parallel-testing</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-failsafe-plugin</artifactId>
                        <version>2.18.1</version>
                        <configuration>
                            <redirectTestOutputToFile>true</redirectTestOutputToFile>
                            <!-- let rerun attempts bedefined form env
                            <rerunFailingTestsCount>2</rerunFailingTestsCount>
                            -->
                            <!-- let ci script set forkcount.Dont increase over 65
        since that will make ports over the maximum allowed by OS.
                            on local env set depending on available mem
                            <forkCount>2</forkCount>
                            -->
                            <reuseForks>false</reuseForks>
                            <parallel>classes</parallel>
                            <threadCountClasses>5</threadCountClasses>
                            <!-- start with low memory to increase forks -->
                            <argLine>-Xms256m -Xmx2048m -XX:MaxPermSize=512m ${jacocoArgLine}</argLine>
                            <systemPropertyVariables>
                                <!--use different arquillian configuration to tweak maps
                                depending on forked JVM-->
                                <arquillian.launch>mss-tomcat-embedded-7-forked</arquillian.launch>
                                <!-- this will ensure sip and http ports are diff for
                                every forked JVM/test class-->
                                <arquillian_http_port>${surefire.forkNumber}509</arquillian_http_port>
                                <arquillian_sip_port>${surefire.forkNumber}508</arquillian_sip_port>
                            </systemPropertyVariables>
                        </configuration>
                        <executions>
                            <execution>
                                <id>failsafe-integration-tests</id>
                                <phase>integration-test</phase>
                                <goals>
                                    <goal>integration-test</goal>
                                    <goal>verify</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-surefire-plugin</artifactId>
                        <version>2.19.1</version>
                        <configuration>
                            <reuseForks>false</reuseForks>
                            <skipTests>${skipUTs}</skipTests>
                            <parallel>classes</parallel>
                            <threadCountClasses>5</threadCountClasses>
                            <!-- start with low memory to increase forks -->
                            <argLine>-Xms256m -Xmx2048m -XX:MaxPermSize=512m ${jacocoArgLine}</argLine>
                            <systemPropertyVariables>
                                <!--use different arquillian configuration to tweak maps
                                depending on forked JVM-->
                                <arquillian.launch>mss-tomcat-embedded-7-forked</arquillian.launch>
                                <!-- this will ensure sip and http ports are diff for
                                every forked JVM/test class-->
                                <arquillian_http_port>${surefire.forkNumber}509</arquillian_http_port>
                                <arquillian_sip_port>${surefire.forkNumber}508</arquillian_sip_port>
                            </systemPropertyVariables>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>

    <repositories>
        <repository>
            <id>mobicents-public-repository-group</id>
            <name>Mobicens Public Maven Repository Group</name>
            <url>https://s01.oss.sonatype.org/content/groups/public</url>
            <layout>default</layout>
            <releases>
                <enabled>true</enabled>
                <updatePolicy>never</updatePolicy>
            </releases>
            <snapshots>
                <enabled>true</enabled>
                <updatePolicy>never</updatePolicy>
            </snapshots>
        </repository>
        <repository>
            <id>jboss-public-repository-group</id>
            <name>JBoss Public Maven Repository Group</name>
            <url>https://repository.jboss.org/nexus/content/groups/public-jboss/</url>
            <layout>default</layout>
            <releases>
                <enabled>true</enabled>
                <updatePolicy>never</updatePolicy>
            </releases>
            <snapshots>
                <enabled>true</enabled>
                <updatePolicy>never</updatePolicy>
            </snapshots>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>mobicents-public-repository-group</id>
            <name>Mobicens Public Maven Repository Group</name>
            <url>https://s01.oss.sonatype.org/content/groups/public</url>
            <layout>default</layout>
            <releases>
                <enabled>true</enabled>
                <updatePolicy>never</updatePolicy>
            </releases>
            <snapshots>
                <enabled>true</enabled>
                <updatePolicy>never</updatePolicy>
            </snapshots>
        </pluginRepository>
        <pluginRepository>
            <id>jboss-public-repository-group</id>
            <name>JBoss Public Maven Repository Group</name>
            <url>https://repository.jboss.org/nexus/content/groups/public-jboss/</url>
            <layout>default</layout>
            <releases>
                <enabled>true</enabled>
                <updatePolicy>never</updatePolicy>
            </releases>
            <snapshots>
                <enabled>true</enabled>
                <updatePolicy>never</updatePolicy>
            </snapshots>
        </pluginRepository>
    </pluginRepositories>
</project>
