public ActionResult <Publication> Post(Guid autorId, string title, string content, Guid topicId) { var resultValidator = new UserExistValidator().Validate(autorId); if (!resultValidator.IsValid) { return(BadRequest(resultValidator.Errors)); } User autor = userRepository.GetById(autorId); resultValidator = new TopicExistValidator().Validate(topicId); if (!resultValidator.IsValid) { return(BadRequest(resultValidator.Errors)); } Topic topic = topicRepository.GetById(topicId); Publication publication = new Publication(autor, title, content, topic); resultValidator = new PublicationValidator().Validate(publication); if (!resultValidator.IsValid) { return(BadRequest(resultValidator.Errors)); } publicationRepository.Create(publication); return(CreatedAtAction("Get", new { id = publication.Id }, publication)); }
public ActionResult <Comment> Post(Guid autorId, string content, Guid publicationId) { var resultValidation = new UserExistValidator().Validate(autorId); if (!resultValidation.IsValid) { return(BadRequest(resultValidation.Errors)); } var autor = userRepository.GetById(autorId); resultValidation = new PublicationExistValidator().Validate(publicationId); if (!resultValidation.IsValid) { return(BadRequest(resultValidation.Errors)); } Comment comment = new Comment(autor, content, publicationId); resultValidation = new CommentValidator().Validate(comment); if (!resultValidation.IsValid) { return(BadRequest(resultValidation.Errors)); } commentRepository.Create(comment); return(CreatedAtAction("Get", new { id = comment.Id }, comment)); }
public ActionResult <User> Get(Guid id) { var resultValidation = new UserExistValidator().Validate(id); if (!resultValidation.IsValid) { return(BadRequest(resultValidation.Errors)); } return(Ok(userRepository.GetById(id))); }
public void TestValidationUserExistUser() { var userFirst = UserBuilder.New().Build(); var userSecond = UserBuilder.New().Build(); new UserRepository().Create(userFirst); var resultValidationFirst = new UserExistValidator().Validate(userFirst.Id); var resultValidationSecond = new UserExistValidator().Validate(userSecond.Id); Assert.True(resultValidationFirst.IsValid); Assert.False(resultValidationSecond.IsValid); }
public ActionResult <User> Put(Guid id, string name, string email, string password) { var resultValidation = new UserExistValidator().Validate(id); if (!resultValidation.IsValid) { return(BadRequest(resultValidation.Errors)); } User user = new User(id, name, email, password); resultValidation = new UserValidator().Validate(user); if (!resultValidation.IsValid) { return(BadRequest(resultValidation.Errors)); } return(Ok(userRepository.Update(user))); }