Mam test, który sprawdza wyjście kolekcji metody. Ta odmiana testu przechodzi:FluentAssertions ShouldBeEquivalentTo() versus Should(). BeEquivalentTo()
[TestMethod, TestCategory("BVT")]
public void TheStatusesAreReturned()
{
var expectedUnprocessedStatuses = new List<FileUploadStatus>
{
FileUploadStatus.InProcess,
FileUploadStatus.Pending,
};
Sut.GetUnprocessedStatuses()
.Should()
.BeEquivalentTo(expectedUnprocessedStatuses);
}
Ta odmiana test nie powiedzie się, z błędem "Oczekiwany element [0], aby być procesowa, ale okazało pending":
[TestMethod, TestCategory("BVT")]
public void TheStatusesAreReturned2()
{
var expectedUnprocessedStatuses = new List<FileUploadStatus>
{
FileUploadStatus.InProcess,
FileUploadStatus.Pending,
};
Sut.GetUnprocessedStatuses()
.ShouldBeEquivalentTo(expectedUnprocessedStatuses);
}
wyraźnie ShouldBeEquivalentTo
troski o zbiorze pozycji zamówienia, natomiast BeEquivalentTo
nie. Dlaczego pojęcie równoważności różni się między dwiema metodami?
OK, czekam na aktualizację. Używam Should(). BeEquivalentTo() całkiem sporo! –
To jest stary post, ale 'ShouldBeEquivalentTo' zignoruje kolejność elementów w kolekcji od v2.1. –