/// <summary> /// This method adds a new question to the database and saves this in a variable /// </summary> private void initializeTestData() { using (IntelliCloudContext ctx = new IntelliCloudContext()) { UserEntity newEmployee = new UserEntity(); newEmployee.CreationTime = DateTime.UtcNow; newEmployee.FirstName = "employee"; newEmployee.Type = Common.DataTransfer.UserType.Employee; ctx.Users.Add(newEmployee); ctx.SaveChanges(); this.employee = newEmployee; AnswerEntity newAnswer = new AnswerEntity(); newAnswer.CreationTime = DateTime.UtcNow; newAnswer.Content = "Integration test for answer"; newAnswer.AnswerState = AnswerState.UnderReview; newAnswer.IsPrivate = false; newAnswer.LanguageDefinition = new LanguageDefinitionEntity() {Name = "Dutch", ResourceName = "NL"}; newAnswer.User = newEmployee; ctx.Answers.Add(newAnswer); ctx.SaveChanges(); this.answer = newAnswer; ReviewEntity newReview = new ReviewEntity(); newReview.CreationTime = DateTime.UtcNow; newReview.Content = "Integration test for review"; newReview.ReviewState = ReviewState.Open; newReview.User = newEmployee; newReview.Answer = newAnswer; ctx.Reviews.Add(newReview); ctx.SaveChanges(); this.review = newReview; } }
public void CreateReview(int employeeId, int answerId, string review) { Validation.IdCheck(answerId); Validation.IdCheck(employeeId); Validation.StringCheck(review); using (var context = new IntelliCloudContext()) { ReviewEntity reviewEntity = new ReviewEntity(); var answer = context.Answers.SingleOrDefault(q => q.Id.Equals(answerId)); if (review != null) { reviewEntity.Answer = answer; } else { throw new NotFoundException("Sequence contains no elements"); } var user = context.Users.SingleOrDefault(u => u.Id.Equals(employeeId)); if (user != null) { reviewEntity.User = user; } else { throw new NotFoundException("Sequence contains no elements"); } reviewEntity.Content = review; reviewEntity.ReviewState = ReviewState.Open; context.Reviews.Add(reviewEntity); context.SaveChanges(); } }