<?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.emf.emfstore</groupId>
    <artifactId>emfstore-tests-parent</artifactId>
    <version>1.7.0-SNAPSHOT</version>
    <relativePath>../../releng/org.eclipse.emf.emfstore.releng.tests</relativePath>
  </parent>

  <groupId>org.eclipse.emf.emfstore</groupId>
  <artifactId>org.eclipse.emf.emfstore.client.ui.test</artifactId>
  <version>1.7.0-SNAPSHOT</version>
  <packaging>eclipse-test-plugin</packaging>

    <build>
        <plugins>
            <plugin>
                <groupId>org.eclipse.tycho</groupId>
                <artifactId>tycho-surefire-plugin</artifactId>
                <version>${tycho-version}</version>

                <goals>
                    <goal>test</goal>
                </goals>
                <configuration>
                    <testSuite>org.eclipse.emf.emfstore.client.ui.test</testSuite>
                    <testClass>org.eclipse.emf.emfstore.client.ui.test.AllClientUITests</testClass>
                    <useUIHarness>true</useUIHarness>
                    <useUIThread>false</useUIThread>
                    <argLine>${tycho.testArgLine} -Dosgi.requiredJavaVersion=1.5 -Xms40m -Xmx512m
                    </argLine>
                    <testFailureIgnore>true</testFailureIgnore>
                    <!-- Plugins to be loaded to the osgi runtime -->
                    <dependencies>
                        <dependency>
                            <type>eclipse-plugin</type>
                            <artifactId>org.eclipse.emf.emfstore.client.model.edit</artifactId>
                            <version>0.0.0</version>
                        </dependency>
                        <dependency>
                            <type>eclipse-plugin</type>
                            <artifactId>org.eclipse.emf.emfstore.client.test</artifactId>
                            <version>0.0.0</version>
                        </dependency>
                        <dependency>
                            <type>eclipse-plugin</type>
                            <artifactId>org.eclipse.emf.emfstore.client</artifactId>
                            <version>0.0.0</version>
                        </dependency>
                        <dependency>
                            <type>eclipse-plugin</type>
                            <artifactId>org.eclipse.emf.emfstore.client.ui</artifactId>
                            <version>0.0.0</version>
                        </dependency>
                        <dependency>
                            <type>eclipse-plugin</type>
                            <artifactId>org.eclipse.emf.emfstore.common.model.edit</artifactId>
                            <version>0.0.0</version>
                        </dependency>
                        <dependency>
                            <type>eclipse-plugin</type>
                            <artifactId>org.eclipse.emf.emfstore.common.model</artifactId>
                            <version>0.0.0</version>
                        </dependency>
                        <dependency>
                            <type>eclipse-plugin</type>
                            <artifactId>org.eclipse.emf.emfstore.common</artifactId>
                            <version>0.0.0</version>
                        </dependency>
                        <dependency>
                            <type>eclipse-plugin</type>
                            <artifactId>org.eclipse.emf.emfstore.modelmutator</artifactId>
                            <version>0.0.0</version>
                        </dependency>
                        <dependency>
                            <type>eclipse-plugin</type>
                            <artifactId>org.eclipse.emf.emfstore.examplemodel.edit</artifactId>
                            <version>0.0.0</version>
                        </dependency>
                        <dependency>
                            <type>eclipse-plugin</type>
                            <artifactId>org.eclipse.emf.emfstore.examplemodel</artifactId>
                            <version>0.0.0</version>
                        </dependency>
                        <dependency>
                            <type>eclipse-plugin</type>
                            <artifactId>org.eclipse.emf.emfstore.migration</artifactId>
                            <version>0.0.0</version>
                        </dependency>
                        <dependency>
                            <type>eclipse-plugin</type>
                            <artifactId>org.eclipse.emf.emfstore.server.model.edit</artifactId>
                            <version>0.0.0</version>
                        </dependency>
                        <dependency>
                            <type>eclipse-plugin</type>
                            <artifactId>org.eclipse.emf.emfstore.server.model</artifactId>
                            <version>0.0.0</version>
                        </dependency>
                        <dependency>
                            <type>eclipse-plugin</type>
                            <artifactId>org.eclipse.emf.emfstore.server</artifactId>
                            <version>0.0.0</version>
                        </dependency>
                    </dependencies>

                    <bundleStartLevel>
                        <bundle>
                            <id>org.eclipse.emf.emfstore.client.model.edit</id>
                            <level>4</level>
                            <autoStart>false</autoStart>
                        </bundle>
                        <bundle>
                            <id>org.eclipse.emf.emfstore.client.test</id>
                            <level>4</level>
                            <autoStart>false</autoStart>
                        </bundle>
                        <bundle>
                            <id>org.eclipse.emf.emfstore.client</id>
                            <level>4</level>
                            <autoStart>false</autoStart>
                        </bundle>
                        <bundle>
                            <id>org.eclipse.emf.emfstore.client.ui</id>
                            <level>4</level>
                            <autoStart>false</autoStart>
                        </bundle>
                        <bundle>
                            <id>org.eclipse.emf.emfstore.common.model.edit</id>
                            <level>4</level>
                            <autoStart>false</autoStart>
                        </bundle>
                        <bundle>
                            <id>org.eclipse.emf.emfstore.common.model</id>
                            <level>4</level>
                            <autoStart>false</autoStart>
                        </bundle>
                        <bundle>
                            <id>org.eclipse.emf.emfstore.common</id>
                            <level>4</level>
                            <autoStart>false</autoStart>
                        </bundle>
                        <bundle>
                            <id>org.eclipse.emf.emfstore.modelmutator</id>
                            <level>4</level>
                            <autoStart>false</autoStart>
                        </bundle>
                        <bundle>
                            <id>org.eclipse.emf.emfstore.examplemodel.edit</id>
                            <level>4</level>
                            <autoStart>false</autoStart>
                        </bundle>
                        <bundle>
                            <id>org.eclipse.emf.emfstore.examplemodel</id>
                            <level>4</level>
                            <autoStart>false</autoStart>
                        </bundle>
                        <bundle>
                            <id>org.eclipse.emf.emfstore.migration</id>
                            <level>4</level>
                            <autoStart>false</autoStart>
                        </bundle>
                        <bundle>
                            <id>org.eclipse.emf.emfstore.server.model.edit</id>
                            <level>4</level>
                            <autoStart>false</autoStart>
                        </bundle>
                        <bundle>
                            <id>org.eclipse.emf.emfstore.server.model</id>
                            <level>4</level>
                            <autoStart>false</autoStart>
                        </bundle>
                        <bundle>
                            <id>org.eclipse.emf.emfstore.server</id>
                            <level>4</level>
                            <autoStart>false</autoStart>
                        </bundle>
                    </bundleStartLevel>
                </configuration>

                <!-- More suites can be added here -->
                <executions>
                    <execution>
                        <id>TransactionalEditingDomainTests</id>
                        <phase>integration-test</phase>
                        <goals>
                            <goal>test</goal>
                        </goals>
                        <configuration>
                            <reportsDirectory>${project.build.directory}/surefire-reports/transactional</reportsDirectory>
                            <testSuite>org.eclipse.emf.emfstore.client.api.test</testSuite>
                            <testClass>org.eclipse.emf.emfstore.client.api.test.AllAPITests</testClass>
                            <useUIHarness>true</useUIHarness>
                            <useUIThread>false</useUIThread>
                            <argLine>${tycho.testArgLine} -Dosgi.requiredJavaVersion=1.5 -Xms40m -Xmx512m
                            </argLine>
                            <testFailureIgnore>true</testFailureIgnore>

                            <dependencies>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.client.model.edit</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.client.test</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.test.model</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.test.model.edit</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.client.transaction</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
								<dependency>
									<type>eclipse-plugin</type>
									<artifactId>org.eclipse.emf.emfstore.client.ui.transaction</artifactId>
									<version>0.0.0</version>
								</dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.client.changetracking.test</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.client</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.client.ui</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.common.model.edit</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.common.model</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.common</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.modelmutator</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.examplemodel.edit</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.examplemodel</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.migration</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.server.model.edit</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.server.model</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>p
                                    <artifactId>org.eclipse.emf.emfstore.server</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                            </dependencies>

                            <bundleStartLevel>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.client.model.edit</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.client.test</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.client.transaction</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.client</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.client.ui</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.client.changetracking.test</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.common.model.edit</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.common.model</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.common</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.modelmutator</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.examplemodel.edit</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.examplemodel</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.migration</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.server.model.edit</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.server.model</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.server</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                            </bundleStartLevel>
                        </configuration>
                    </execution>
                    
                    <execution>
                        <id>InMemoryChangePackageTest</id>
                        <phase>integration-test</phase>
                        <goals>
                            <goal>test</goal>
                        </goals>
                        <configuration>
                            <reportsDirectory>${project.build.directory}/surefire-reports/inMemoryChangePackage</reportsDirectory>
                            <testSuite>org.eclipse.emf.emfstore.client.api.test</testSuite>
                            <testClass>org.eclipse.emf.emfstore.client.api.test.AllAPITests</testClass>
                            <useUIHarness>true</useUIHarness>
                            <useUIThread>false</useUIThread>
                            <argLine>${tycho.testArgLine} -Dosgi.requiredJavaVersion=1.5 -Demfstore.inMemoryChangePackage=true -Xms40m -Xmx512m
                            </argLine>
                            <testFailureIgnore>true</testFailureIgnore>

                            <dependencies>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.client.model.edit</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.client.test</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.test.model</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.test.model.edit</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.client.transaction</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
								<dependency>
									<type>eclipse-plugin</type>
									<artifactId>org.eclipse.emf.emfstore.client.ui.transaction</artifactId>
									<version>0.0.0</version>
								</dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.client.changetracking.test</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.client</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.client.ui</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.common.model.edit</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.common.model</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.common</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.modelmutator</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.examplemodel.edit</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.examplemodel</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.migration</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.server.model.edit</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>
                                    <artifactId>org.eclipse.emf.emfstore.server.model</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                                <dependency>
                                    <type>eclipse-plugin</type>p
                                    <artifactId>org.eclipse.emf.emfstore.server</artifactId>
                                    <version>0.0.0</version>
                                </dependency>
                            </dependencies>

                            <bundleStartLevel>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.client.model.edit</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.client.test</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.client.transaction</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.client</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.client.ui</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.client.changetracking.test</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.common.model.edit</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.common.model</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.common</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.modelmutator</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.examplemodel.edit</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.examplemodel</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.migration</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.server.model.edit</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.server.model</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                                <bundle>
                                    <id>org.eclipse.emf.emfstore.server</id>
                                    <level>4</level>
                                    <autoStart>false</autoStart>
                                </bundle>
                            </bundleStartLevel>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

</project>
