<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright (c) 2012, 2014 Eclipse Foundation and others.
  All rights reserved. This program and the accompanying materials
  are made available under the terms of the Eclipse Distribution License v1.0
  which accompanies this distribution, and is available at
  http://www.eclipse.org/org/documents/edl-v10.php
 
  Contributors:
    Thanh Ha (Eclipse Foundation) - initial implementation
-->

<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.webtools.webservices</groupId>
    <artifactId>org.eclipse.webtools.webservices</artifactId>
    <version>3.6.0-SNAPSHOT</version>
    <relativePath>../../</relativePath>
  </parent>

  <groupId>org.eclipse.webtools.webservices</groupId>
  <artifactId>org.eclipse.wst.wsdl.tests</artifactId>
  <version>1.0.550-SNAPSHOT</version>
  <packaging>eclipse-test-plugin</packaging>

  <properties>
    <testSuite>${project.artifactId}</testSuite>
    <testClass>org.eclipse.wst.wsdl.tests.AllTestCases</testClass>
  </properties>
  
  <build>
    <plugins>
      <plugin>
        <groupId>org.eclipse.tycho</groupId>
        <artifactId>tycho-surefire-plugin</artifactId>
        <version>${tycho.version}</version>
        <configuration>
          <dependencies>
            <dependency>
              <type>p2-installable-unit</type>
              <artifactId>org.eclipse.emf.ecore.xmi</artifactId>
              <version>0.0.0</version>
            </dependency>
            <dependency>
              <type>p2-installable-unit</type>
              <artifactId>com.ibm.icu</artifactId>
              <version>0.0.0</version>
            </dependency>
          </dependencies>        
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>
