public void Should_map_all_properties(string caseNumber) { var @case = caseNumber.IsNullOrEmpty() ? hearingsByCaseNumber[0].GetCases().FirstOrDefault(): hearingsByCaseNumber[0].GetCases().FirstOrDefault(c => c.Number.ToLower().Trim() == caseNumber.ToLower().Trim()); var result = hearingMapper.MapHearingToDetailedResponse(hearingsByCaseNumber, caseNumber); var judgeParticipant = hearingsByCaseNumber[0].GetParticipants().FirstOrDefault(s => s.HearingRole?.UserRole != null && s.HearingRole.UserRole.Name == "Judge"); var courtroomAccountName = judgeParticipant != null ? judgeParticipant.DisplayName : string.Empty; var courtroomAccount = (judgeParticipant != null && judgeParticipant.Person != null) ? judgeParticipant.Person.Username : string.Empty; result[0].CaseName.Should().Be(@case.Name); result[0].CaseNumber.Should().Be(@case.Number); result[0].Id.Should().Be(hearingsByCaseNumber[0].Id); result[0].ScheduledDateTime.Should().Be(hearingsByCaseNumber[0].ScheduledDateTime); result[0].HearingVenueName.Should().Be(hearingsByCaseNumber[0].HearingVenueName); result[0].CourtroomAccount.Should().Be(courtroomAccount); result[0].CourtroomAccountName.Should().Be(courtroomAccountName); result[0].HearingRoomName.Should().Be(hearingsByCaseNumber[0].HearingRoomName); }
public async Task <IActionResult> SearchForHearingsAsync([FromQuery] SearchForHearingsQuery searchQuery) { var caseNumber = WebUtility.UrlDecode(searchQuery.CaseNumber); var query = new GetHearingsBySearchQuery(caseNumber, searchQuery.Date); var hearings = await _queryHandler.Handle <GetHearingsBySearchQuery, List <VideoHearing> >(query); var hearingMapper = new AudioRecordedHearingsBySearchResponseMapper(); var response = hearingMapper.MapHearingToDetailedResponse(hearings, caseNumber); return(Ok(response)); }