anchor.diff:  uses uTriangle; 
    
   {$region 'EquilateralTests'} 
  -procedure EquilateralTests.True_if_all_sides_are_equal; 
  +procedure EquilateralTests.AllSidesAreEqual;
   begin 
     Assert.AreEqual(true, Triangle.Sides(Equilateral, 2, 2, 2)); 
   end; 
    
  -procedure EquilateralTests.False_if_any_side_is_unequal; 
  +procedure EquilateralTests.AnySideIsUnequal;
   begin 
     Assert.AreEqual(false, Triangle.Sides(Equilateral, 2, 3, 2)); 
   end; 
    
  -procedure EquilateralTests.False_if_no_sides_are_equal; 
  -begin 
  -  Assert.AreEqual(false, Triangle.Sides(Equilateral, 5, 4, 6)); 
  -end; 
  - 
  -procedure EquilateralTests.All_zero_sides_are_illegal_so_the_triangle_is_not_equilateral; 
  -begin 
  +procedure EquilateralTests.NoSidesAreEqual;
  +begin
  +  Assert.AreEqual(false, Triangle.Sides(Equilateral, 5, 4, 6));
  +end;
  +
  +procedure EquilateralTests.AllZeroSidesIsNotATriangle;
  +begin
     Assert.AreEqual(false, Triangle.Sides(Equilateral, 0, 0, 0)); 
   end; 
    
  
positive.code:   Assert.AreEqual(true, Triangle.Sides(Equilateral, 0.5, 0.5, 0.5)); 
  end; 
  {$endregion} 
   
  {$region'IsoscelesTests'} 
  procedure IsoscelesTests.True_if_last_two_sides_are_equal; 
  begin 
    Assert.AreEqual(true, Triangle.Sides(Isosceles, 3, 4, 4)); 
  end;
  
  procedure IsoscelesTests.True_if_first_two_sides_are_equal;
  begin
    Assert.AreEqual(true, Triangle.Sides(Isosceles, 4, 4, 3));
  end;
  
  procedure IsoscelesTests.True_if_first_and_last_sides_are_equal;
  begin
    Assert.AreEqual(true, Triangle.Sides(Isosceles, 4, 3, 4));
  end;
  
  procedure IsoscelesTests.Equilateral_triangles_are_also_isosceles;
  begin
    Assert.AreEqual(true, Triangle.Sides(Isosceles, 4, 4, 4));
  end;
  
  procedure IsoscelesTests.False_if_no_sides_are_equal;
  begin
    Assert.AreEqual(false, Triangle.Sides(Isosceles, 2, 3, 4));
  end;
  
  procedure IsoscelesTests.Sides_that_violate_triangle_inequality_are_not_isosceles_even_if_two_are_equal_1;
  begin
    Assert.AreEqual(false, Triangle.Sides(Isosceles, 1, 1, 3));
  end;
  
  procedure IsoscelesTests.Sides_that_violate_triangle_inequality_are_not_isosceles_even_if_two_are_equal_2;
  begin
    Assert.AreEqual(false, Triangle.Sides(Isosceles, 1, 3, 1));
  end;
  
  procedure IsoscelesTests.Sides_that_violate_triangle_inequality_are_not_isosceles_even_if_two_are_equal_3;
  begin
    Assert.AreEqual(false, Triangle.Sides(Isosceles, 3, 1, 1));
  end;
  
negative.code: uses 
    DUnitX.TestFramework; 
    
  const CanonicalVersion = '1.2.1';
  
  type
    [TestFixture('Equilateral Triangle')]
    EquilateralTests = class(TObject)
    public
      [Test]
  //    [Ignore('Comment the "[Ignore]" statement to run the test')]
      procedure AllSidesAreEqual;
  
      [Test]
      [Ignore]
      procedure AnySideIsUnequal;
  
      [Test]
      [Ignore]
      procedure NoSidesAreEqual;
  
      [Test]
      [Ignore]
      procedure AllZeroSidesIsNotATriangle;
  
      [Test]
      [Ignore]
      procedure Sides_may_be_floats;
    end;
  
    [TestFixture('Isosceles Triangle')]
    IsoscelesTests = class(TObject)
    public
      [Test]
      [Ignore]
      procedure LastTwoSidesAreEqual;
  
      [Test]
      [Ignore]
      procedure FirstTwoSidesAreEqual;
  
      [Test]
      [Ignore]
      procedure FirstAndLastSidesAreEqual;
  
      [Test]
      [Ignore]
      procedure EquilateralTrianglesAreAlsoIsosceles;
  
      [Test]
      [Ignore]
      procedure NoSidesAreEqual;
  
      [Test]
      [Ignore]
      procedure FirstTriangleInequalityViolation;
  
      [Test]
      [Ignore]
      procedure SecondTriangleInequalityViolation;
  
      [Test]
      [Ignore]
      procedure ThirdTriangleInequalityViolation;
  
      [Test]
      [Ignore]
      procedure Sides_may_be_floats;
    end;
  
    [TestFixture('Scalene Triangle')]
    ScaleneTests = class(TObject)
    public
      [Test]
      [Ignore]
      procedure NoSidesAreEqual;
  
      [Test]
      [Ignore]
      procedure AllSidesAreEqual;
  
      [Test]
      [Ignore]
      procedure TwoSidesAreEqual;
  
      [Test]
      [Ignore]
      procedure MayNotViolateTriangleInequality;
  
      [Test]
      [Ignore]
  