<?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>
  <groupId>org.eclipse.qvto-tests</groupId>
  <artifactId>org.eclipse.m2m.tests.qvt.oml.ui</artifactId>
  <version>3.9.2-SNAPSHOT</version>
  <packaging>eclipse-test-plugin</packaging>
  <parent>
    <groupId>org.eclipse.qvto-tests</groupId>
    <artifactId>org.eclipse.qvto.tests-folder</artifactId>
    <version>3.10.0-SNAPSHOT</version>
  </parent>
  <build>
  <plugins>
    <plugin>
      <groupId>org.eclipse.tycho</groupId>
      <artifactId>tycho-surefire-plugin</artifactId>
      <version>${tycho-version}</version>
      <configuration>
        <providerHint>junit4</providerHint>
        <testClass>org.eclipse.m2m.internal.tests.qvt.oml.ui.AllTests</testClass>
        <useUIHarness>true</useUIHarness>
        <useUIThread>true</useUIThread>
        <argLine>-Xms128m -Xmx1G -ea</argLine>
        <reportsDirectory>${project.build.directory}/surefire-reports/plugin</reportsDirectory>
     </configuration>
    </plugin>
  </plugins>
  </build>
</project>