<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:m2="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns="http://maven.apache.org/POM/4.0.0"
         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>
  <parent>
    <groupId>org.eclipse.modisco</groupId>
    <artifactId>org.eclipse.modisco.releng.tycho</artifactId>
    <version>1.5.0-SNAPSHOT</version>
    <relativePath>../org.eclipse.modisco.releng.tycho</relativePath>
  </parent>
  <groupId>org.eclipse.modisco</groupId>
  <artifactId>org.eclipse.modisco.infra.discovery.core.tests</artifactId>
  <version>1.2.0-SNAPSHOT</version>
  <packaging>eclipse-test-plugin</packaging>
   <build>
      <plugins>
         <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>target-platform-configuration</artifactId>
            <configuration>
               <dependency-resolution>
                  <extraRequirements xmlns="">
                     <requirement>
                        <type>p2-installable-unit</type>
                        <id>org.eclipse.modisco.sdk.feature.feature.group</id>
                        <versionRange>0.0.0</versionRange>
                     </requirement>
                  </extraRequirements>
               </dependency-resolution>
            </configuration>
            <executions>
               <execution>
                  <id>default</id>
                  <goals>
                     <goal>target-platform</goal>
                  </goals>
                  <phase>compile</phase>
               </execution>
            </executions>
         </plugin>
         <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>tycho-surefire-plugin</artifactId>
            <configuration>
               <skipTests>${SKIP_TESTS}</skipTests>
               <testFailureIgnore>true</testFailureIgnore>
               <failIfNoTests>false</failIfNoTests>
               <forkedProcessTimeoutInSeconds>1800</forkedProcessTimeoutInSeconds>
                <argLine>-DoutputEncoding=UTF-8</argLine>
               <application>org.eclipse.ui.ide.workbench</application>
               <reportsDirectory>${project.build.directory}/surefire-reports</reportsDirectory>
               <showEclipseLog>true</showEclipseLog>
            </configuration>
            <executions>
               <execution>
                  <id>default-test</id>
                  <configuration>
                     <includes>
                        <include>**/AllTestsNotInUIThread.class</include>
                     </includes>
                     <useUIThread>false</useUIThread>
                     <useUIHarness>true</useUIHarness>
                  </configuration>
                  <goals>
                     <goal>test</goal>
                  </goals>
                  <phase>test</phase>
               </execution>
               <execution>
                  <id>AllUITests</id>
                  <configuration>
                     <includes>
                        <include>**/AllTestsInUIThread.class</include>
                     </includes>
                     <useUIThread>true</useUIThread>
                     <useUIHarness>true</useUIHarness>
                  </configuration>
                  <goals>
                     <goal>test</goal>
                  </goals>
                  <phase>test</phase>
               </execution>
            </executions>
         </plugin>
      </plugins>
   </build>
</project>
