<?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">
  <modelVersion>4.0.0</modelVersion>

  <groupId>com.xamarin.samples.appium</groupId>
  <artifactId>LaunchTest</artifactId>
  <version>1.0</version>
  <dependencies>
    <dependency>
      <groupId>io.appium</groupId>
      <artifactId>java-client</artifactId>
      <version>7.6.0</version>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.13.1</version>
    </dependency>
    <!-- See https://docs.microsoft.com/appcenter/test-cloud/preparing-for-upload/appium -->
    <dependency>
      <groupId>com.microsoft.appcenter</groupId>
      <artifactId>appium-test-extension</artifactId>
      <version>1.6</version>
    </dependency>
    <!-- Following packages are not used in project directly, they added to fix vulnerability alerts -->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-beans</artifactId>
      <version>5.3.39</version>
    </dependency>
    <dependency>
      <groupId>com.google.code.gson</groupId>
      <artifactId>gson</artifactId>
      <version>2.8.9</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-expression</artifactId>
      <version>5.3.39</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context</artifactId>
      <version>5.3.39</version>
    </dependency>
    <dependency>
      <groupId>commons-io</groupId>
      <artifactId>commons-io</artifactId>
      <version>2.14.0</version>
    </dependency>
  </dependencies>

  <profiles>
    <profile>
      <id>prepare-for-upload</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-dependency-plugin</artifactId>
            <version>2.10</version>
            <executions>
              <execution>
                <id>copy-dependencies</id>
                <phase>package</phase>
                <goals>
                  <goal>copy-dependencies</goal>
                </goals>
                <configuration>
                  <outputDirectory>${project.build.directory}/upload/dependency-jars/</outputDirectory>
                  <useRepositoryLayout>true</useRepositoryLayout>
                  <copyPom>true</copyPom>
                  <addParentPoms>true</addParentPoms>
                </configuration>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-help-plugin</artifactId>
            <version>2.2</version>
            <executions>
              <execution>
                <id>generate-pom</id>
                <phase>package</phase>
                <goals>
                  <goal>effective-pom</goal>
                </goals>
                <configuration>
                  <output>${project.build.directory}/upload/pom.xml</output>
                </configuration>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-resources-plugin</artifactId>
            <executions>
              <execution>
                <id>copy-testclasses</id>
                <phase>package</phase>
                <goals>
                  <goal>testResources</goal>
                </goals>
                <configuration>
                  <outputDirectory>${project.build.directory}/upload/test-classes</outputDirectory>
                  <resources>
                    <resource>
                      <directory>
                        ${project.build.testOutputDirectory}
                      </directory>
                    </resource>
                  </resources>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
</project>