public async void Given_CreateServiceCommand_When_HandlingCreateServiceCommand_Then_ReturnsServiceRequestEntity() { // Arrange _serviceRequestRepository .Setup(serviceRequestRepo => serviceRequestRepo.Create(It.IsAny <ServiceRequest>())) .Returns <ServiceRequest>(serviceRequest => serviceRequest); var requestDTO = new PostCreateServiceRequestDTO { BuildingCode = "123", CreatedBy = "Aaron Jaeger", Description = "Turn up the heat!" }; var createServiceRequestCommand = new CreateServiceRequestCommand(requestDTO); var target = new CreateServiceRequestCommandHandler(_logger.Object, _serviceRequestRepository.Object); // Act var actual = await target.Handle(createServiceRequestCommand, default); // Assert Assert.Equal(createServiceRequestCommand.RequestBody.BuildingCode, actual.GetBuildingCode); Assert.Equal(createServiceRequestCommand.RequestBody.CreatedBy, actual.GetCreatedBy); Assert.Equal(createServiceRequestCommand.RequestBody.Description, actual.GetDescription); Assert.Equal(CurrentStatus.Created, actual.CurrentStatus); Assert.InRange(actual.GetCreatedDate, DateTime.UtcNow.AddSeconds(-30), DateTime.UtcNow); Assert.Null(actual.GetLastModifiedBy); }
public async Task <ActionResult <ServiceRequestDTO> > CreateServiceRequestAsync([FromBody] PostCreateServiceRequestDTO request) { var command = new CreateServiceRequestCommand(request); var result = await _mediator.Send(command); return(Created(nameof(CreateServiceRequestAsync), result.AsServiceRequestDTO())); }