<?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.cdt</groupId>
		<artifactId>cdt-parent</artifactId>
		<version>8.8.0-SNAPSHOT</version>
		<relativePath>../../pom.xml</relativePath>
	</parent>

	<version>2.0.0-SNAPSHOT</version>
	<artifactId>org.eclipse.cdt.qt.core.tests</artifactId>
	<packaging>eclipse-test-plugin</packaging>

    <!-- Uncommenting this is useful when the repo is built first then you want to run tests on this plugin only -->
	<!-- <repositories>
		<repository>
			<id>cdt.repo</id>
			<url>file:/${basedir}/../../releng/org.eclipse.cdt.repo/target/repository</url>
			<layout>p2</layout>
		</repository>
	</repositories>-->

	<build>
		<plugins>
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-surefire-plugin</artifactId>
				<version>${tycho-version}</version>
				<configuration>
					<useUIHarness>false</useUIHarness>
					<argLine>${tycho.testArgLine} ${base.test.vmargs}</argLine>
					<testFailureIgnore>true</testFailureIgnore>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>target-platform-configuration</artifactId>
				<configuration>
					<dependency-resolution>
						<extraRequirements>
							<requirement>
								<type>eclipse-feature</type>
								<id>org.eclipse.platform</id>
								<versionRange>0.0.0</versionRange>
							</requirement>
							<requirement>
								<type>eclipse-feature</type>
								<id>org.eclipse.cdt</id>
								<versionRange>0.0.0</versionRange>
							</requirement>
							<requirement>
								<type>eclipse-feature</type>
								<id>org.eclipse.cdt.qt</id>
								<versionRange>0.0.0</versionRange>
							</requirement>
						</extraRequirements>
					</dependency-resolution>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>
