I have a list, every single element should also show up in another list, but not necessarily in the same order.
I could probably do the assert with a foreach, like this
Assert.IsTrue(list1.Count == list2.Count);
foreach(var element in list1)
{
Assert.IsTrue(list2.Count(e => e.Equals(element)) == 1);
}
I am looking for a way to do this with fluentAssertions. The elements are not necessarily Equal, but are Equivalent. It would probably be something like
list1.ShouldAll().BeEquivalentInAnyOrderTo(list2);
But I can't find anything that solves my problem that easily.
What is the simplest way to check if both lists contain equivalent elements in any order using FluentAssertions?
list1.ShouldBeEquivalentTo(expectedList)
- will check that equivalency without strict for the order. For more extensebility you can play with second parameter – Quinarylist1.ShouldAllBeEquivalentTo(list2)
; – Cuneiform