12

タイプの2つの辞書をアサートする方法を知っていますか

Dictionary<string,List<string>>

私のユニットテストプロジェクトで?

CollectionsAssert を試してみましたが、うまくいきませんでした。単純な辞書をパラメーターとして使用すると思います (例: Dictionary<string,string>)。私にとっての問題は、辞書の 2 番目のパラメーターにあると思います。それらをアサートする方法を知っていますか?二冊の辞書?

4

2 に答える 2

11

適切なエラー メッセージを表示する方法の 1 つ:

public string ToAssertableString(IDictionary<string,List<string>> dictionary) {
    var pairStrings = dictionary.OrderBy(p => p.Key)
                                .Select(p => p.Key + ": " + string.Join(", ", p.Value));
    return string.Join("; ", pairStrings);
}

// ...
Assert.AreEqual(ToAssertableString(dictionary1), ToAssertableString(dictionary2));
于 2013-07-11T11:27:51.583 に答える