<?xml version="1.0" encoding="UTF-8"?>
<!--#======================================================================= -->
<!--# Copyright (c) 2011, 2014 - Lunifera GmbH (Gross Enzersdorf), -->
<!--# Loetz GmbH&Co.KG (Heidelberg) -->
<!--# 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          -->
<!--# -->
<!--# Contributors: -->
<!--# Florian Pirchner - Initial implementation -->
<!--#======================================================================= -->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<parent>
		<groupId>org.eclipse.osbp.dsl</groupId>
		<artifactId>org.eclipse.osbp.dsl.aggregator</artifactId>
		<version>0.9.0-SNAPSHOT</version>
		<relativePath>..</relativePath>
	</parent>

	<artifactId>org.eclipse.osbp.dsl.entity.xtext.tests</artifactId>
	<packaging>eclipse-test-plugin</packaging>

	<build>
		<plugins>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>build-helper-maven-plugin</artifactId>
				<executions>
					<execution>
						<id>add-source</id>
						<phase>initialize</phase>
						<goals>
							<goal>add-source</goal>
						</goals>
						<configuration>
							<sources>
								<source>xtend-gen</source>
								<source>src-gen</source>
								<source>models</source>
							</sources>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<artifactId>maven-clean-plugin</artifactId>
				<configuration>
					<filesets>
						<fileset>
							<directory>xtend-gen</directory>
							<includes>
								<include>**</include>
							</includes>
						</fileset>
					</filesets>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.eclipse.xtend</groupId>
				<artifactId>xtend-maven-plugin</artifactId>
				<executions>
					<execution>
						<phase>generate-sources</phase>
						<goals>
							<goal>compile</goal>
							<!-- <goal>testCompile</goal> -->
						</goals>
						<configuration>
							<outputDirectory>${basedir}/xtend-gen</outputDirectory>
						</configuration>
					</execution>
				</executions>
			</plugin>
						<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-surefire-plugin</artifactId>
				<configuration>
					<includes>
						<include>**/*Test.class</include>
						<include>**/*Tests.class</include>
					</includes>
					<failIfNoTests>false</failIfNoTests>
					<showEclipseLog>true</showEclipseLog>
					<!-- <argLine>${ui.test.vmargs}</argLine> -->
					<bundleStartLevel>
						<bundle>
							<id>org.eclipse.osgi</id>
							<level>-1</level>
							<autoStart>true</autoStart>
						</bundle>
						<bundle>
							<id>org.eclipse.equinox.common</id>
							<level>1</level>
							<autoStart>true</autoStart>
						</bundle>
						<bundle>
							<id>org.eclipse.equinox.ds</id>
							<level>2</level>
							<autoStart>true</autoStart>
						</bundle>
						<bundle>
							<id>org.eclipse.equinox.log</id>
							<level>1</level>
							<autoStart>true</autoStart>
						</bundle>
						<bundle>
							<id>org.eclipse.osgi.services</id>
							<level>1</level>
							<autoStart>true</autoStart>
						</bundle>
						<bundle>
							<id>org.eclipse.osbp.dsl.entity.xtext.tests</id>
							<level>4</level>
							<autoStart>true</autoStart>
						</bundle>
					</bundleStartLevel>
					<dependencies>
						<!-- Plugins -->
						<dependency>
							<type>eclipse-plugin</type>
							<artifactId>org.eclipse.equinox.ds</artifactId>
							<version>0.0.0</version>
						</dependency>
						<dependency>
							<type>eclipse-plugin</type>
							<artifactId>org.eclipse.equinox.util</artifactId>
							<version>0.0.0</version>
						</dependency>
					</dependencies>

					<useUIHarness>false</useUIHarness>
					<useUIThread>false</useUIThread>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>
