public async Task RefreshApprenticeshipsWhenMaxErrorsOccur() { // Arrange var expectedModels = A.CollectionOfFake <SimpleJobProfileModel>(AbortAfterErrorCount * 2); const HttpStatusCode expectedStatusCode = HttpStatusCode.BadRequest; A.CallTo(() => fakeRefreshService.GetListAsync()).Returns(expectedModels); A.CallTo(() => fakeRefreshService.RefreshApprenticeshipsAsync(A <Guid> .Ignored)).Returns(expectedStatusCode); // Act var ex = await Assert.ThrowsAsync <HttpResponseException>(() => RefreshApprenticeships.RunAsync(timer, fakeLogger, fakeRefreshService)).ConfigureAwait(false); // Assert A.CallTo(() => fakeRefreshService.GetListAsync()).MustHaveHappenedOnceExactly(); A.CallTo(() => fakeRefreshService.RefreshApprenticeshipsAsync(A <Guid> .Ignored)).MustHaveHappened(AbortAfterErrorCount, Times.Exactly); }
public async Task RefreshApprenticeshipsWhenSimpleListReturnsNoDataOK() { // Arrange var expectedModels = A.CollectionOfFake <SimpleJobProfileModel>(0); const HttpStatusCode expectedStatusCode = HttpStatusCode.OK; A.CallTo(() => fakeRefreshService.GetListAsync()).Returns(expectedModels); A.CallTo(() => fakeRefreshService.RefreshApprenticeshipsAsync(A <Guid> .Ignored)).Returns(expectedStatusCode); // Act await RefreshApprenticeships.RunAsync(timer, fakeLogger, fakeRefreshService).ConfigureAwait(false); // Assert A.CallTo(() => fakeRefreshService.GetListAsync()).MustHaveHappenedOnceExactly(); A.CallTo(() => fakeRefreshService.RefreshApprenticeshipsAsync(A <Guid> .Ignored)).MustHaveHappened(expectedModels.Count, Times.Exactly); }