public void GetAllCommentsCreatedInTimeRange_SomeAreOutOfRange_CorrectDataReturned() { // Arrange var until = DateTime.Now; var from = until.AddDays(-5); var outOfRangeComment = RandomDataEntityGenerator.CreateCommentWithRandomData(); outOfRangeComment.CreatedDateTime = until.AddMinutes(1); var comment2 = RandomDataEntityGenerator.CreateCommentWithRandomData(); comment2.CreatedDateTime = from.AddDays(2); var outOfRangeComment1 = RandomDataEntityGenerator.CreateCommentWithRandomData(); outOfRangeComment1.CreatedDateTime = from.AddMinutes(-1); TestDataContext.Comments.AddRange(new[] { outOfRangeComment, comment2, outOfRangeComment1 }); TestDataContext.SaveChanges(); // Act var result = _SUT.GetCommentsCreatedInRange(from, until); // Assert Assert.AreEqual(1, result.Count); }
public void GetPostsWithCommentsCreatedInRange_WhenMultipleCommentsPerPost_CorrectAmountReturned() { // Arrange var until = DateTime.Now.AddDays(-1); var from = until.AddDays(-5); var user = RandomDataEntityGenerator.CreateUserWithRandomData(); var post = RandomDataEntityGenerator.CreatePostWithRandomData(false); post.User = user; post.CreatedTime = from.AddDays(1); var comment1 = RandomDataEntityGenerator.CreateCommentWithRandomData(false); comment1.User = user; comment1.Post = post; var comment2 = RandomDataEntityGenerator.CreateCommentWithRandomData(false); comment2.User = user; comment2.Post = post; TestDataContext.Comments.AddRange(new[] { comment1, comment2 }); TestDataContext.SaveChanges(); // Act var result = _SUT.GetPostsWithCommentsCreatedInRange(from, until); // Assert Assert.AreEqual(1, result.Count()); }
public void GetAllCommentsCreatedInTimeRange_WhenAllInInclusiveRange_CorrectDataReturned() { // Arrange var until = DateTime.Now; var from = until.AddDays(-5); var comment1 = RandomDataEntityGenerator.CreateCommentWithRandomData(); comment1.CreatedDateTime = until; var comment2 = RandomDataEntityGenerator.CreateCommentWithRandomData(); comment2.CreatedDateTime = from.AddDays(2); var comment3 = RandomDataEntityGenerator.CreateCommentWithRandomData(); comment3.CreatedDateTime = from; TestDataContext.Comments.AddRange(new[] { comment1, comment2, comment3 }); TestDataContext.SaveChanges(); // Act var result = _SUT.GetCommentsCreatedInRange(from, until); // Assert Assert.AreEqual(3, result.Count); }
public void LazyLoad_ForeignKeyNotNullable_FetchesProperly() { // Arrange var comment = RandomDataEntityGenerator.CreateCommentWithRandomData(); using (var dbContext = CreateTestDataContext()) { dbContext.Comments.Add(comment); dbContext.SaveChanges(); } // Act var dbComment = TestDataContext.Comments.Find(comment.Id); // lazy loading var post = dbComment.Post; // second level var userOfPost = post.User; // Assert Assert.IsNotNull(post); Assert.IsNotNull(userOfPost); }
public void GetPostsWithCommentsCreatedInRange_WhenAllInExclusiveRange_CorrectDataReturned() { // Arrange var until = DateTime.Now.AddDays(-1); var from = until.AddDays(-5); var comment1 = RandomDataEntityGenerator.CreateCommentWithRandomData(); var comment2 = RandomDataEntityGenerator.CreateCommentWithRandomData(); var comment3 = RandomDataEntityGenerator.CreateCommentWithRandomData(); TestDataContext.Comments.AddRange(new[] { comment1, comment2, comment3 }); TestDataContext.SaveChanges(); // Act var result = _SUT.GetPostsWithCommentsCreatedInRange(from, until); // Assert Assert.IsNotNull(result.FirstOrDefault(c => c.Id == comment1.PostId)); Assert.IsNotNull(result.FirstOrDefault(c => c.Id == comment2.PostId)); Assert.IsNotNull(result.FirstOrDefault(c => c.Id == comment3.PostId)); }