title: Can I write 'parameterized' tests in DUnit
body: <p>I am using DUnit to test a Delphi library. I sometimes run into cases, where i write several very similar tests to check multiple inputs to a function.</p>
  
  <p>Is there a way to write (something resembling) a parameterized test in DUnit? For instance specifying an input and expected output to a suitable test procedure, then running the test suite and getting feedback on which of the multiple runs of the test failed?</p>
  
  <p><em>(Edit: an example)</em></p>
  
  <p>For example, suppose I had two tests like this:</p>
  
  <pre><code>procedure TestMyCode_WithInput2_Returns4();
  var
    Sut: TMyClass;
    Result: Integer;
  begin
    // Arrange:
    Sut := TMyClass.Create;
  
    // Act:
    Result := sut.DoStuff(2);
  
    // Assert
    CheckEquals(4, Result);
  end;
  
  procedure TestMyCode_WithInput3_Returns9();
  var
    Sut: TMyClass;
    Result: Integer;
  begin
    // Arrange:
    Sut := TMyClass.Create;
  
    // Act:
    Result := sut.DoStuff(3);
  
    // Assert
    CheckEquals(9, Result);
  end;
  </code></pre>
  
  <p>I might have even more of these tests that do exactly the same thing but with different inputs and expectations. I don't want to merge them into one test, because I would like them to be able to pass or fail independently.</p>