public async Task ThenWillReturnCohortFromCommitmentsApi( [Frozen] Mock <IApiClient> mockApiClient, [Frozen] Mock <IOptions <ReservationsWebConfiguration> > mockOptions, CommitmentService service, Cohort cohort) { //Arrange mockApiClient.Setup(c => c.Get <Cohort>(It.IsAny <GetCohortRequest>())) .ReturnsAsync(cohort); //Act var result = await service.GetCohort(cohort.CohortId); //Assert Assert.AreEqual(cohort, result); }
public async Task ThenWillGetCohortFromCommitmentsApi( [Frozen] Mock <IApiClient> mockApiClient, [Frozen] Mock <IOptions <CommitmentsApiConfiguration> > mockOptions, CommitmentService service, long cohortId) { //Act await service.GetCohort(cohortId); //Assert mockApiClient.Verify(client => client.Get <Cohort>( It.Is <IGetApiRequest>(request => request.GetUrl.StartsWith(mockOptions.Object.Value.ApiBaseUrl) && request.GetUrl.Contains(cohortId.ToString()))), Times.Once); }
public void ThenWillThrowExceptionIFOneOccurs( [Frozen] Mock <IApiClient> mockApiClient, [Frozen] Mock <IOptions <ReservationsWebConfiguration> > mockOptions, CommitmentService service, Cohort cohort, Exception exception) { //Arrange mockApiClient.Setup(c => c.Get <Cohort>(It.IsAny <GetCohortRequest>())) .Throws(exception); //Act var actualException = Assert.ThrowsAsync <Exception>(() => service.GetCohort(cohort.CohortId)); //Assert Assert.AreEqual(exception, actualException); }