<?xml version="1.0" encoding="UTF-8"?>
<plugin
   id="org.eclipse.team.tests.core"
   name="Eclipse Team Core Tests"
   version="3.0.0"
   provider-name="Eclipse.org"
   class="">

   <runtime>
      <library name="teamtests.jar">
         <export name="*"/>
         <packages prefixes="org.eclipse.team.tests.core"/>
      </library>
   </runtime>
   <requires>
      <import plugin="org.eclipse.core.tests.harness"/>
      <import plugin="org.eclipse.core.resources"/>
      <import plugin="org.eclipse.core.boot"/>
      <import plugin="org.eclipse.team.core"/>
      <import plugin="org.eclipse.team.cvs.core"/>
      <import plugin="org.eclipse.team.ui"/>
      <import plugin="org.eclipse.team.cvs.ui"/>
      <import plugin="org.eclipse.compare"/>
      <import plugin="org.eclipse.ui"/>
      <import plugin="org.junit"/>
   </requires>


   <extension
         point="org.eclipse.core.tests.harness.tests">
      <test
            id="team.all">
         <run
               class="org.eclipse.team.tests.core.RepositoryProviderTests">
         </run>
      </test>
   </extension>
   <extension
         point="org.eclipse.core.tests.harness.tests">
      <test
            id="target.all">
         <run
               class="org.eclipse.team.tests.core.TargetProviderTests">
         </run>
      </test>
   </extension>
   <extension
         point="org.eclipse.core.tests.harness.tests">
      <test
            id="team.ftp">
         <run
               class="org.eclipse.team.tests.ftp.ClientTest">
         </run>
      </test>
   </extension>
<!-- *************** Repository Providers **************** -->
   <extension
         point="org.eclipse.team.core.repository">
      <repository
            class="org.eclipse.team.tests.core.RepositoryProviderBic"
            id="org.eclipse.team.tests.core.bic-provider">
      </repository>
   </extension>
   <extension
         point="org.eclipse.team.core.repository">
      <repository
            class="org.eclipse.team.tests.core.RepositoryProviderNaish"
            id="org.eclipse.team.tests.core.naish-provider">
      </repository>
   </extension>
<!-- *************** Bad provider that is not registered **************** 
	<extension
         point="org.eclipse.team.core.repository">
      <repository
      		id="org.eclipse.team.tests.core.other"
            class="org.eclipse.team.tests.core.RepositoryProviderOtherSport">
      </repository>
	</extension>
	-->
   <extension
         point="org.eclipse.team.core.repository">
      <repository
            class="org.eclipse.team.tests.core.RepositoryProviderWithLinking"
            id="org.eclipse.team.tests.core.linking">
      </repository>
   </extension>

</plugin>
