<?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.jsf</groupId>
  <artifactId>org.eclipse.webtools.jsf.tests</artifactId>
  <version>3.6.0-SNAPSHOT</version>
  <packaging>pom</packaging>

  <properties>
    <tycho.scmUrl>scm:git:git://git.eclipse.org/gitroot/jsf/webtools.jsf.tests.git</tycho.scmUrl>
  </properties>

  <modules>
    <module>jsf/features/org.eclipse.jst.jsf.tests.feature</module>
    <module>jsf/tests/org.eclipse.jst.jsf.common.runtime.tests</module>
    <module>jsf/tests/org.eclipse.jst.jsf.contentassist.tests</module>
    <module>jsf/tests/org.eclipse.jst.jsf.context.symbol.tests</module>
    <module>jsf/tests/org.eclipse.jst.jsf.core.tests</module>
    <module>jsf/tests/org.eclipse.jst.jsf.designtime.tests</module>
    <module>jsf/tests/org.eclipse.jst.jsf.facesconfig.tests</module>
    <module>jsf/tests/org.eclipse.jst.jsf.facesconfig.ui.test</module>
    <module>jsf/tests/org.eclipse.jst.jsf.metadataprocessingtests2</module>
    <module>jsf/tests/org.eclipse.jst.jsf.metadata.tests</module>
    <module>jsf/tests/org.eclipse.jst.jsf.test.util</module>
    <module>jsf/tests/org.eclipse.jst.jsf.ui.tests</module>
    <module>jsf/tests/org.eclipse.jst.jsf.validation.el.tests</module>
    <module>jsf/tests/org.eclipse.jst.pagedesigner.tests</module>
  </modules>
</project>
