<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
  
<suite name="TestNG JDK 1.5" verbose="1" parallel="false" thread-count="2">
  
  <test name="Nopackage">
    <groups>
      <run>
        <include name="nopackage"/>
      </run>
    </groups>
    <classes>
      <class name="NoPackageTest" />
    </classes>
  </test>
   
  <parameter name="first-name" value="Cedric" />
  
  <test name="Regression1" >
    <groups>
      <define name="evenodd">
        <include name="even" />
        <include name="odd" />
      </define>      
      <run>
        <exclude name="excludeThisGroup" />
      </run>
    </groups>
    
    <classes>
      <class name="test.parameters.ParameterSample" />
      <class name="test.parameters.ParameterTest" />
      <class name="test.Test1" />
      <class name="test.Test2" />
      <class name="test.CtorCalledOnce" />
      <class name="test.expectedexceptions.ExpectedExceptionsTest" />
      <class name="test.access.PrivateAccessConfigurationMethods" />
      <class name="test.expectedexceptions.WrappedExpectedException" />
    </classes>
  </test>
  
  <test name="Regression2">
    <groups>
      <run>
        <exclude name="broken" />
      </run>
    </groups>
    <classes>
      <class name="test.Test1" />
      <class name="test.MethodTest" />
      <class name="test.sample.AfterClassCalledAtEnd"/>
      <class name="test.GraphTest"/>
      <class name="test.configuration.ConfigurationTest"/>
      <class name="test.configuration.GroupsTest"/>
      <class name="test.configuration.ExternalConfigurationClass"/>
      <class name="test.privatemethod.PrivateMethodTest$PrivateMethodInnerTest"/>
      <class name="test.configuration.ReflectMethodParametrizedConfigurationMethodTest" />
      <class name="test.configuration.MethodCallOrderTest"/>
      <class name="test.multiple.TestMultiple"/>
      <class name="test.ClassConfigurations"/>
      <class name="test.alwaysrun.AlwaysRunTest"/>
      <class name="test.conffailure.ConfigurationFailure" />
      <class name="test.superclass.MainTest" />
      <class name="test.superclass.Test3" />
      <class name="test.failures.FailuresTest" />
      <class name="test.mannotation.MAnnotationSampleTest" />
      <class name="test.mannotation.MAnnotation2SampleTest" />
      <class name="test.thread.ThreadPoolSizeTest" />
      <class name="test.thread.SequentialTest" />
      <class name="test.thread.ParallelTestTest" />
      <class name="test.thread.FactoryTest" />
      <class name="test.simple.IncludedExcludedTest" />
      <class name="test.reports.ReportTest" />
      <class name="test.configuration.BeforeTestOrderingTest" />
      <class name="test.configuration.SuiteTest" />
      <class name="test.configuration.VerifySuiteTest" />
      <class name="test.annotationtransformer.AnnotationTransformerTest" />
      <class name="test.configuration.MultipleBeforeGroupTest" />
      <class name="test.configuration.BaseGroupsTest" />
    </classes>
  </test>
  
  <test name="Injection">
    <classes>
      <!--  Need to be in a <test> of its own -->
      <class name="test.inject.InjectTest" />
    </classes>
  </test>
	
  <test name="BeforeMethod">
    <classes>
      <class name="test.configuration.BeforeMethodTest" />
    </classes>      
  </test>

  <test name="Factory tests">
		<classes>
			<class name="test.factory.classconf.XClassOrderWithFactoryTest" />
		</classes>
	</test>
  
  <test name="Basic" >
    <classes>
      <class name="test.sample.Basic2" />
      <class name="test.sample.Basic1" />
      <class name="test.Misc" />
    </classes>
  </test>
  
  <test name="Exclusion">
    <groups>
      <run>
        <exclude name="excludeThisGroup" />
      </run>
    </groups>
    <classes>
      <class name="test.Test2" />
    </classes>
  </test>
  
  <test name="Dependents">
    <parameter name="foo" value="Cedric" />
    <classes>
      <class name="test.dependent.MissingGroupTest" />
      <class name="test.dependent.OrderMethodTest" />
      <class name="test.dependent.DependentTest" />
      <class name="test.dependent.SampleDependentMethods" />
      <class name="test.dependent.SampleDependentMethods2" />
      <class name="test.dependent.SampleDependentMethods3" />
      <class name="test.dependent.SampleDependentConfigurationMethods" />
      <class name="test.dependent.ClassDependsOnGroups"/>
      <class name="test.dependent.DependentAlwaysRunTest" />
      <class name="test.dependent.MultiGroupTest" />
      <class name="test.dependent.ImplicitGroupInclusionTest" />
      <class name="test.dependent.ClassWide1Test" />
      <class name="test.dependent.ClassWide2Test" />
      <class name="test.dependent.DepBugSampleTest" />
      <class name="test.dependent.DepBugVerifyTest" />
			<class name="test.dependent.DependsOnProtectedMethodTest" />
    </classes>      
  </test>
  
  <test name="Inheritance">
    <classes>
      <class name="test.SampleInheritance" />
      <class name="test.inheritance.ClassScopeTest" />
    </classes>
  </test>
  
  <!-- Test scopes -->  
  
  <parameter name="parameter" value="out" />

  <test name="Test outer scope">
    <groups>
      <run>
        <include name="outer-group" />
      </run>
    </groups>
    <classes>
      <class name="test.sample.Scope" />
    </classes>
  </test>
  
  <test name="Test inner scope">
    <parameter name="parameter" value="in" />
    <groups>
      <run>
        <include name="inner-group" />
      </run>
    </groups>
    <classes>
      <class name="test.sample.Scope" />
    </classes>
  </test>
    
  <test name="AfterClassCalledAtEnd">
    <classes>
      <class name="test.sample.AfterClassCalledAtEnd"/>
    </classes>
  </test>

  <test name="Triangle">
    <classes>
      <class name="test.triangle.Child1" />
      <class name="test.triangle.Child2" />
    </classes>
  </test>  

  <!-- note that CheckTriangePost must be run sequentially after Triangle-->
  <test name="CheckTrianglePost">
    <parameter name="expected-calls" value="2" />
    <classes>
      <class name="test.triangle.CheckCount"/>
    </classes>
  </test>
  
  <!-- Test that we can declare groups and dependents on classes -->
  
  <test name="Test class groups 1" >
    <classes>
      <class name="test.classgroup.Second" />
      <class name="test.classgroup.First" />
    </classes>
  </test>

    <test name="Test class groups 2" >
    <classes>
      <class name="test.classgroup.First" />
      <class name="test.classgroup.Second" />
    </classes>
  </test>
  
  <parameter name="factory-param" value="FactoryParam" />
  <test name="Factory">
    <classes>
      <class name="test.factory.FactoryTest" />
      <class name="test.factory.VerifyFactoryTest" />
      <class name="test.factory.FactoryInSeparateClass" />
      <class name="test.factory.Factory2Test" />
	  
      <class name="test.factory.FactoryWithInstanceInfoTest" />
      <class name="test.factory.VerifyFactoryWithInstanceInfoTest" />
      <class name="test.factory.TestClassAnnotationTest" />
      
      <class name="test.factory.FactoryWithDataProviderTest" />
    </classes>
  </test>

  <test name="TimeOut">
    <classes>
      <class name="test.timeout.TimeOutTest" />
    </classes>
  </test>
  
  <test name="InvocationCount">
    <parameter name="count" value="10" />
    <classes>
      <class name="test.InvocationAndSuccessPercentageTest" />
      <class name="test.invocationcount.FailedInvocationCountTest" />
      <class name="test.invocationcount.FirstAndLastTimeTest" />
    </classes>
  </test>

  <!-- Tests for included and excluded methods -->
  <test name="Method1">
    <classes>
        <class name="test.methods.SampleMethod1">
          <methods>
            <include name="shouldRun1" />
            <include name="shouldRun2" />
          </methods>
        </class>
          <class name="test.methods.VerifyMethod1" />
    </classes>
  </test>
  
  <test name="Method2">
    <classes>
        <class name="test.methods.SampleMethod1">
          <methods>
            <exclude name="shouldNotRun1" />
            <exclude name="shouldNotRun2" />
          </methods>
        </class>
        <class name="test.methods.VerifyMethod1" />
    </classes>
  </test>
  
  <test name="Method3">
    <classes>
        <class name="test.methods.SampleMethod1">
          <methods>
            <exclude name=".*Not.*" />
          </methods>
        </class>
        <class name="test.methods.VerifyMethod1" />
    </classes>
  </test>

  <test name="Object factory">
    <classes>
      <class name="test.objectfactory.CustomFactoryTest" />
    </classes>
  </test>
  
  <!-- Test parameters for constructors -->  
  <parameter name="string" value="Cedric" />
  <parameter name="int" value="42" />
  <parameter name="boolean" value="true" />
  <parameter name="byte" value="43" />
  <parameter name="char" value="c" />
  <parameter name="double" value="44.0" />
  <parameter name="float" value="45.0" />
  <parameter name="long" value="46" />
  <parameter name="short" value="47" />

  <test name="Parameters for constructors">
    <classes>
      <class name="test.ParameterConstructorTest" />
    </classes>
  </test>
  
  <test name="Excluded methods" >
    <groups>
      <run>
        <include name="group1" />
        <include name="group2" />
      </run>        
    </groups>
    <classes>
      <class name="test.Exclude">
		<methods>
          <exclude name="excluded1" />
          <exclude name="excluded2" />
		</methods>
      </class>
    </classes>
  </test>  
  
  <test name="Parameters in init 1">
    <parameter name="param" value="value1"/>
    <classes>
      <class name="test.configuration.ConfigurationWithParameters"/>
    </classes>
  </test>

  <test name="Parameters in init 2">
  <parameter name="param" value="value2"/>
    <classes>
      <class name="test.configuration.ConfigurationWithParameters"/>
    </classes>
  </test>
  
  <test name="Individual method">
    <classes>
      <class name="test.IndividualMethodsTest">
        <methods>
          <include name="testMethod"/>
        </methods>
      </class>
    </classes>
  </test>

  <test name="Method inheritance">
    <classes>
      <class name="test.inheritance.DChild_2" />
      <class name="test.inheritance.VerifyTest" />	  
    </classes>
  </test>

  <test name="Method selectors">
    <classes>
      <class name="test.methodselectors.MethodSelectorTest" />
      <class name="test.methodselectors.BeanShellTest" />
    </classes>
  </test>

  <test name="Test order invocation">
    <classes>
      <class name="test.interleavedorder.TestChild1" />
      <class name="test.interleavedorder.TestChild2" />
      <class name="test.interleavedorder.InterleavedInvocationTest" />
    </classes>
  </test>

  <test name="DataProvider">
    <classes>
      <class name="test.dataprovider.Sample1Test" />
      <class name="test.dataprovider.IterableTest" />
      <class name="test.dataprovider.ConfigurationAndDataProvidersTest" />
      <class name="test.dataprovider.BooleanTest" />
      <class name="test.dataprovider.MethodTest"/>
      <class name="test.dataprovider.StaticDataProviderSampleTest" />
      <class name="test.dataprovider.UnnamedDataProviderTest" />
      <class name="test.dataprovider.TestContextTest" />
      <class name="test.dataprovider.FailingDataProviderTest" />
      <class name="test.dataprovider.DataProviderAsTest" />
      <class name="test.dataprovider.TestInstanceFactory" />
      <class name="test.dataprovider.FailedDataProviderTest" />
    </classes>
  </test>
	
  <test name="UniqueSuite">
    <classes>
      <class name="test.uniquesuite.TestBefore1" />
      <class name="test.uniquesuite.TestBefore2" />
      <class name="test.uniquesuite.TestAfter" />
    </classes>
  </test>

  <test name="InheritGroups">
    <groups>
      <run>
        <include name="group1" />
      </run>
    </groups>
    <classes>
      <class name="test.configuration.ConfigurationInheritGroupsSampleTest" />
    </classes>
  </test>

<!--
  <test name="Distributed">
    <classes>
      <class name="test.distributed.DistributedTest" />
    </classes>
  </test>  
-->

  <test name="Nested" >
    <groups>
      <run>
        <include name="unittest" />
      </run>        
    </groups>

	<packages>
		<package name="test.nested.*"/>
	</packages>
  </test>

  <test name="Hookable" >
    <classes>
      <class name="test.hook.HookSuccessTest" />
      <class name="test.hook.HookFailureTest" />
    </classes>
  </test>
  
  <test name="BeforeGroups-AfterGroups-1" >
    <classes>
	    <class name="test.configuration.ConfigurationGroups1SampleTest" />
	    <class name="test.configuration.ConfigurationGroups2SampleTest" />
	    <class name="test.configuration.ConfigurationGroups3SampleTest" />
	    <class name="test.configuration.ConfigurationGroups4SampleTest" />
	    <class name="test.configuration.ConfigurationGroups5SampleTest" />
	    <class name="test.configuration.ConfigurationGroups6SampleTest" />
	    <class name="test.configuration.ConfigurationGroups7SampleTest" />
    </classes>
  </test>
  
  <test name="BeforeGroups-AfterGroups-2" >
    <groups>
      <run>
        <include name="A" />
        <include name="B" />
      </run>
    </groups>
    <classes>
	    <class name="test.configuration.ConfigurationGroups8SampleTest" />
    </classes>
  </test>
  
  <test name="JUnit">
    <classes>
      <class name="test.JUnitTest1" />
      <class name="test.CommandLineTest"/>
    </classes>
  </test>
    
  <test name="JUnitConverter">
    <parameter name="source-directory" value="test/src/test/converter" />
    <classes>
      <class name="test.converter.JUnitConverterTest" />
    </classes>
  </test>

  <test name="AnnotationConverter">
    <parameter name="source-directory" value="test/src/test/sample" />
    <classes>
      <class name="test.converter.AnnotationConverterTest" />
    </classes>
  </test>
  
  <!-- TestNG ant task related tests -->
  <test name="Ant-ClassFileResolution" >
    <classes>
        <class name="test.ant.TestCommandLineArgs" />
    </classes>
  </test>
 
  <!-- Group ordering 1 --> 
  <test name="Class Run">
    <classes>
      <class name="test.regression.groupsordering.A" />
      <class name="test.regression.groupsordering.B" />
    </classes>
  </test>
	
  <!-- Group ordering 2 --> 
  <test name="Groups Run">
    <groups>
      <run>
        <include name="a" />
      </run>
    </groups>
    <classes>
      <class name="test.regression.groupsordering.A" />
      <class name="test.regression.groupsordering.B" />
    </classes>
  </test>
  
  <test name="External group invocation">
		<groups>
			<run>
				<include name="a" />
			</run>
		</groups>
		<classes>
			<class name="test.groupinvocation.GroupConfiguration" />
			<class name="test.groupinvocation.DummyTest" />
		</classes>
  </test>
	
	<test name="SkipExceptions">
		<classes>
			<class name="test.skipex.SkippedExceptionTest" />
		</classes>
	</test>

  <test name="RetryAnalyzer">
    <classes>
      <class name="test.retryAnalyzer.RetryAnalyzerTest" />
    </classes>
  </test>

  <test name="MethodInterceptor">
    <classes>
      <class name="test.methodinterceptors.MethodInterceptorTest" />
    </classes>
  </test>
</suite>
