Sitemap ======= Let's test the sitemap HTML markup is as we expect. First we need a test browser:: # BBB Zope 2.12 >>> try: ... from Testing.testbrowser import Browser ... except ImportError: ... from Products.Five.testbrowser import Browser >>> browser = Browser() A utility method helps to test against nice, space-separated sitemap markup:: >>> def sitemap(): ... browser.open('http://nohost/plone/sitemap') ... return ' '.join(browser.contents.split()) Start with the sitemap of the default content:: >>> ('
') in sitemap() True Let's change it to a deeper hierarchy of pages and folders:: >>> self.setRoles(['Manager']) >>> del self.portal['events'] >>> del self.portal['news'] >>> del self.portal['Members'] >>> _ = self.portal.invokeFactory('Folder', 'folder1') >>> _ = self.portal.invokeFactory('Document', 'doc1') >>> _ = self.portal.invokeFactory('Folder', 'folder2') >>> folder1 = getattr(self.portal, 'folder1') >>> _ = folder1.invokeFactory('Document', 'doc11') >>> _ = folder1.invokeFactory('Folder', 'folder11') >>> folder2 = getattr(self.portal, 'folder2') >>> _ = folder2.invokeFactory('Document', 'doc21') >>> folder11 = getattr(folder1, 'folder11') >>> _ = folder11.invokeFactory('Folder', 'folder111') >>> self.setRoles(['Member']) >>> ('') in sitemap() True