private static void CompareCollectionItems(IEnumerable <IEdmDelayedValue> edmItems, IEnumerable odataItems, AssertionHandler assert) { using (IEnumerator <IEdmDelayedValue> edmEnumerator = edmItems.GetEnumerator()) using (IEnumerator <object> odataEnumerator = odataItems.Cast <object>().GetEnumerator()) { while (odataEnumerator.MoveNext()) { assert.IsTrue(edmEnumerator.MoveNext(), "Expected more EDM items."); CompareValue(edmEnumerator.Current.Value, odataEnumerator.Current, assert); } assert.IsFalse(edmEnumerator.MoveNext(), "Expected no more EDM items."); } }
private static void CompareProperties(IEnumerable <IEdmPropertyValue> edmProperties, IEnumerable <ODataProperty> odataProperties, AssertionHandler assert) { using (IEnumerator <IEdmPropertyValue> edmEnumerator = edmProperties.GetEnumerator()) using (IEnumerator <ODataProperty> odataEnumerator = odataProperties.GetEnumerator()) { while (odataEnumerator.MoveNext()) { assert.IsTrue(edmEnumerator.MoveNext(), "Expected more EDM properties."); CompareProperty(edmEnumerator.Current, odataEnumerator.Current, assert); } assert.IsFalse(edmEnumerator.MoveNext(), "Expected no more EDM properties."); } }
public static void VerifyEnumerationsAreEqual <T>( IEnumerable <T> expectedEnumeration, IEnumerable <T> actualEnumeration, Action <T, T, AssertionHandler> verifyItem, Func <T, string> itemToDebugString, AssertionHandler assert) { if (expectedEnumeration == null) { assert.IsNull(actualEnumeration, "The enumeration of items should have been null."); return; } else { assert.IsNotNull(actualEnumeration, "The enumeration of items should not have been null."); } try { var expectedEnumerator = expectedEnumeration.GetEnumerator(); var actualEnumerator = actualEnumeration.GetEnumerator(); while (expectedEnumerator.MoveNext()) { assert.IsTrue( actualEnumerator.MoveNext(), "The actual enumeration has less items than the expected enumeration.\r\n" + "Expected items: " + string.Join(", ", expectedEnumeration.Select(t => "<" + itemToDebugString(t) + ">")) + "\r\n" + "Actual items: " + string.Join(", ", actualEnumeration.Select(t => "<" + itemToDebugString(t) + ">"))); verifyItem(expectedEnumerator.Current, actualEnumerator.Current, assert); } assert.IsFalse( actualEnumerator.MoveNext(), "The expected enumeration has less items than the actual enumeration.\r\n" + "Expected items: " + string.Join(", ", expectedEnumeration.Select(t => "<" + itemToDebugString(t) + ">")) + "\r\n" + "Actual items: " + string.Join(", ", actualEnumeration.Select(t => "<" + itemToDebugString(t) + ">"))); } catch (Exception) { assert.Warn("Expected items: " + string.Join(", ", expectedEnumeration.Select(t => "<" + itemToDebugString(t) + ">"))); assert.Warn("Actual items: " + string.Join(", ", actualEnumeration.Select(t => "<" + itemToDebugString(t) + ">"))); throw; } }
private static void CompareCollectionItems(IEnumerable<IEdmDelayedValue> edmItems, IEnumerable odataItems, AssertionHandler assert) { using (IEnumerator<IEdmDelayedValue> edmEnumerator = edmItems.GetEnumerator()) using (IEnumerator<object> odataEnumerator = odataItems.Cast<object>().GetEnumerator()) { while (odataEnumerator.MoveNext()) { assert.IsTrue(edmEnumerator.MoveNext(), "Expected more EDM items."); CompareValue(edmEnumerator.Current.Value, odataEnumerator.Current, assert); } assert.IsFalse(edmEnumerator.MoveNext(), "Expected no more EDM items."); } }
private static void CompareProperties(IEnumerable<IEdmPropertyValue> edmProperties, IEnumerable<ODataProperty> odataProperties, AssertionHandler assert) { using (IEnumerator<IEdmPropertyValue> edmEnumerator = edmProperties.GetEnumerator()) using (IEnumerator<ODataProperty> odataEnumerator = odataProperties.GetEnumerator()) { while (odataEnumerator.MoveNext()) { assert.IsTrue(edmEnumerator.MoveNext(), "Expected more EDM properties."); CompareProperty(edmEnumerator.Current, odataEnumerator.Current, assert); } assert.IsFalse(edmEnumerator.MoveNext(), "Expected no more EDM properties."); } }