public void IndexMinHeap_Enumerate(IntHeapItem[] items) { //Create the heap and add the items. var heap = new IndexMinHeap <IntHeapItem>(items); var addedIndexes = new List <int>(); for (var i = 0; i < items.Length; i++) { heap.Add(i); addedIndexes.Add(i); } Assert.AreEqual(items.Length, heap.Count); //Check if the added indexes are returned when enumerating var enumeratedHeap = heap.ToArray(); Assert.AreEqual(items.Length, enumeratedHeap.Length); CollectionAssert.AreEquivalent(addedIndexes, enumeratedHeap); }