たくさんのプロパティを持つ2つのオブジェクト(同じクラスのインスタンス)があり、そのうちのいくつかは他のオブジェクトのリストです。
class A {
public int a { get; set; }
public string b { get; set; }
public IList<C> cs { get; set; }
}
FluentAssertionsライブラリを使用してこれらを比較し、同じプロパティがあることを確認したいので、追加します
first.ShouldHave().AllProperties().EqualTo(second);
しかし、その後、エラーが発生します
プロパティcsの値が<C、C、C>であると予想されましたが、<C、C、C>が見つかりました
言い換えると、リストであるプロパティを比較すると、参照が等しくなりますが、この場合は明らかに失敗します。
FluentAssertionsに、リスト自体ではなく、リスト内の要素のプロパティが等しいことを表明するように指示するにはどうすればよいですか?