public void Arrange() { var fixture = new Fixture(); _request = fixture.Create <GetBatchLearnerRequest>(); _response = fixture.Build <GetLearnerResponse>() .With(r => r.ValidationErrors, new List <string>()).Create(); _mockApiClient = new Mock <IApiClient>(); _mockApiClient.Setup(c => c.GetLearner(It.IsAny <GetBatchLearnerRequest>())).ReturnsAsync(_response); _learnerController = new LearnerController(Mock.Of <ILogger <LearnerController> >(), Mock.Of <IHeaderInfo>(), _mockApiClient.Object); }
public async Task <GetLearnerResponse> GetLearner(GetLearnerRequest request) { var response = new GetLearnerResponse { Uln = request.Uln, FamilyName = request.FamilyName, Standard = request.Standard }; using (var apiResponse = await _httpClient.GetAsync($"api/v1/learner/{request.Uln}/{request.FamilyName}/{request.Standard}")) { if (apiResponse.IsSuccessStatusCode) { response.Learner = await apiResponse.Content.ReadAsAsync <Learner>(); } else { response.Error = await apiResponse.Content.ReadAsAsync <ApiResponse>(); } } return(response); }