<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <artifactId>mylyn-reviews-r4e-parent</artifactId>
    <groupId>org.eclipse.mylyn.reviews</groupId>
    <version>0.7.1-SNAPSHOT</version>
  </parent>
  <artifactId>org.eclipse.mylyn.reviews.r4e.core.tests</artifactId>
  <version>0.1.0.v20110316-0100</version>
  <packaging>eclipse-test-plugin</packaging>
  <properties>
    <mylyn-reviews-skip-test>${maven.test.skip}</mylyn-reviews-skip-test>
  </properties>
  <build>
    <plugins>
      <plugin>
        <groupId>org.sonatype.tycho</groupId>
        <artifactId>maven-osgi-test-plugin</artifactId>
        <version>${tycho-version}</version>
        <configuration>
		  <skip>${mylyn-reviews-skip-test}</skip>
          <useUIHarness>true</useUIHarness>
          <forkedProcessTimeoutInSeconds>7200</forkedProcessTimeoutInSeconds>
          <argLine>-Xmx1024m -XX:MaxPermSize=256m -Djava.io.tmpdir=${project.build.directory}</argLine>
          <includes>
            <include>**/*R4ECoreAllTests.class</include>
          </includes>
          <dependencies>
            <dependency>
              <type>p2-installable-unit</type>
              <artifactId>org.eclipse.sdk.feature.group</artifactId>
              <version>${platform-version}</version>
            </dependency>
          </dependencies>		  
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.sonatype.tycho</groupId>
        <artifactId>maven-osgi-source-plugin</artifactId>
      </plugin>
    </plugins>
  </build>
</project>
