public async Task TestExceptionPath(params object[] ctorArgs) { IThingyLoader <TThingy> loader = CreateLoader(ctorArgs); try { Func <Task> act = () => loader.LoadAsync(_uris); await Assert.ThrowsAnyAsync <Exception>(act); } finally { if (loader is IDisposable disposableLoader) { disposableLoader.Dispose(); } } }
public async Task TestHappyPath(IEqualityComparer <TThingy> comparer, params object[] ctorArgs) { TThingy[] response; IThingyLoader <TThingy> loader = CreateLoader(ctorArgs); try { response = (await loader.LoadAsync(_uris)).ToArray(); } finally { if (loader is IDisposable disposableLoader) { disposableLoader.Dispose(); } } Assert.Equal(_total, response.Distinct(comparer).Count()); AssertResult(response); }