source: products/quintagroup.seoptimizer/trunk/quintagroup/seoptimizer/tests/testQSEOptimizerBaseURL.py @ 1493

Last change on this file since 1493 was 1493, checked in by liebster, 14 years ago

Modified structure tests

File size: 1.9 KB
Line 
1import re
2from base import getToolByName, FunctionalTestCase, newSecurityManager
3from config import *
4
5class TestBaseURL(FunctionalTestCase):
6
7    def afterSetUp(self):
8        self.qi = self.portal.portal_quickinstaller
9        self.qi.installProduct(PROJECT_NAME)
10        #self.portal.changeSkin('Plone Default')
11
12        self.basic_auth = 'portal_manager:secret'
13        uf = self.app.acl_users
14        uf.userFolderAddUser('portal_manager', 'secret', ['Manager'], [])
15        user = uf.getUserById('portal_manager')
16        if not hasattr(user, 'aq_base'):
17            user = user.__of__(uf)
18        newSecurityManager(None, user)
19
20    def test_notFolderBaseURL(self):
21        my_doc = self.portal.invokeFactory('Document', id='my_doc')
22        my_doc = self.portal['my_doc']
23        regen = re.compile('<base\s+[^>]*href=\"([^\"]*)\"[^>]*>', re.S|re.M)
24
25        path = "/%s" % my_doc.absolute_url(1)
26        html = self.publish(path, self.basic_auth).getBody()
27        burls = regen.findall(html)
28
29        mydocurl = my_doc.absolute_url()
30        self.assert_(not [1 for burl in burls if not burl==mydocurl],
31           "Wrong BASE URL for document: %s, all must be: %s" % (burls, mydocurl))
32
33    def test_folderBaseURL(self):
34        my_fldr = self.portal.invokeFactory('Folder', id='my_fldr')
35        my_fldr = self.portal['my_fldr']
36        regen = re.compile('<base\s+[^>]*href=\"([^\"]*)\"[^>]*>', re.S|re.M)
37       
38        path = "/%s" % my_fldr.absolute_url(1)
39        html = self.publish(path, self.basic_auth).getBody()
40        burls = regen.findall(html)
41
42        myfldrurl = my_fldr.absolute_url() + '/'
43        self.assert_(not [1 for burl in burls if not burl==myfldrurl],
44           "Wrong BASE URL for folder: %s , all must be : %s" % (burls, myfldrurl))
45
46def test_suite():
47    from unittest import TestSuite, makeSuite
48    suite = TestSuite()
49    suite.addTest(makeSuite(TestBaseURL))
50    return suite
Note: See TracBrowser for help on using the repository browser.