static int VerifyDictionaryEnumerator(IDictionaryEnumerator de, IterationOrder order) { long prev = long.MinValue; if (order == IterationOrder.DescentOrder) { prev = long.MaxValue; } int i = 0; while (de.MoveNext()) { DictionaryEntry e1 = (DictionaryEntry)de.Current; DictionaryEntry e2 = de.Entry; Tests.Assert(e1.Equals(e2)); long k = (long)e1.Key; long k2 = (long)de.Key; Tests.Assert(k == k2); RecordFull v1 = (RecordFull)e1.Value; RecordFull v2 = (RecordFull)de.Value; Tests.Assert(v1.Equals(v2)); Tests.Assert(v1.Int32Val == k); if (order == IterationOrder.AscentOrder) { Tests.Assert(k >= prev); } else { Tests.Assert(k <= prev); } prev = k; i++; } Tests.VerifyDictionaryEnumeratorDone(de); return(i); }
static int VerifyDictionaryEnumerator(IDictionaryEnumerator de, IterationOrder order) { string prev = ""; if (order == IterationOrder.DescentOrder) { prev = "9999999999999999999"; } int i = 0; while (de.MoveNext()) { DictionaryEntry e1 = (DictionaryEntry)de.Current; DictionaryEntry e2 = de.Entry; Tests.Assert(e1.Equals(e2)); string k = (string)e1.Key; string k2 = (string)de.Key; Tests.Assert(k == k2); RecordFull v1 = (RecordFull)e1.Value; RecordFull v2 = (RecordFull)de.Value; Tests.Assert(v1.Equals(v2)); Tests.Assert(v1.StrVal == k); if (order == IterationOrder.AscentOrder) { Tests.Assert(k.CompareTo(prev) >= 0); } else { Tests.Assert(k.CompareTo(prev) <= 0); } prev = k; i++; } Tests.VerifyDictionaryEnumeratorDone(de); return(i); }