public async Task Customer_update_adds_comment() { var db = MakeDbContext(nameof(Customer_update_adds_comment)); var existingTicketId = await GivenExistingTicket(db); var updateCommand = new TicketCustomerUpdateCommand { Id = existingTicketId, Comment = $"Some New Comment {Guid.NewGuid()}", SubmitterId = $"test{Guid.NewGuid()}@example.com" }; var handler = new TicketUpdateHandler(db); await handler.Handle(updateCommand, CancellationToken.None); var detailHandler = new TicketDetailsHandler(db); var detailsRequest = new TicketDetailsRequest { Id = existingTicketId }; var ticket = await detailHandler.Handle(detailsRequest, CancellationToken.None); ticket.Comments.Count.Should().Be(1); ticket.Comments[0].Text.Should().Be(updateCommand.Comment); ticket.Comments[0].SubmitterId.Should().Be(updateCommand.SubmitterId); ticket.Comments[0].DateEntered.Should().BeCloseTo(DateTime.UtcNow, TimeSpan.FromSeconds(5)); }
public async Task <IActionResult> Update( Guid id, TicketCustomerUpdateCommand command, CancellationToken cancellationToken) { if (id != command.Id) { command.Id = id; } command.SubmitterId = User.Identity?.Name; await _mediator.Send(command, cancellationToken); return(RedirectToAction(nameof(Details), new { id = command.Id })); }