title: Does Dart support parameterized unit tests?
body: <p>I would like to run a Dart test which is repeated with a set of inputs and expected outputs, similar to what is possible with JUnit.</p>
  
  <p>I wrote the following test to achieve similar behavior but the problem is that event if all the test outputs are computed incorrectly, the test will only fail once:</p>
  
  <pre><code>import 'package:test/test.dart';
  
  void main() {
    test('formatDay should format dates correctly', () async {
      var inputsToExpected = {
        DateTime(2018, 11, 01): "Thu 1",
        ...
        DateTime(2018, 11, 07): "Wed 7",
        DateTime(2018, 11, 30): "Fri 30",
      };
  
      // When
      var inputsToResults = inputsToExpected.map((input, expected) =&gt;
          MapEntry(input, formatDay(input))
      );
  
      // Then
      inputsToExpected.forEach((input, expected) {
        expect(inputsToResults[input], equals(expected));
      });
    });
  }
  </code></pre>
  
  <p>The reason I want to use parameterized tests, is so that I can achieve the following behavior in my test:</p>
  
  <ul>
  <li>Write only one test</li>
  <li>Test <code>n</code> different inputs/outputs</li>
  <li>Fail <code>n</code> times if all <code>n</code> tests are broken</li>
  </ul>