<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>

<!--
/*
 * Copyright (c) 2003, 2004 IBM Corporation and others.
 * All rights reserved.   This program and the accompanying materials
 * are made available under the terms of the Common Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/cpl-v10.html
 * 
 * Contributors: 
 *   IBM - Initial API and implementation
 *
 * $Id: feature.xml,v 1.2.2.1.2.1 2004/10/01 14:55:29 khussey Exp $
 */
-->

<feature
      id="org.eclipse.uml2.tests"
      label="%feature-label"
      version="1.0.1"
      provider-name="%feature.provider-name"
      image="eclipse_update_120.jpg">

   <description>
      %description
   </description>

   <license url="%license.url">
      %license
   </license>

   <url>
      <update label="%update.label" url="http://update.eclipse.org/updates"/>
   </url>

   <requires>
      <import plugin="org.eclipse.emf.ecore.edit"/>
      <import plugin="org.eclipse.emf.ecore.xmi"/>
      <import plugin="org.eclipse.uml2"/>
      <import plugin="org.eclipse.uml2.edit"/>
      <import plugin="org.junit"/>
   </requires>

   <plugin
         id="org.eclipse.uml2.tests"
         download-size="0"
         install-size="0"
         version="1.0.1"/>

   <plugin
         id="org.eclipse.uml2.edit.tests"
         download-size="0"
         install-size="0"
         version="1.0.0"/>

   <plugin
         id="org.eclipse.test"
         download-size="0"
         install-size="0"
         version="2.1.0"/>

   <plugin
         id="org.eclipse.ant.optional.junit"
         download-size="0"
         install-size="0"
         version="2.1.0"
         fragment="true"/>

</feature>
