public void GetCategories_NoCategories() { var settings = MockSettings(ID.NewID); var manager = new CategoryManager(settings); using (var db = new Db { new DbItem("blog", ID.NewID, settings.BlogTemplateIds.First()) { new DbItem("Categories", ID.NewID, ID.NewID), new DbItem("Entries", ID.NewID, ID.NewID) { new DbItem("entry1", ID.NewID, settings.EntryTemplateIds.First()) } } }) { var entryItem = db.GetItem("/sitecore/content/blog/entries/entry1"); var categories = manager.GetCategories(entryItem); Assert.That(categories, Is.Empty); } }
public void GetCategories(string startItemPath, bool expectCategories) { var settings = MockSettings(ID.NewID); var manager = new CategoryManager(settings); using (var db = new Db { new DbItem("blog", ID.NewID, settings.BlogTemplateIds.First()) { new DbItem("Categories", ID.NewID, ID.NewID) { new DbItem("alpha", ID.NewID, settings.CategoryTemplateIds.First()), new DbItem("beta", ID.NewID, settings.CategoryTemplateIds.First()), new DbItem("gamma", ID.NewID, settings.CategoryTemplateIds.First()) }, new DbItem("a folder", ID.NewID, ID.NewID) { new DbItem("entry1", ID.NewID, settings.EntryTemplateIds.First()) } } }) { var startItem = string.IsNullOrEmpty(startItemPath) ? null : db.GetItem(startItemPath); var categories = manager.GetCategories(startItem); var categoryNames = from c in categories select c.Name; if (expectCategories) Assert.That(categoryNames, Is.EquivalentTo(new [] { "alpha", "beta", "gamma" })); else Assert.That(categoryNames, Is.Empty); } }
public void GetCategories_MixedTemplates() { var settings = MockSettings(ID.NewID, ID.NewID, ID.NewID); var manager = new CategoryManager(settings); using (var db = new Db { new DbItem("blog", ID.NewID, settings.BlogTemplateIds.First()) { new DbItem("Categories", ID.NewID, ID.NewID) { new DbItem("alpha", ID.NewID, settings.CategoryTemplateIds.ElementAt(0)), new DbItem("beta", ID.NewID, settings.CategoryTemplateIds.ElementAt(1)), new DbItem("gamma", ID.NewID, settings.CategoryTemplateIds.ElementAt(2)) }, new DbItem("Entries", ID.NewID, ID.NewID) { new DbItem("entry1", ID.NewID, settings.EntryTemplateIds.First()) } } }) { var entryItem = db.GetItem("/sitecore/content/blog/entries/entry1"); var categories = manager.GetCategories(entryItem); var categoryNames = from c in categories select c.Name; Assert.That(categoryNames, Is.EquivalentTo(new[] { "alpha", "beta", "gamma" })); } }