// potentially I could have used Xunit runners, but they are a bit annoying to get through NuGet public IReadOnlyCollection <FeatureTestRun> RunAllTests(Assembly assembly) { var all = assembly.GetTypes() .SelectMany(t => t.GetMethods()) .Where(m => m.IsDefined <FeatureAttribute>(false)) .ToArray(); var runs = new List <FeatureTestRun>(); foreach (var test in all) { foreach (var adapterType in LibraryProvider.GetAdapterTypes(assembly)) { this.RunTestWithDependencyHandling(runs, test, adapterType, all); } } return(runs); }