public void SortFirstDescendingSecondAscending() { Random random = new Random(5); var data = new Triple[100000]; for (int index = 0; index < data.Length; index++) { data[index] = new Triple(random.Next(100), random.Next(100), random.Next()); } var sorted1 = data.OrderByDescending(x => x.First).ThenBy(x => x.Second); var sorted2 = data.LazyOrderByDescending(x => x.First).ThenBy(x => x.Second); CollectionAssert.AreEqual(sorted1, sorted2); }
public void SortFirstDescendingCustom() { Random random = new Random(8); var data = new Triple[100000]; for (int index = 0; index < data.Length; index++) { data[index] = new Triple(random.Next(), random.Next(100), random.Next(100)); } var sorted1 = data.OrderByDescending(x => x, new TripleComparer()); var sorted2 = data.LazyOrderByDescending(x => x, new TripleComparer()); CollectionAssert.AreEqual(sorted1, sorted2); }