// Copyright (c) Microsoft Corporation. All rights reserved. See License.txt in the project root for license information. using System.Collections.Generic; namespace Microsoft.TestCommon { public class DictionaryEqualityComparer : IEqualityComparer> { public bool Equals(IDictionary x, IDictionary y) { if (x.Count != y.Count) { return false; } foreach (string key in x.Keys) { object xVal = x[key]; object yVal; if (!y.TryGetValue(key, out yVal)) { return false; } if (xVal == null) { if (yVal == null) { continue; } return false; } if (!xVal.Equals(yVal)) { return false; } } return true; } public int GetHashCode(IDictionary obj) { return 1; } } }