2017-08-08 109 views
0

我有一個列表,每個元素也應顯示在另一個列表中,但不一定按相同的順序。FluentAssertions:應包含序列的每個元素

我大概可以做斷言在foreach,這樣

Assert.IsTrue(list1.Count == list2.Count); 
foreach(var element in list1) 
{ 
    Assert.IsTrue(list2.Count(e => e.Equals(element)) == 1); 
} 

我正在尋找一種方式與fluentAssertions做到這一點。元素不一定是相等的,而是相等的。它可能會像

list1.ShouldAll().BeEquivalentInAnyOrderTo(list2); 

但我找不到任何解決我的問題,很容易。

什麼是最簡單的方法來檢查兩個列表是否包含使用FluentAssertions的任何順序的等價元素?

+1

'list1.ShouldBeEquivalentTo(expectedList)' - 將檢查該順序沒有嚴格等同性。爲了更具擴展性,您可以使用第二個參數 – Fabio

+1

嘗試使用'list1.ShouldAllBeEquivalentTo(list2)'; – Nkosi

回答

相關問題