public AnswerTO Modify(AnswerTO entity) { if (entity is null) { throw new ArgumentNullException(nameof(entity)); } if (entity.Id <= 0) { throw new ArgumentException("Answer To Update Invalid Id"); } if (!askContext.Answers.Any(x => x.Id == entity.Id)) { throw new KeyNotFoundException($"Update(AnswerTO) Can't find Answer to update."); } var editedEntity = askContext.Answers.FirstOrDefault(e => e.Id == entity.Id && e.AssociatedQuestion.IsResolved != true); if (editedEntity != default) { entity.ToTrackedEF(editedEntity); } askContext.SaveChanges(); return(editedEntity.ToTransferObject()); }
public void ToTrackedEF_ProvidingNullEF_ThrowException() { //ARRANGE AnswerTO answer = null; AnswerEF answerToModify = null; //ACT Assert.ThrowsException <ArgumentNullException>(() => answer.ToTrackedEF(answerToModify)); }
public void ToTrackedEF_ProvidingNullTO_ThrowException() { //ARRANGE AnswerTO answer = null; DateTime date = DateTime.Now; var question = new QuestionEF { Id = 1, IsResolved = false, Message = "Je n'arrive pas à faire un test", Title = "Problème avec Tests", Date = date, AuthorId = 1 }; var answerToModify = new AnswerEF { Message = "En fait, c'est facile il faut toujorus faire des tests", AuthorId = 2, AssociatedQuestion = question, }; //ACT Assert.ThrowsException <ArgumentNullException>(() => answer.ToTrackedEF(answerToModify)); }