anchor.diff:      property Name : string read FName;
     end;
   
  -  ///  A TestFixture decorated with this attribute will be tested using it's own thread
  -  ///  This can speed up unit testing when fixtures do not compete for resources and the
  -  ///  test machine has enough cores to service the tests.
  -  ///  NOTE - CURRENTLY PLANNED BUT NOT IMPLEMENTED!!!
  +
  +  ///	<summary>
  +  ///	  A TestFixture decorated with this attribute will be tested using it's
  +  ///	  own thread. This can speed up unit testing when fixtures do not
  +  ///	  compete for resources and the test machine has enough cores to service
  +  ///	  the tests.
  +  ///	</summary>
  +  ///	<remarks>
  +  ///	  NOTE - CURRENTLY PLANNED BUT NOT IMPLEMENTED!!!
  +  ///	</remarks>
     TestInOwnThreadAttribute = class(TCustomAttribute);
   
  -  ///  A method marked with this attribute will run before any tests in.
  -  ///  Note that if more than one method is decorated with this attribute
  -  ///  the first method found will be executed (notrecommended!).
  +  ///	<summary>
  +  ///	  A method marked with this attribute will run before any tests in. Note
  +  ///	  that if more than one method is decorated with this attributethe first
  +  ///	  method found will be executed (not recommended!).
  +  ///	</summary>
     SetupFixtureAttribute = class(TCustomAttribute)
     end;
   
   
  -  ///  A method on a test fixture decorated with this attribute will
  -  ///  run before each test method is run. Note that if more than one method
  -  ///  is decorated with this attribute the first method found will be executed (not
  -  ///  recommended!).
  +  ///	<summary>
  +  ///	  A method on a test fixture decorated with this attribute will run
  +  ///	  before each test method is run. Note that if more than one method is
  +  ///	  decorated with this attribute the first method found will be executed
  +  ///	  (not recommended!).
  +  ///	</summary>
     SetupAttribute = class(TCustomAttribute)
     end;
   
  -  ///  A method on a test fixture class decorated with this attribute will be
  -  ///  run after each test method is run. Note that if more than one method
  -  ///  is decorated with this attribute the first method found will be executed (not
  -  ///  recommended!).
  +
  +  ///	<summary>
  +  ///	  A method on a test fixture class decorated with this attribute will be
  +  ///	  run after each test method is run. Note that if more than one method is
  +  ///	  decorated with this attribute the first method found will be executed
  +  ///	  (not recommended!).
  +  ///	</summary>
     TearDownAttribute = class(TCustomAttribute)
     end;
   
  -  ///  A method marked with this attribute can contain a teardown method that
  -  ///  will be run after each all tests in the fixture have executed.
  -  ///  Note that if more than one method is decorated with this attribute the
  -  //   first method found will be executed (not recommended!).
  +
  +  ///	<summary>
  +  ///	  A method marked with this attribute can contain a teardown method that
  +  ///	  will be run after each all tests in the fixture have executed. Note
  +  ///	  that if more than one method is decorated with this attribute the first
  +  ///	  method found will be executed (not recommended!).
  +  ///	</summary>
     TearDownFixtureAttribute = class(TCustomAttribute)
     end;
   
   
  -  //Marks a method as a test method
  +
  +  ///	<summary>
  +  ///	  This attribute marks a method as a test method
  +  ///	</summary>
     TestAttribute = class(TCustomAttribute)
     private
       FEnabled : boolean;
  
positive.code: 
    TValueArray = array of TValue;
  
    ///  The TestCaseAttribute allows you to specify the name of a function that returns a
    ///  TValueArray which will be passed into a function that takes parameters. This is really only
    ///  needed to work around the problens with the TestCaseAttribute
    ///  Note that the types in the TConstArray should match the parameters of the method we are testing.
    TestCaseAttribute = class(TCustomAttribute)
    private
      FCaseName : string;
  
negative.code: 
    ITestLogger = interface
      ['{AADCA392-421C-4060-8D47-79D7CAAB0EEF}']
  
      ///	<summary>
      ///	  Called at the start of testing. The default console logger prints the
      ///	  DUnitX banner.
      ///	</summary>
      procedure OnTestingStarts(const threadId : Cardinal);
  
  
      ///	<summary>
      ///	  //Called before a Fixture is run.
      ///	</summary>
      procedure OnStartTestFixture(const threadId : Cardinal; const fixture : ITestFixtureInfo);
  
      ///	<summary>
      ///	  //Called before a fixture Setup method is run
      ///	</summary>
      procedure OnSetupFixture(const threadId : Cardinal; const fixture : ITestFixtureInfo);
  
      ///	<summary>
      ///	  Called after a fixture setup method is run.
      ///	</summary>
      procedure OnEndSetupFixture(const threadId : Cardinal; const fixture : ITestFixtureInfo);
  
  
      ///	<summary>
      ///	  Called before a Test method is run.
      ///	</summary>
      procedure OnBeginTest(const threadId : Cardinal; Test: ITestInfo);
  
  
      ///	<summary>
      ///	  Called before a test setup method is run.
      ///	</summary>
      procedure OnSetupTest(const threadId : Cardinal; Test: ITestInfo);
  
      ///	<summary>
      ///	  Called after a test setup method is run.
      ///	</summary>
      procedure OnEndSetupTest(const threadId : Cardinal; Test: ITestInfo);
  
  
      ///	<summary>
      ///	  Called before a Test method is run.
      ///	</summary>
      procedure OnExecuteTest(const threadId : Cardinal; Test: ITestInfo);
  
  
      ///	<summary>
      ///	  Called when a test succeeds
      ///	</summary>
      procedure OnTestSuccess(const threadId : Cardinal; Test: ITestResult);
  
      ///	<summary>
      ///	  Called when a test errors.
      ///	</summary>
      procedure OnTestError(const threadId : Cardinal; Error: ITestError);
  
      ///	<summary>
      ///	  Called when a test fails.
      ///	</summary>
      procedure OnTestFailure(const threadId : Cardinal; Failure: ITestResult);
  
      ///	<summary>
      ///	  //called when a test results in a warning.
      ///	</summary>
      procedure OnTestWarning(const threadId : Cardinal; AWarning: ITestResult);
  
  
      ///	<summary>
      ///	  //allows tests to write to the log.
      ///	</summary>
      procedure OnLog(const logType : TLogLevel; const msg : string);
  
  
      ///	<summary>
      ///	  //called before a Test Teardown method is run.
      ///	</summary>
      procedure OnTeardownTest(const threadId : Cardinal; Test: ITestInfo);
  
      ///	<summary>
      ///	  //called after a test teardown method is run.
      ///	</summary>
      procedure OnEndTeardownTest(const threadId : Cardinal; Test: ITestInfo);
  
      ///	<summary>
      ///	  //called after a test method and teardown is run.
      ///	</summary>
      procedure OnEndTest(const threadId : Cardinal; Test: ITestResult);
  
  
      ///	<summary>
      ///	  //called before a Fixture Teardown method is called.
      ///	</summary>
      procedure OnTearDownFixture(const threadId : Cardinal; const fixture : ITestFixtureInfo);
  
      ///	<summary>
      ///	  //called after a Fixture Teardown method is called.
      ///	</summary>
      procedure OnEndTearDownFixture(const threadId : Cardinal; const fixture : ITestFixtureInfo);
  
  
      ///	<summary>
      ///	  //called after a Fixture has run.
      ///	</summary>
      procedure OnEndTestFixture(const threadId : Cardinal; const results : IFixtureResult);
  
  
      ///	<summary>
      ///	  //called after all fixtures have run.
      ///	</summary>
      procedure OnTestingEnds(const TestResult: ITestResults);
    end;
  
  