<?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>
  	<groupId>org.eclipse.dltk.javascript</groupId>
  	<artifactId>javascript</artifactId>
  	<version>1.0.0-SNAPSHOT</version>
  	<relativePath>../..</relativePath>
  </parent>
  <groupId>org.eclipse.dltk.javascript</groupId>
  <artifactId>org.eclipse.dltk.javascript.parser.tests</artifactId>
  <version>5.0.0-SNAPSHOT</version>
  <packaging>eclipse-test-plugin</packaging>
  <build>
		<plugins>
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>target-platform-configuration</artifactId>
				<version>${tycho-version}</version>
				<configuration>
					<target>
						<artifact>
							<groupId>org.eclipse.dltk.core</groupId>
							<artifactId>org.eclipse.dltk.core.targetplatform</artifactId>
							<version>5.0.0-SNAPSHOT</version>
						</artifact>
					</target>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-surefire-plugin</artifactId>
				<version>${tycho-version}</version>
				<configuration>
					<includes>
						<include>**/AllTests.java</include>
					</includes>
					<dependencies>
						<dependency>
							<type>p2-installable-unit</type>
							<artifactId>org.eclipse.platform.feature.group</artifactId>
						</dependency>
					</dependencies>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>
