public GetAllBlogs ( Database database = null ) : Sitecore.Modules.WeBlog.Data.Items.BlogHomeItem[] | ||
database | Database | The database to get the blogs from. If null, use the context database |
return | Sitecore.Modules.WeBlog.Data.Items.BlogHomeItem[] |
public void GetAllBlogs_ExcludeBlogOutsideContentRoot() { var blogTemplateId = ID.NewID; var blog1Id = ID.NewID; var blog2Id = ID.NewID; var settings = Mock.Of<IWeBlogSettings>(x => x.ContentRootPath == "/sitecore/content/alpha" && x.BlogTemplateIds == new[] { ID.NewID, blogTemplateId, ID.NewID } ); var manager = new BlogManager(settings); using (var db = new Db { new DbItem("alpha") { new DbItem("blog 1", blog1Id, blogTemplateId) }, new DbItem("beta") { new DbItem("blog 2", blog2Id, blogTemplateId) } }) { var item = db.GetItem("/sitecore/content/alpha"); var blogTemplate = item.Database.GetTemplate(blogTemplateId); var linkDb = Mock.Of<LinkDatabase>(x => x.GetReferrers(blogTemplate) == new[] { new ItemLink("master", blog1Id, ID.Null, "master", blogTemplateId, blogTemplateId.ToString()), new ItemLink("master", blog2Id, ID.Null, "master", blogTemplateId, blogTemplateId.ToString()) }); using (new LinkDatabaseSwitcher(linkDb)) { var blogs = manager.GetAllBlogs(item.Database); var ids = from blog in blogs select blog.ID; Assert.That(ids, Is.EquivalentTo(new[] { blog1Id })); } } }
public void GetAllBlogs_None() { var settings = Mock.Of<IWeBlogSettings>(x => x.ContentRootPath == "/sitecore/content" && x.BlogTemplateIds == new[] { ID.NewID } ); var manager = new BlogManager(settings); using (var db = new Db()) { var item = db.GetItem("/sitecore/content"); var blogs = manager.GetAllBlogs(item.Database); Assert.That(blogs, Is.Empty); } }