import re
from base import getToolByName, FunctionalTestCase, newSecurityManager
from config import *
class TestExposeDCMetaTags(FunctionalTestCase):
def afterSetUp(self):
self.qi = self.portal.portal_quickinstaller
self.sp = self.portal.portal_properties.site_properties
self.qi.installProduct(PROJECT_NAME)
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)
'''Preparation for functional testing'''
self.my_doc = self.portal.invokeFactory('Document', id='my_doc')
self.my_doc = self.portal['my_doc']
def test_exposeDCMetaTags_in_configletOn(self):
path = self.portal.id+'/@@seo-controlpanel?exposeDCMetaTags=True&form.submitted=1'
self.publish(path, self.basic_auth)
self.assert_(self.sp.exposeDCMetaTags)
def test_exposeDCMetaTags_in_configletOff(self):
self.publish(self.portal.id+'/@@seo-controlpanel?form.submitted=1', self.basic_auth)
self.assert_(not self.sp.exposeDCMetaTags)
def test_exposeDCMetaTagsPropertyOff(self):
self.sp.manage_changeProperties(exposeDCMetaTags = False)
self.html = str(self.publish(self.portal.id+'/my_doc', self.basic_auth))
m1 = re.match('.*', self.html, re.S|re.M)
if not m1:
m1 = re.match('.*', self.html, re.S|re.M)
m2 = re.match('.*', self.html, re.S|re.M)
if not m2:
m2 = re.match('.*', self.html, re.S|re.M)
m = m1 or m2
self.assert_(not m, 'DC meta tags avaliable when exposeDCMetaTags=False')
def test_exposeDCMetaTagsPropertyOn(self):
self.sp.manage_changeProperties(exposeDCMetaTags = True)
self.html = str(self.publish(self.portal.id+'/my_doc', self.basic_auth))
m1 = re.match('.*', self.html, re.S|re.M)
if not m1:
m1 = re.match('.*', self.html, re.S|re.M)
m2 = re.match('.*', self.html, re.S|re.M)
if not m2:
m2 = re.match('.*', self.html, re.S|re.M)
m = m1 and m2
self.assert_(m, 'DC meta tags not avaliable when createManager=True')
def test_suite():
from unittest import TestSuite, makeSuite
suite = TestSuite()
suite.addTest(makeSuite(TestExposeDCMetaTags))
return suite