private void RunToListOnAllCollectionTypes <T>(T[] items, Action <List <T> > validation) { validation(Enumerable.ToList(items)); validation(Enumerable.ToList(new List <T>(items))); validation(new TestEnumerable <T>(items).ToList()); validation(new TestReadOnlyCollection <T>(items).ToList()); validation(new TestCollection <T>(items).ToList()); }