public void GetRecentPostsIncludesEnclosure() { int blogId = Config.CurrentBlog.Id; for (int i = 0; i < 10; i++) { UnitTestHelper.CreateCategory(blogId, "cat" + i); } //Create some entries. Entry entryZero = UnitTestHelper.CreateEntryInstanceForSyndication("me", "title-zero", "body-zero"); Thread.Sleep(100); Entry entryOne = UnitTestHelper.CreateEntryInstanceForSyndication("me", "title-one", "body-one"); Thread.Sleep(100); Entry entryTwo = UnitTestHelper.CreateEntryInstanceForSyndication("me", "title-two", "body-two"); //Associate categories. for (int i = 0; i < 5; i++) { entryZero.Categories.Add("cat" + (i + 1)); entryOne.Categories.Add("cat" + i); } entryTwo.Categories.Add("cat8"); //Persist entries. UnitTestHelper.Create(entryZero); UnitTestHelper.Create(entryOne); UnitTestHelper.Create(entryTwo); var repository = new DatabaseObjectProvider(); Enclosure enc = UnitTestHelper.BuildEnclosure("Nothing to see here.", "httP://blablabla.com", "audio/mp3", entryZero.Id, 12345678, true, true); repository.Create(enc); //Get Entries ICollection <Entry> entries = repository.GetEntries(3, PostType.BlogPost, PostConfig.IsActive, true); //Test outcome Assert.AreEqual(3, entries.Count, "Expected to find three entries."); Assert.AreEqual(entries.First().Id, entryTwo.Id, "Ordering is off."); Assert.AreEqual(entries.ElementAt(1).Id, entryOne.Id, "Ordering is off."); Assert.AreEqual(entries.ElementAt(2).Id, entryZero.Id, "Ordering is off."); Assert.AreEqual(1, entries.First().Categories.Count); Assert.AreEqual(5, entries.ElementAt(1).Categories.Count); Assert.AreEqual(5, entries.ElementAt(2).Categories.Count); Assert.IsNull(entries.First().Enclosure, "Entry should not have enclosure."); Assert.IsNull(entries.ElementAt(1).Enclosure, "Entry should not have enclosure."); Assert.IsNotNull(entries.ElementAt(2).Enclosure, "Entry should have enclosure."); UnitTestHelper.AssertEnclosures(enc, entries.ElementAt(2).Enclosure); }
public void GetRecentPostsDoesNotIncludeFuturePosts() { // Arrange var repository = new DatabaseObjectProvider(); DateTime utcNow = DateTime.UtcNow.AddMinutes(-5); //Create some entries. Entry entryZero = UnitTestHelper.CreateEntryInstanceForSyndication("me", "title-zero", "body-zero", null, utcNow); Entry entryOne = UnitTestHelper.CreateEntryInstanceForSyndication("me", "title-one", "body-one", null, utcNow.AddMinutes(1)); Entry entryTwo = UnitTestHelper.CreateEntryInstanceForSyndication("me", "title-two", "body-two", null, utcNow.AddMinutes(2)); UnitTestHelper.Create(entryZero); UnitTestHelper.Create(entryOne); entryTwo.DatePublishedUtc = utcNow.AddMinutes(20); UnitTestHelper.Create(entryTwo); // Act ICollection <Entry> entries = repository.GetEntries(3, PostType.BlogPost, PostConfig.IsActive, true); // Assert Assert.AreEqual(2, entries.Count, "Expected to find two entries."); Assert.AreEqual(entries.First().Id, entryOne.Id, "Ordering is off."); Assert.AreEqual(entries.ElementAt(1).Id, entryZero.Id, "Ordering is off."); }
public IPagedCollection <EntryStatsView> GetPagedItems(int pageIndex, int pageSize) { var repository = new DatabaseObjectProvider(); return(repository.GetEntries(PostType.BlogPost, _categoryId, pageIndex, pageSize)); }