public async Task DeleteByIdAsync_WithCorrectData_ShouldSuccessfullyDelete() { var testTitle = "TestTitle"; // Arrange var context = ApplicationDbContextInMemoryFactory.InitializeContext(); var topicReportRepository = new EfDeletableEntityRepository <TopicReport>(context); var topicReportsService = new TopicReportsService(topicReportRepository); var inputModel = new CreateTopicReportInputModel() { Title = "TestTitle", Description = "TestDescription", }; await topicReportsService.SendAsync(inputModel); var topicReport = topicReportRepository.All().FirstOrDefault(c => c.Title == testTitle); // Act var expectedTopicReportsCount = 0; await topicReportsService.DeleteByIdAsync(topicReport.Id); var actualCommentsCount = topicReportRepository.All().Count(); // Assert Assert.Equal(expectedTopicReportsCount, actualCommentsCount); }
public async Task SendAsync(CreateTopicReportInputModel input) { var topicReport = new TopicReport() { Title = input.Title, Description = input.Description, SenderId = input.SenderId, TopicId = input.TopicId, }; await this.topicReportRepository.AddAsync(topicReport); await this.topicReportRepository.SaveChangesAsync(); }
public async Task <IActionResult> ReportTopic(CreateTopicReportInputModel input) { if (!this.ModelState.IsValid) { return(this.Redirect($"/Reports/ReportTopic?topicId={input.TopicId}")); } var senderId = this.User.FindFirstValue(ClaimTypes.NameIdentifier); input.SenderId = senderId; await this.topicReportsService.SendAsync(input); return(this.Redirect("/")); }
public async Task SendAsync_ShouldSuccessfullyCreateTopicReport() { // Arrange var context = ApplicationDbContextInMemoryFactory.InitializeContext(); var topicReportRepository = new EfDeletableEntityRepository <TopicReport>(context); var topicReportsService = new TopicReportsService(topicReportRepository); var inputModel = new CreateTopicReportInputModel() { Title = "TestTitle", Description = "TestDescription", }; // Act var expectedTopicReportsCount = 1; await topicReportsService.SendAsync(inputModel); var actualTopicReportsCount = topicReportRepository.All().Count(); // Assert Assert.Equal(expectedTopicReportsCount, actualTopicReportsCount); }