public void CanAddAndRemoveAllCategories() { string hostname = UnitTestHelper.GenerateUniqueString(); var repository = new DatabaseObjectProvider(); repository.CreateBlog("empty title", "username", "password", hostname, string.Empty); UnitTestHelper.SetHttpContextWithBlogRequest(hostname, string.Empty, "/"); BlogRequest.Current.Blog = new DatabaseObjectProvider().GetBlog(hostname, ""); Entry entry = UnitTestHelper.CreateEntryInstanceForSyndication("Me", "Unit Test Entry", "Body"); int id = UnitTestHelper.Create(entry); int categoryId = UnitTestHelper.CreateCategory(Config.CurrentBlog.Id, "My Subtext UnitTest Category"); repository.SetEntryCategoryList(id, new[] { categoryId }); Entry loaded = UnitTestHelper.GetEntry(id, PostConfig.None, true); Assert.AreEqual("My Subtext UnitTest Category", loaded.Categories.First(), "Expected a category for this entry"); repository.SetEntryCategoryList(id, new int[] { }); loaded = UnitTestHelper.GetEntry(id, PostConfig.None, true); Assert.AreEqual(0, loaded.Categories.Count, "Expected that our category would be removed."); }
public void CanGetPostsByCategoryArchive() { UnitTestHelper.SetupBlog(); var repository = new DatabaseObjectProvider(); ICollection<ArchiveCount> counts = repository.GetPostCountsByCategory(); Assert.AreEqual(0, counts.Count); Entry entry = UnitTestHelper.CreateEntryInstanceForSyndication("me", "title", "body"); int categoryId = UnitTestHelper.CreateCategory(Config.CurrentBlog.Id, "Test"); int entryId = UnitTestHelper.Create(entry); repository.SetEntryCategoryList(entryId, new[] { categoryId }); counts = repository.GetPostCountsByCategory(); Assert.AreEqual(1, counts.Count); foreach (ArchiveCount archiveCount in counts) { Assert.AreEqual(1, archiveCount.Count, "Expected one post in the archive."); return; } }
public void CanGetCategoriesByPostId() { UnitTestHelper.SetupBlog(); var repository = new DatabaseObjectProvider(); int category1Id = repository.CreateLinkCategory(CreateCategory("Post Category 1", "Cody roolz!", CategoryType.PostCollection, true)); int category2Id = repository.CreateLinkCategory(CreateCategory("Post Category 2", "Cody roolz again!", CategoryType.PostCollection, true)); repository.CreateLinkCategory(CreateCategory("Post Category 3", "Cody roolz and again!", CategoryType.PostCollection, true)); Entry entry = UnitTestHelper.CreateEntryInstanceForSyndication("phil", "title", "body"); int entryId = UnitTestHelper.Create(entry); repository.SetEntryCategoryList(entryId, new[] { category1Id, category2Id }); ICollection<LinkCategory> categories = repository.GetLinkCategoriesByPostId(entryId); Assert.AreEqual(2, categories.Count, "Expected two of the three categories"); Assert.AreEqual(category1Id, categories.First().Id); Assert.AreEqual(category2Id, categories.ElementAt(1).Id); Assert.AreEqual(Config.CurrentBlog.Id, categories.First().BlogId); }