2

Fluent Assertions 4.1.1 を使い始めたばかりです。辞書を比較するためのコードのようです

 actualDictionary.ShouldAllBeEquivalentTo(expectedDictionary);

しかし、Equals() 実装を使用したくない場合、キーと値に対して独自の等値関数 (コンパレーター) を指定するにはどうすればよいでしょうか?

コレクションの場合は次のようになります。

actualCollection.Should().Equal(expectedCollection, MyComparisonFunc);

IDictionary<K,V>とそれにIReadOnlyDictionary<K,V>相当するものを探しています。

編集:コレクションのContain()に対する同じ質問。

4

1 に答える 1

1

述語を取るコレクションのオーバーロードShould().Contain()とコレクションがありますが、残念ながら、辞書には存在しません。Should().Equal()ただし、等価規則は非常に拡張可能です。単体テストをチェックアウトして、いくつかの例を確認してください

于 2016-01-06T17:46:21.313 に答える