public async Task CreateMethodShouldAddRightPostReportInDatabase(string description, int postId) { var options = new DbContextOptionsBuilder <ForumDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options; var db = new ForumDbContext(options); var dateTimeProvider = new Mock <IDateTimeProvider>(); dateTimeProvider.Setup(dtp => dtp.Now()).Returns(new DateTime(2020, 3, 27)); var postReportsService = new PostReportsService(db, null, dateTimeProvider.Object); var authorId = Guid.NewGuid().ToString(); await postReportsService.CreateAsync(description, postId, authorId); var expected = new PostReport { Id = 1, Description = description, PostId = postId, AuthorId = authorId, CreatedOn = dateTimeProvider.Object.Now(), }; var actual = await db.PostReports.FirstOrDefaultAsync(); actual.Should().BeEquivalentTo(expected); }
public async Task CreateMethodShouldAddPostReportInDatabase(string description, int postId) { var options = new DbContextOptionsBuilder <ForumDbContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options; var db = new ForumDbContext(options); var dateTimeProvider = new Mock <IDateTimeProvider>(); dateTimeProvider.Setup(dtp => dtp.Now()).Returns(new DateTime(2020, 3, 27)); var postReportsService = new PostReportsService(db, null, dateTimeProvider.Object); await postReportsService.CreateAsync(description, postId, Guid.NewGuid().ToString()); db.PostReports.Should().HaveCount(1); }