私はFluentAssertionと「CollectionAssert.AreEquivalent()」」の使用を置き換えるためにしようとしている。FluentAssertionsでCollectionAssert.AreEequivalent?
私はShouldAllBeEquivalentToを使用してみましたが、さまざまな種類の類似したオブジェクトを比較するときに、関数は失敗しません。
以下の例では、両方の呼び出しが成功した。私は2番目の1が失敗します。
new int[] { 1, 2 }.ShouldAllBeEquivalentTo(new int[] { 2, 1 });
new int[] { 1, 2 }.ShouldAllBeEquivalentTo(new string[] {"1", "2"});
はalterantive機能や2行目は失敗するだろう特定のオプションがありますか?
を何本アサートの追加について参照してください:最初にそれを削除する
てみAssert.AreEqual(list1.GetType()、list2.GetType()); ? – KernelMode
@ KernelMode - これはその特定の例では機能しますが、実際のケースでは辞書<文字列、オブジェクト>が関係します。私は個々の値のランタイムの種類をチェックする必要があります。 CollectionAssertは、受け入れられた答えに詳述されたステップを追加した後、FluentAssertionsと同様にこれを行います。 – FrequentGuest