public async Task DeleteCommentRemovesCorrectly() { // Arrange var commentsList = this.GetComments(); var discussionList = this.GetDiscussions(); var expectedComments = commentsList.Count() - 1; var comment = commentsList[0]; var expectedId = comment.Id; var commentsRepoMock = this.GetCommentMock(commentsList).Object; var discussionRepoMock = this.GetDiscussionMock(discussionList).Object; var commentService = new DiscussionsService(discussionRepoMock, commentsRepoMock, this.commentVoteRepo, this.mediaRepo); // Act await commentService.DeleteComment(expectedId); // Assert Assert.Equal(expectedComments, commentsRepoMock.AllAsNoTracking().Count()); Assert.DoesNotContain(commentsRepoMock.AllAsNoTracking(), x => x.Id == expectedId); }