public class ExceptionExtensionsTests { private readonly ITestOutputHelper _output; public ExceptionExtensionsTests(ITestOutputHelper output) { _output = output; } public static readonly object[][] AggregateException_InnerNineExceptions = { new object[] { ExceptionsExtensionsFixture.CreateAggregateException_InnerNineExceptions(), } }; [Theory, MemberData(nameof(AggregateException_InnerNineExceptions))] public void FlattenInnerExceptions_ShouldReturnDistinctOrderedListExceptions((Exception exception, List expected) valueTuple) { var (exception, expected) = valueTuple; var actual = exception.FlattenInnerExceptions(); Assert.Equal(expected.Count, actual.Count); for (var i = 0; i < expected.Count; i++) { _output.WriteLine($"{actual[i].GetType().FullName}: {actual[i].Message}"); Assert.Equal(expected[i], actual[i]); } } }