1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
|
from unittest import TestCase
import Zope
from Products.Squishdot import manage_addSquishdot
from Products.Squishdot.Utility import addFile, createUploadable
from OFS.Folder import Folder
from Testing.makerequest import makerequest
from AccessControl.SecurityManagement import newSecurityManager
from AccessControl.User import UnrestrictedUser
class Base(TestCase):
def setUp(self):
self.app = makerequest(Zope.app())
# Log in as a god :-)
newSecurityManager(None, UnrestrictedUser('god',
'god',
[],
''))
def tearDown(self):
get_transaction().abort()
self.app._p_jar.close()
class SquishdotBase(Base):
def setUp(self):
Base.setUp(self)
app = self.app
try: app._delObject('squishdottest')
except AttributeError: pass
app.manage_addFolder('squishdottest')
self.Folder = app.squishdottest
manage_addSquishdot(self.Folder,'testSquish',default_doc='demo1')
self.Site = app.squishdottest.testSquish
def _addPosting(self,**kw):
Site = self.Site
REQUEST = {}
filepath = kw.get('filepath',None)
if filepath is not None:
file = createUploadable(filepath)
del kw['filepath']
else:
file = ''
object = kw.get('object',Site)
if object is not Site:
del kw['object']
for attribute in kw.keys():
REQUEST[attribute]=kw[attribute]
return object.addPosting(file,REQUEST)
def _getPosting(self,title=None):
REQUEST={}
if title is not None:
REQUEST['title']=title
brains = self.Site(REQUEST)
return brains[0].getObject()
|