def test_blacklisting_intermediate_wildcards_does_not_affect_parents(self): config = IConfig(self.portal) config.setPathBlacklist(PersistentList()) config.appendPathToBlacklist('/demo/one*two') blacklist = IPathBlacklist(self.portal) self.assertFalse(blacklist.is_blacklisted('/demo/one')) self.assertFalse(blacklist.is_blacklisted('/demo/oneXtwo')) self.assertFalse(blacklist.is_blacklisted('/demo/one/two'))
def test_blacklist_does_not_affect_parents(self): config = IConfig(self.portal) config.setPathBlacklist(PersistentList()) config.appendPathToBlacklist('/foo/bar/one/two/three') blacklist = IPathBlacklist(self.portal) self.assertFalse(blacklist.is_blacklisted('/foo/bar')) self.assertFalse(blacklist.is_blacklisted('/foo/bar/one/two')) self.assertTrue(blacklist.is_blacklisted('/foo/bar/one/two/three'))
def test_blacklisting_intermediate_wildcards_does_not_affect_parents(self): config = IConfig(self.portal) config.setPathBlacklist(PersistentList()) config.appendPathToBlacklist('/demo/one*two') blacklist = IPathBlacklist(self.portal) self.assertFalse(blacklist.is_blacklisted('/demo/one')) self.assertFalse(blacklist.is_blacklisted('/demo/oneXtwo')) self.assertFalse(blacklist.is_blacklisted('/demo/one/two'))
def test_blacklist_does_not_affect_parents(self): config = IConfig(self.portal) config.setPathBlacklist(PersistentList()) config.appendPathToBlacklist('/foo/bar/one/two/three') blacklist = IPathBlacklist(self.portal) self.assertFalse(blacklist.is_blacklisted('/foo/bar')) self.assertFalse(blacklist.is_blacklisted('/foo/bar/one/two')) self.assertTrue(blacklist.is_blacklisted('/foo/bar/one/two/three'))
def test_portal_can_be_blacklisted(self): config = IConfig(self.portal) config.setPathBlacklist(PersistentList()) blacklist = IPathBlacklist(self.portal) # The portal is not blacklisted by default. self.assertFalse(blacklist.is_blacklisted(self.portal)) # Blacklist the portal. config.appendPathToBlacklist('/'.join(self.portal.getPhysicalPath())) self.assertTrue(blacklist.is_blacklisted(self.portal))
def test_item_can_be_added_to_blacklist(self): config = IConfig(self.portal) config.setPathBlacklist(PersistentList()) # The blacklist is empty by default. self.assertEqual(0, len(config.getPathBlacklist())) # Items can be added to the blacklist. config.appendPathToBlacklist('hans') self.assertIn('hans', config.getPathBlacklist()) self.assertEqual(1, len(config.getPathBlacklist()))
def test_portal_can_be_blacklisted(self): config = IConfig(self.portal) config.setPathBlacklist(PersistentList()) blacklist = IPathBlacklist(self.portal) # The portal is not blacklisted by default. self.assertFalse(blacklist.is_blacklisted(self.portal)) # Blacklist the portal. config.appendPathToBlacklist('/'.join(self.portal.getPhysicalPath())) self.assertTrue(blacklist.is_blacklisted(self.portal))
def handleAdd(self, action): portal = self.context.portal_url.getPortalObject() config = IConfig(portal) data, errors = self.extractData() if not len(errors): path = data.get('path').strip() if not path.startswith('/'): raise Exception('Path does not start with /') config.appendPathToBlacklist(path) message = _(u'info_path_added', default=u'Path added') IStatusMessage(self.request).addStatusMessage(message, type='info') return self.request.RESPONSE.redirect( './@@publisher-config-blacklist')
def test_item_can_be_added_to_blacklist(self): config = IConfig(self.portal) config.setPathBlacklist(PersistentList()) # The blacklist is empty by default. self.assertEqual(0, len(config.getPathBlacklist())) # Items can be added to the blacklist. config.appendPathToBlacklist('hans') self.assertIn( 'hans', config.getPathBlacklist() ) self.assertEqual(1, len(config.getPathBlacklist()))
def handleAdd(self, action): portal = self.context.portal_url.getPortalObject() config = IConfig(portal) data, errors = self.extractData() if not len(errors): path = data.get('path').strip() if not path.startswith('/'): raise Exception('Path does not start with /') config.appendPathToBlacklist(path) message = _(u'info_path_added', default=u'Path added') IStatusMessage(self.request).addStatusMessage( message, type='info') return self.request.RESPONSE.redirect('./@@publisher-config-blacklist')