<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright (c) 2012, 2013 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</groupId>
    <artifactId>wtp-parent</artifactId>
    <version>3.6.0-SNAPSHOT</version>
    <relativePath>../wtp-parent</relativePath>
  </parent>

  <groupId>org.eclipse.webtools.servertools</groupId>
  <artifactId>org.eclipse.webtools.servertools.tests</artifactId>
  <version>3.6.0-SNAPSHOT</version>
  <packaging>pom</packaging>

  <modules>
    <module>tests/org.eclipse.jst.server.core.tests</module>
    <module>tests/org.eclipse.jst.server.generic.tests</module>
    <module>tests/org.eclipse.jst.server.tomcat.core.tests</module>
    <module>tests/org.eclipse.jst.server.tomcat.ui.tests</module>
    <module>tests/org.eclipse.jst.server.ui.tests</module>
    <module>tests/org.eclipse.wst.internet.monitor.core.tests</module>
    <module>tests/org.eclipse.wst.internet.monitor.ui.tests</module>
    <module>tests/org.eclipse.wst.server.core.tests</module>
    <module>tests/org.eclipse.wst.server.http.core.tests</module>
    <module>tests/org.eclipse.wst.server.ui.tests</module>
    <module>tests/org.eclipse.wst.server.util.tests</module>
  </modules>
</project>
