<?xml version="1.0" encoding="UTF-8"?>
<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
	license agreements. See the NOTICE file distributed with this work for additional
	information regarding copyright ownership. The ASF licenses this file to
	you under the Apache License, Version 2.0 (the "License"); you may not use
	this file except in compliance with the License. You may obtain a copy of
	the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required
	by applicable law or agreed to in writing, software distributed under the
	License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
	OF ANY KIND, either express or implied. See the License for the specific
	language governing permissions and limitations under the License. -->
<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/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<parent>
		<groupId>org.apache.isis.core</groupId>
		<artifactId>isis-core</artifactId>
		<version>2.0.0-SNAPSHOT</version>
		<relativePath>../core/pom.xml</relativePath>
	</parent>

	<groupId>org.apache.isis.testing</groupId>
	<artifactId>isis-testing</artifactId>

	<name>Apache Isis Testing</name>
	<description>
        A library of utilities, mini-frameworks and tools for prototyping and testing Apache Isis applications.
    </description>

	<packaging>pom</packaging>

	<properties>
		<maven.compiler.release>11</maven.compiler.release>

		<jar-plugin.automaticModuleName>org.apache.isis.testing</jar-plugin.automaticModuleName>
		<git-plugin.propertiesDir>org/apache/isis/testing</git-plugin.propertiesDir>
	</properties>

	<build>
		<resources>
			<resource>
				<filtering>true</filtering>
				<directory>src/main/resources</directory>
				<includes>
					<include>**</include>
				</includes>
			</resource>
			<resource>
				<filtering>false</filtering>
				<directory>src/main/java</directory>
				<includes>
					<include>**</include>
				</includes>
				<excludes>
					<exclude>**/*.java</exclude>
				</excludes>
			</resource>
		</resources>
	</build>

	<dependencyManagement>
		<dependencies>

			<!-- this module -->

			<dependency>
				<groupId>org.apache.isis.testing</groupId>
				<artifactId>isis-testing-archtestsupport</artifactId>
				<version>2.0.0-SNAPSHOT</version>
			</dependency>
			<dependency>
				<groupId>org.apache.isis.testing</groupId>
				<artifactId>isis-testing-archtestsupport-applib</artifactId>
				<version>2.0.0-SNAPSHOT</version>
			</dependency>

			<dependency>
				<groupId>org.apache.isis.testing</groupId>
				<artifactId>isis-testing-fakedata</artifactId>
				<version>2.0.0-SNAPSHOT</version>
			</dependency>
			<dependency>
				<groupId>org.apache.isis.testing</groupId>
				<artifactId>isis-testing-fakedata-applib</artifactId>
				<version>2.0.0-SNAPSHOT</version>
			</dependency>
			<dependency>
				<groupId>org.apache.isis.testing</groupId>
				<artifactId>isis-testing-fakedata-fixtures</artifactId>
				<version>2.0.0-SNAPSHOT</version>
			</dependency>
			<dependency>
				<groupId>org.apache.isis.testing</groupId>
				<artifactId>isis-testing-fakedata-integtests</artifactId>
				<version>2.0.0-SNAPSHOT</version>
			</dependency>

			<dependency>
				<groupId>org.apache.isis.testing</groupId>
				<artifactId>isis-testing-fixtures</artifactId>
				<version>2.0.0-SNAPSHOT</version>
				<type>pom</type>
			</dependency>
			<dependency>
				<groupId>org.apache.isis.testing</groupId>
				<artifactId>isis-testing-fixtures-applib</artifactId>
				<version>2.0.0-SNAPSHOT</version>
			</dependency>

			<dependency>
				<groupId>org.apache.isis.testing</groupId>
				<artifactId>isis-testing-h2console</artifactId>
				<version>2.0.0-SNAPSHOT</version>
			</dependency>
			<dependency>
				<groupId>org.apache.isis.testing</groupId>
				<artifactId>isis-testing-h2console-ui</artifactId>
				<version>2.0.0-SNAPSHOT</version>
			</dependency>

			<dependency>
				<groupId>org.apache.isis.testing</groupId>
				<artifactId>isis-testing-integtestsupport</artifactId>
				<version>2.0.0-SNAPSHOT</version>
			</dependency>
			<dependency>
				<groupId>org.apache.isis.testing</groupId>
				<artifactId>isis-testing-integtestsupport-applib</artifactId>
				<version>2.0.0-SNAPSHOT</version>
			</dependency>

			<dependency>
				<groupId>org.apache.isis.testing</groupId>
				<artifactId>isis-testing-hsqldbmgr-ui</artifactId>
				<version>2.0.0-SNAPSHOT</version>
			</dependency>

			<dependency>
				<groupId>org.apache.isis.testing</groupId>
				<artifactId>isis-testing-specsupport</artifactId>
				<version>2.0.0-SNAPSHOT</version>
			</dependency>
			<dependency>
				<groupId>org.apache.isis.testing</groupId>
				<artifactId>isis-testing-specsupport-applib</artifactId>
				<version>2.0.0-SNAPSHOT</version>
			</dependency>

			<dependency>
				<groupId>org.apache.isis.testing</groupId>
				<artifactId>isis-testing-unittestsupport</artifactId>
				<version>2.0.0-SNAPSHOT</version>
			</dependency>
			<dependency>
				<groupId>org.apache.isis.testing</groupId>
				<artifactId>isis-testing-unittestsupport-applib</artifactId>
				<version>2.0.0-SNAPSHOT</version>
			</dependency>

		</dependencies>
	</dependencyManagement>


	<modules>
		<module>archtestsupport</module>
		<module>fakedata</module>
		<module>fixtures</module>
		<module>h2console</module>
		<module>hsqldbmgr</module>
		<module>specsupport</module>
		<module>integtestsupport</module>
		<module>unittestsupport</module>
	</modules>

	<profiles>
		<profile>
			<id>isis-app-starter-datanucleusenhance</id>
			<activation>
				<file>
					<exists>${basedir}/logging-dn-enhance.properties</exists>
				</file>
			</activation>
			<properties>
				<datanucleus-maven-plugin.log4jConfiguration>${basedir}/logging-dn-enhance.properties</datanucleus-maven-plugin.log4jConfiguration>
				<datanucleus-maven-plugin.verbose>true</datanucleus-maven-plugin.verbose>
				<datanucleus-maven-plugin.fork>false</datanucleus-maven-plugin.fork>
			</properties>
			<build>
				<plugins>
					<plugin>
						<groupId>org.datanucleus</groupId>
						<artifactId>datanucleus-maven-plugin</artifactId>
						<version>${datanucleus-maven-plugin.version}</version>
						<configuration>
							<fork>${datanucleus-maven-plugin.fork}</fork>
							<log4jConfiguration>${datanucleus-maven-plugin.log4jConfiguration}</log4jConfiguration>
							<verbose>${datanucleus-maven-plugin.verbose}</verbose>
						</configuration>
						<executions>
							<execution>
								<id>process-classes</id>
								<phase>process-classes</phase>
								<goals>
									<goal>enhance</goal>
								</goals>
							</execution>
							<execution>
								<id>process-test-classes</id>
								<phase>process-test-classes</phase>
								<goals>
									<goal>test-enhance</goal>
								</goals>
								<configuration>
									<metadataDirectory>${project.build.testOutputDirectory}</metadataDirectory>
								</configuration>
							</execution>
						</executions>
						<dependencies>
							<dependency>
								<groupId>org.datanucleus</groupId>
								<artifactId>datanucleus-core</artifactId>
								<version>${datanucleus-core.version}</version>
							</dependency>
							<dependency>
								<groupId>org.datanucleus</groupId>
								<artifactId>datanucleus-api-jdo</artifactId>
								<version>${datanucleus-api-jdo.version}</version>
							</dependency>
							<dependency>
								<groupId>org.datanucleus</groupId>
								<artifactId>datanucleus-jodatime</artifactId>
								<version>${datanucleus-jodatime.version}</version>
							</dependency>
						</dependencies>
					</plugin>
				</plugins>
			</build>
		</profile>

	</profiles>

</project>


