import re
from base import getToolByName, FunctionalTestCase, newSecurityManager
from config import *
class TestBaseURL(FunctionalTestCase):
def afterSetUp(self):
self.qi = self.portal.portal_quickinstaller
self.qi.installProduct(PROJECT_NAME)
#self.portal.changeSkin('Plone Default')
self.basic_auth = 'portal_manager:secret'
uf = self.app.acl_users
uf.userFolderAddUser('portal_manager', 'secret', ['Manager'], [])
user = uf.getUserById('portal_manager')
if not hasattr(user, 'aq_base'):
user = user.__of__(uf)
newSecurityManager(None, user)
def test_notFolderBaseURL(self):
my_doc = self.portal.invokeFactory('Document', id='my_doc')
my_doc = self.portal['my_doc']
regen = re.compile(']*href=\"([^\"]*)\"[^>]*>', re.S|re.M)
path = "/%s" % my_doc.absolute_url(1)
html = self.publish(path, self.basic_auth).getBody()
burls = regen.findall(html)
mydocurl = my_doc.absolute_url()
self.assert_(not [1 for burl in burls if not burl==mydocurl],
"Wrong BASE URL for document: %s, all must be: %s" % (burls, mydocurl))
def test_folderBaseURL(self):
my_fldr = self.portal.invokeFactory('Folder', id='my_fldr')
my_fldr = self.portal['my_fldr']
regen = re.compile(']*href=\"([^\"]*)\"[^>]*>', re.S|re.M)
path = "/%s" % my_fldr.absolute_url(1)
html = self.publish(path, self.basic_auth).getBody()
burls = regen.findall(html)
myfldrurl = my_fldr.absolute_url() + '/'
self.assert_(not [1 for burl in burls if not burl==myfldrurl],
"Wrong BASE URL for folder: %s , all must be : %s" % (burls, myfldrurl))
def test_suite():
from unittest import TestSuite, makeSuite
suite = TestSuite()
suite.addTest(makeSuite(TestBaseURL))
return suite