Chcę, jeden liniowiec, w NUnit, który zapewnia, czy dwa słownika są takie same. to znaczy, chcę zwięzłą wersję poniższy kod:NUnit: Słownik Assert
public static void DictionaryAssert<T, U>(Dictionary<T, U> dictionaryResult, Dictionary<T, U> expectedResult)
{
Assert.AreEqual(dictionaryResult.Count, expectedResult.Count);
foreach (var aKey in expectedResult.Keys)
{
Assert.AreEqual(expectedResult[aKey], dictionaryResult[aKey]);
}
}
Z pewnością nie jest to takie trudne, ale nie mogę znaleźć odniesienia, jakiś pomysł?
Myślałem, że są tylko dla IEnumerable? Słownik wydaje się nie działać zgodnie z moimi testami. – Graviton
Słownik implementuje IEnumerable. Jakiej wersji używasz? Działa dla mnie na NUnit v2.4. –
adrianbanks
Myślę, że zgadzam się z tobą; jednak ostatni raz używam CollectionAssert.AreEquivalent moje porównanie dyktafonu jakoś się nie udaje. nvm, po prostu zaakceptowałbym twoją odpowiedź. – Graviton