public async Task ChangeStatusInvokesSendAsyncWithCorrectTaskStatusChangeCommand() { var model = new VolunteerTaskChangeModel { VolunteerTaskId = 1, UserId = "1", Status = VolunteerTaskStatus.Accepted, StatusDescription = "statusDescription" }; var mediator = new Mock <IMediator>(); mediator.Setup(x => x.SendAsync(It.IsAny <ChangeVolunteerTaskStatusCommand>())).ReturnsAsync(new VolunteerTaskChangeResult()); var sut = new TaskApiController(mediator.Object, null, null); await sut.ChangeStatus(model); mediator.Verify(x => x.SendAsync(It.Is <ChangeVolunteerTaskStatusCommand>(y => y.VolunteerTaskId == model.VolunteerTaskId && y.VolunteerTaskStatus == model.Status && y.VolunteerTaskStatusDescription == model.StatusDescription && y.UserId == model.UserId))); }
public async Task <JsonResult> ChangeStatus(VolunteerTaskChangeModel model) { var result = await _mediator.SendAsync(new ChangeVolunteerTaskStatusCommand { VolunteerTaskStatus = model.Status, VolunteerTaskId = model.VolunteerTaskId, UserId = model.UserId, VolunteerTaskStatusDescription = model.StatusDescription }); return(Json(new { result.Status, Task = result.VolunteerTask == null ? null : new VolunteerTaskViewModel(result.VolunteerTask, model.UserId) })); }