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