public async Task Should_return_list_of_court_rooms_accounts_with_status_ok() { var accounts = UserResponseBuilder.BuildData(); var usernames = new VhoConferenceFilterQuery { UserNames = new List <string> { "Manual01", "Manual03" } }; _mocker.Mock <IUserApiClient>().Setup(x => x.GetJudgesAsync()).ReturnsAsync(accounts); var result = await _sut.GetCourtRoomsAccounts(usernames); var typedResult = (OkObjectResult)result.Result; typedResult.Should().NotBeNull(); var judgeList = typedResult.Value as List <CourtRoomsAccountResponse>; judgeList.Should().NotBeNull(); judgeList.Count.Should().Be(2); judgeList[0].CourtRooms.Count.Should().Be(3); judgeList[1].CourtRooms.Count.Should().Be(1); judgeList[0].Venue.Should().Be("Manual01"); judgeList[1].Venue.Should().Be("Manual03"); judgeList[0].CourtRooms[0].Should().Be("Court room 01"); judgeList[0].CourtRooms[1].Should().Be("Court room 02"); judgeList[0].CourtRooms[2].Should().Be("Court room 03"); judgeList[1].CourtRooms[0].Should().Be("Court room 01"); }
public async Task Should_return_error_when_unable_to_retrieve_court_rooms_accounts() { var usernames = new VhoConferenceFilterQuery { UserNames = new List <string> { "Manual01", "Manual03" } }; var apiException = new UserApiException("Court rooms accounts not found", (int)HttpStatusCode.BadRequest, "Error", null, null); _mocker.Mock <IUserApiClient>() .Setup(x => x.GetJudgesAsync()) .ThrowsAsync(apiException); var result = await _sut.GetCourtRoomsAccounts(usernames); var typedResult = (ObjectResult)result.Result; typedResult.Should().NotBeNull(); typedResult.StatusCode.Should().Be(apiException.StatusCode); }
public async Task <ActionResult <IList <CourtRoomsAccountResponse> > > GetCourtRoomsAccounts([FromQuery] VhoConferenceFilterQuery query) { try { var response = await _userApiClient.GetJudgesAsync(); var courtRoomsAccountResponsesMapper = _mapperFactory.Get <IEnumerable <UserResponse>, IEnumerable <string>, List <CourtRoomsAccountResponse> >(); var accountList = courtRoomsAccountResponsesMapper.Map(response, query.UserNames); return(Ok(accountList)); } catch (UserApiException e) { _logger.LogError(e, "Unable to get list of court rooms accounts"); return(StatusCode(e.StatusCode, e.Response)); } }
public async Task <ActionResult <List <ConferenceForVhOfficerResponse> > > GetConferencesForVhOfficerAsync([FromQuery] VhoConferenceFilterQuery query) { _logger.LogDebug("GetConferencesForVhOfficer"); try { var conferences = await _videoApiClient.GetConferencesTodayForAdminAsync(query.UserNames); var conferenceForVhOfficerResponseMapper = _mapperFactory.Get <ConferenceForAdminResponse, ConferenceForVhOfficerResponse>(); var responses = conferences .Where(c => ConferenceHelper.HasNotPassed(c.Status, c.ClosedDateTime)) .OrderBy(x => x.ClosedDateTime) .Select(conferenceForVhOfficerResponseMapper.Map) .ToList(); return(Ok(responses)); } catch (VideoApiException e) { _logger.LogError(e, "Unable to get conferences for vh officer"); return(StatusCode(e.StatusCode, e.Response)); } }
public async Task <ActionResult <List <ConferenceForVhOfficerResponse> > > GetConferencesForVhOfficerAsync([FromQuery] VhoConferenceFilterQuery query) { _logger.LogDebug("GetConferencesForVhOfficer"); try { var conferences = await _videoApiClient.GetConferencesTodayForAdminAsync(query.UserNames); conferences = conferences.Where(c => ConferenceHelper.HasNotPassed(c.Status, c.Closed_date_time)) .ToList(); conferences = conferences.OrderBy(x => x.Closed_date_time).ToList(); var responses = conferences.Select(ConferenceForVhOfficerResponseMapper .MapConferenceSummaryToResponseModel).ToList(); return(Ok(responses)); } catch (VideoApiException e) { return(StatusCode(e.StatusCode, e.Response)); } }