public async Task <IActionResult> CreateAuditAsync([FromBody] PublishAuditCommand command, [FromHeader(Name = Constants.XRequest.XRequestIdHeaderName)] string requestId) { if (Guid.TryParse(requestId, out Guid guid) && guid != Guid.Empty) { var requestCreateAudit = new IdentifiedCommand <PublishAuditCommand, Result <string> >(command, guid); _logger.LogInformation( "----- Sending command: {CommandName} - ({@Command})", requestCreateAudit.GetGenericTypeName(), requestCreateAudit); var commandResult = await _mediator.Send(requestCreateAudit).ConfigureAwait(false); if (commandResult.IsFailure) { return(BadRequest()); } } else { return(BadRequest(Constants.ErrorMessages.XRequestIdIsMissing)); } return(StatusCode(201)); }
public async Task PostAudit() { //Arrange var publishAuditCommand = new PublishAuditCommand { SubjectId = 1, Subject = "Subject", ActorId = 1, Actor = "Actor", Description = "Descirption", Properties = "some json string" }; //Act var response = await _client.PostAsJsonAsync("/api/v1/audits", publishAuditCommand); response.EnsureSuccessStatusCode(); //Assert Assert.AreEqual(HttpStatusCode.Created, response.StatusCode); }