public void TestInitialize() { HearingId = Guid.NewGuid(); EndpointId = Guid.NewGuid(); AddEndpointRequest = new AddEndpointRequest { DisplayName = "DisplayNameAdded" }; QueryHandler = new Mock <IQueryHandler>(); CommandHandlerMock = new Mock <ICommandHandler>(); RandomGenerator = new Mock <IRandomGenerator>(); EventPublisher = new Mock <IEventPublisher>(); KinlyConfiguration = new KinlyConfiguration { SipAddressStem = "@hmcts.net" }; Controller = new EndPointsController( CommandHandlerMock.Object, RandomGenerator.Object, new OptionsWrapper <KinlyConfiguration>(KinlyConfiguration), EventPublisher.Object, QueryHandler.Object); QueryHandler.Setup(q => q.Handle <GetHearingByIdQuery, VideoHearing>(It.IsAny <GetHearingByIdQuery>())) .ReturnsAsync(GetVideoHearing(true)); }
private void SetupAddEndpointRequest(Guid conferenceId, AddEndpointRequest request) { var jsonBody = RequestHelper.Serialise(request); _context.HttpContent = new StringContent(jsonBody, Encoding.UTF8, "application/json"); _context.Uri = AddEndpointsToConference(conferenceId); _context.HttpMethod = HttpMethod.Post; }
private void PrepareAddEndpointRequest(Guid hearingId, AddEndpointRequest request) { var jsonBody = RequestHelper.Serialise(request); Context.HttpContent = new StringContent(jsonBody, Encoding.UTF8, "application/json"); Context.Uri = AddEndpointToHearing(hearingId); Context.HttpMethod = HttpMethod.Post; }
public void GivenIHaveAnInvalidAddEndpointRequest() { var conferenceId = Guid.NewGuid(); var request = new AddEndpointRequest { SipAddress = string.Empty, DisplayName = string.Empty }; SetupAddEndpointRequest(conferenceId, request); }
public async Task Should_pass_validation() { var request = new AddEndpointRequest { DisplayName = "Display name" }; var result = await _validator.ValidateAsync(request); result.IsValid.Should().BeTrue(); }
public void GivenIHaveAddEndpointToAHearingRequestWithAHearingId(Scenario scenario) { var hearingId = GetHearingIdForTest(scenario); var addEndpointRequest = new AddEndpointRequest() { DisplayName = $"DisplayName{Guid.NewGuid()}", }; _context.TestData.TestContextData.Add(AddEndPointRequest, addEndpointRequest); _context.Request = _context.Post(AddEndpointToHearing(hearingId), addEndpointRequest); }
public async Task Should_fail_validation_when_display_name_is_empty() { var request = new AddEndpointRequest { DisplayName = string.Empty, }; var result = await _validator.ValidateAsync(request); result.Errors.Any(x => x.ErrorMessage == AddEndpointRequestValidation.NoDisplayNameError) .Should().BeTrue(); }
public void GivenIHaveAValidAddEndpointRequest() { var conferenceId = _context.Test.Conference.Id; var request = new AddEndpointRequest { Pin = "1234", SipAddress = $"{Guid.NewGuid()}@sip.com", DisplayName = "Automated Add EP test", DefenceAdvocate = "Defence Sol" }; SetupAddEndpointRequest(conferenceId, request); }
public void GivenIHaveAnNonExistentAddEndpointRequest() { var conferenceId = Guid.NewGuid(); var request = new AddEndpointRequest { Pin = "1234", SipAddress = "*****@*****.**", DisplayName = "Automated Add EP test", DefenceAdvocate = "Defence Sol" }; SetupAddEndpointRequest(conferenceId, request); }
public async Task Should_pass_validation() { var request = new AddEndpointRequest { DisplayName = "Display name", Pin = "1234", SipAddress = "*****@*****.**", DefenceAdvocate = "Defence Sol" }; var result = await _validator.ValidateAsync(request); result.IsValid.Should().BeTrue(); }
public async Task Should_fail_validation_when_sip_address_is_empty() { var request = new AddEndpointRequest { DisplayName = "Display name", Pin = "1234", SipAddress = string.Empty, DefenceAdvocate = "Defence Sol" }; var result = await _validator.ValidateAsync(request); result.Errors.Any(x => x.ErrorMessage == AddEndpointRequestValidation.NoSipError) .Should().BeTrue(); }
public async Task <IActionResult> AddEndpointToConference([FromRoute] Guid conferenceId, [FromBody] AddEndpointRequest request) { _logger.LogDebug("Attempting to add endpoint {DisplayName} to conference", request.DisplayName); var command = new AddEndpointCommand(conferenceId, request.DisplayName, request.SipAddress, request.Pin, request.DefenceAdvocate); await _commandHandler.Handle(command); var conference = await _queryHandler.Handle <GetConferenceByIdQuery, Conference>(new GetConferenceByIdQuery(conferenceId)); var endpointDtos = conference.GetEndpoints().Select(EndpointMapper.MapToEndpoint); await _videoPlatformService.UpdateVirtualCourtRoomAsync(conference.Id, conference.AudioRecordingRequired, endpointDtos); _logger.LogDebug("Successfully added endpoint {DisplayName} to conference", request.DisplayName); return(NoContent()); }
public async Task <IActionResult> AddEndPointToHearingAsync(Guid hearingId, AddEndpointRequest addEndpointRequest) { if (hearingId == Guid.Empty) { ModelState.AddModelError(nameof(hearingId), $"Please provide a valid {nameof(hearingId)}"); return(BadRequest(ModelState)); } var result = await new AddEndpointRequestValidation().ValidateAsync(addEndpointRequest); if (!result.IsValid) { ModelState.AddFluentValidationErrors(result.Errors); return(BadRequest(ModelState)); } try { var newEp = EndpointToResponseMapper.MapRequestToNewEndpointDto(addEndpointRequest, _randomGenerator, _kinlyConfiguration.SipAddressStem); var command = new AddEndPointToHearingCommand(hearingId, newEp); await _commandHandler.Handle(command); var hearing = await _queryHandler.Handle <GetHearingByIdQuery, VideoHearing>(new GetHearingByIdQuery(hearingId)); var endpoint = hearing.GetEndpoints().FirstOrDefault(x => x.DisplayName.Equals(addEndpointRequest.DisplayName)); if (endpoint != null && hearing.Status == BookingStatus.Created) { await _eventPublisher.PublishAsync(new EndpointAddedIntegrationEvent(hearingId, endpoint)); } } catch (HearingNotFoundException exception) { return(NotFound(exception.Message)); } return(NoContent()); }
public Task AddEndpointToConference(Guid conferenceId, AddEndpointRequest request) { _logger.LogInformation("Adding endpoint to conference: {ConferenceId}", conferenceId); return(_apiClient.AddEndpointToConferenceAsync(conferenceId, request)); }
public Task AddEndpointToConference(Guid conferenceId, AddEndpointRequest request) { AddEndpointToConferenceCount++; return(Task.FromResult(HttpStatusCode.OK)); }