private async Task <ErrorResponce> Comment(CommentFormData formData) { var handler = new CommentHandler(_dbContext); return(await handler.Handle( new ProjectHandlerData <(string userName, CommentFormData formData), ErrorResponce> { Data = ("user", formData), Project = _dbContext.Projects.First(project => project.Name == "project") }, new CancellationToken()));
public async Task <IActionResult> Comment([FromForm] CommentFormData formData, [FromRoute] ProjectRoute route) { if (ModelState.IsValid) { //Getting field _project based on route. await Init(route); var request = new ProjectHandlerData <(string UserName, CommentFormData FormData), ErrorResponce> { Data = (User.Identity.Name, formData), Project = _project, }; // Getting object that contain errors about login user data. ErrorResponce responce = await _mediator.Send(request); // Checking errors if exist then add them to modelstate. ModelState.CheckErrors(responce); } return(RedirectToAction(nameof(Show), route)); }
public async Task CommentWithBigText(CommentFormData formData) { var responce = await Comment(formData); Assert.Single(responce.Errors); }
public async Task CorrectComment(CommentFormData formData) { var responce = await Comment(formData); Assert.Empty(responce.Errors); }