Ran into this xUnit test failure the other day:
Assert.Equal() Failure Expected: Boolean[] [True, False, False] Actual: SelectListIterator<Process, Boolean> [True, False, False]
Why the failure?
The values displayed for expected and actual match. The only difference visible in the error message are the collection types…but that can’t be the source of failure because xUnit’s Assert.Equal<T>(IEnumerable<T> expected, IEnumerable<T> actual)
doesn’t compare the collection types of its arguments, just elements and their positions.
So why the failure? Continue reading