<?xml version="1.0" encoding="UTF-8"?>

<!--
   Copyright (C) 2018, protos software gmbh (http://www.protos.de).
   All rights reserved. This program and the accompanying materials
   are made available under the terms of the Eclipse Public License 2.0
   which accompanies this distribution, and is available at
   https://www.eclipse.org/legal/epl-2.0/

   SPDX-License-Identifier: EPL-2.0
-->

<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.etrice</groupId>
		<artifactId>org.eclipse.etrice.parent</artifactId>
		<version>2.0.0-SNAPSHOT</version>
		<relativePath>../releng/org.eclipse.etrice.parent</relativePath>
	</parent>
	<groupId>org.eclipse.etrice</groupId>
	<artifactId>org.eclipse.etrice.tests</artifactId>
	<packaging>pom</packaging>
	
	<build>
		<plugins>
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-surefire-plugin</artifactId>
				<version>${tycho.version}</version>
				<configuration>
					<failIfNoTests>false</failIfNoTests>
					<reportsDirectory>log</reportsDirectory>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>