public async Task DeleteByIdAsync_WithCorrectData_ShouldSuccessfullyDelete() { var testTitle = "TestTitle"; // Arrange var context = ApplicationDbContextInMemoryFactory.InitializeContext(); var userReportRepository = new EfDeletableEntityRepository <UserReport>(context); var userReportsService = new UserReportsService(userReportRepository); var inputModel = new CreateUserReportInputModel() { Title = "TestTitle", Description = "TestDescription", }; await userReportsService.SendAsync(inputModel); var topicReport = userReportRepository.All().FirstOrDefault(c => c.Title == testTitle); // Act var expectedTopicReportsCount = 0; await userReportsService.DeleteByIdAsync(topicReport.Id); var actualCommentsCount = userReportRepository.All().Count(); // Assert Assert.Equal(expectedTopicReportsCount, actualCommentsCount); }
public async Task SendAsync(CreateUserReportInputModel input) { var userReport = new UserReport() { Title = input.Title, Description = input.Description, SenderId = input.SenderId, ReportedUserId = input.ReportedUserId, }; await this.userReportRepository.AddAsync(userReport); await this.userReportRepository.SaveChangesAsync(); }
public async Task <IActionResult> ReportUser(CreateUserReportInputModel input) { if (!this.ModelState.IsValid) { return(this.Redirect($"/Reports/Send?userId={input.ReportedUserId}")); } var senderId = this.User.FindFirstValue(ClaimTypes.NameIdentifier); input.SenderId = senderId; await this.userReportsService.SendAsync(input); return(this.Redirect("/")); }
public async Task SendAsync_ShouldSuccessfullyCreateTopicReport() { // Arrange var context = ApplicationDbContextInMemoryFactory.InitializeContext(); var userReportRepository = new EfDeletableEntityRepository <UserReport>(context); var userReportsService = new UserReportsService(userReportRepository); var inputModel = new CreateUserReportInputModel() { Title = "TestTitle", Description = "TestDescription", }; // Act var expectedUserReportsCount = 1; await userReportsService.SendAsync(inputModel); var actualUserReportsCount = userReportRepository.All().Count(); // Assert Assert.Equal(expectedUserReportsCount, actualUserReportsCount); }