Back to index

plone3  3.1.7
Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes
ATContentTypes.tests.atcttestcase.ATCTTypeTestCase Class Reference
Inheritance diagram for ATContentTypes.tests.atcttestcase.ATCTTypeTestCase:
Inheritance graph
[legend]
Collaboration diagram for ATContentTypes.tests.atcttestcase.ATCTTypeTestCase:
Collaboration graph
[legend]

List of all members.

Public Member Functions

def afterSetUp
def test_000testsetup
def test_dcEdit
def test_typeInfo
def test_doesImplementDC
def test_doesImplementATCT
def test_doesImplementZ3ATCT
def test_doesImplementAT
def test_implementsTranslateable
def test_not_implements_ITemplateMixin
def test_implements_ISelectableBrowserDefault
def compareDC
def test_idValidation
def test_getobjpositioninparent
def test_schema_marshall
def beforeTearDown

Static Public Attributes

 klass = None
 cmf_klass = None
string portal_type = ''
string cmf_portal_type = ''
string title = ''
string meta_type = ''
string icon = ''

Private Member Functions

def _createType

Private Attributes

 _ATCT
 _cmf

Detailed Description

AT Content Types test

Tests some basics of a type

Definition at line 75 of file atcttestcase.py.


Member Function Documentation

def ATContentTypes.tests.atcttestcase.ATCTTypeTestCase._createType (   self,
  context,
  portal_type,
  id,
  kwargs 
) [private]
Helper method to create a new type

Definition at line 95 of file atcttestcase.py.

00095 
00096     def _createType(self, context, portal_type, id, **kwargs):
00097         """Helper method to create a new type
00098         """
00099         ttool = getToolByName(context, 'portal_types')
00100         cat = self.portal.portal_catalog
00101 
00102         fti = ttool.getTypeInfo(portal_type)
00103         fti.constructInstance(context, id, **kwargs)
00104         obj = getattr(context.aq_inner.aq_explicit, id)
00105         cat.indexObject(obj)
00106         return obj

Here is the call graph for this function:

Here is the caller graph for this function:

Reimplemented in ATContentTypes.tests.test_attopic.TestSiteATTopic.

Definition at line 89 of file atcttestcase.py.

00089 
00090     def afterSetUp(self):
00091         #self.setRoles(['Manager', 'Member'])
00092         self._ATCT = self._createType(self.folder, self.portal_type, 'ATCT')
00093         if self.cmf_klass:
00094             self._cmf = self._createType(self.folder, self.cmf_portal_type, 'cmf')

Definition at line 231 of file atcttestcase.py.

00231 
00232     def beforeTearDown(self):
00233         self.logout()

Here is the call graph for this function:

def ATContentTypes.tests.atcttestcase.ATCTTypeTestCase.compareDC (   self,
  first,
  second = None,
  kwargs 
)

Definition at line 181 of file atcttestcase.py.

00181 
00182     def compareDC(self, first, second=None, **kwargs):
00183         """
00184         """
00185         if second != None:
00186             title = second.Title()
00187             description = second.Description()
00188         else:
00189             title = kwargs.get('title')
00190             description = kwargs.get('description')
00191 
00192         self.failUnlessEqual(first.Title(), title)
00193         self.failUnlessEqual(first.Description(), description)

Here is the caller graph for this function:

Definition at line 107 of file atcttestcase.py.

00107 
00108     def test_000testsetup(self):
00109         # test if we really have the right test setup
00110         # vars
00111         self.failUnless(self.klass)
00112         self.failUnless(self.portal_type)
00113         self.failUnless(self.title)
00114         self.failUnless(self.meta_type)
00115         self.failUnless(self.icon)
00116         if self.cmf_klass:
00117             self.failUnless(self.cmf_klass)
00118             self.failUnless(self.cmf_portal_type)
00119 
00120         # portal types
00121         self.failUnlessEqual(self._ATCT.portal_type, self.portal_type)
00122         if self.cmf_klass:
00123             self.failUnlessEqual(self._cmf.portal_type, self.cmf_portal_type)
00124 
00125         # classes
00126         atct_class = self._ATCT.__class__
00127         self.failUnlessEqual(self.klass, atct_class)
00128         if self.cmf_klass:
00129             cmf_class = self._cmf.__class__
00130             self.failUnlessEqual(self.cmf_klass, cmf_class)

Reimplemented in ATContentTypes.tests.test_atimage.TestSiteATImage.

Definition at line 131 of file atcttestcase.py.

00131 
00132     def test_dcEdit(self):
00133         new = self._ATCT
00134         dcEdit(new)
00135         if self.cmf_klass:
00136             old = self._cmf
00137             dcEdit(old)
00138             self.compareDC(old, new)

Here is the call graph for this function:

Definition at line 160 of file atcttestcase.py.

00160 
00161     def test_doesImplementAT(self):
00162         self.failUnless(IBaseContent.isImplementedBy(self._ATCT))
00163         self.failUnless(IReferenceable.isImplementedBy(self._ATCT))
00164         self.failUnless(verifyObject(IBaseContent, self._ATCT))
00165         self.failUnless(verifyObject(IReferenceable, self._ATCT))

Definition at line 152 of file atcttestcase.py.

00152 
00153     def test_doesImplementATCT(self):
00154         self.failUnless(IATContentType.isImplementedBy(self._ATCT))
00155         self.failUnless(verifyObject(IATContentType, self._ATCT))

Definition at line 146 of file atcttestcase.py.

00146 
00147     def test_doesImplementDC(self):
00148         self.failUnless(IDublinCore.isImplementedBy(self._ATCT))
00149         self.failUnless(IMutableDublinCore.isImplementedBy(self._ATCT))
00150         self.failUnless(verifyObject(IDublinCore, self._ATCT))
00151         self.failUnless(verifyObject(IMutableDublinCore, self._ATCT))

Definition at line 156 of file atcttestcase.py.

00156 
00157     def test_doesImplementZ3ATCT(self):
00158         iface = Z3IATContentType
00159         self.failUnless(Z3verifyObject(iface, self._ATCT))

Definition at line 215 of file atcttestcase.py.

00215 
00216     def test_getobjpositioninparent(self):
00217         # TODO: not a real test
00218         self._ATCT.getObjPositionInParent()

Definition at line 194 of file atcttestcase.py.

00194 
00195     def test_idValidation(self):
00196         self.setRoles(['Manager', 'Member']) # for ATTopic
00197         asdf = self._createType(self.folder, self.portal_type, 'asdf')
00198         asdf2 = self._createType(self.folder, self.portal_type, 'asdf2')
00199         self.setRoles(['Member'])
00200 
00201         request = FakeRequestSession()
00202 
00203         # invalid ids
00204         ids = ['asdf2', '???', '/asdf2', ' asdf2', 'portal_workflow',
00205             'portal_url']
00206         for id in ids:
00207             request.form = {'id':id, 'fieldset':'default'}
00208             self.assertNotEquals(asdf.validate(REQUEST=request), {}, "Not catched id: %s" % id)
00209 
00210         # valid ids
00211         ids = ['', 'abcd', 'blafasel']
00212         for id in ids:
00213             request.form = {'id':id}
00214             self.assertEquals(asdf.validate(REQUEST=request), {})

Here is the call graph for this function:

Definition at line 176 of file atcttestcase.py.

00176 
00177     def test_implements_ISelectableBrowserDefault(self):
00178         iface = ISelectableBrowserDefault
00179         self.failUnless(iface.providedBy(self._ATCT))
00180         self.failUnless(Z3verifyObject(iface, self._ATCT))

Definition at line 166 of file atcttestcase.py.

00166 
00167     def test_implementsTranslateable(self):
00168         # lingua plone is adding the ITranslatable interface to all types
00169         if not HAS_LINGUA_PLONE:
00170             return
00171         self.failUnless(ITranslatable.isImplementedBy(self._ATCT))
00172         self.failUnless(verifyObject(ITranslatable, self._ATCT))

Definition at line 173 of file atcttestcase.py.

00173 
00174     def test_not_implements_ITemplateMixin(self):
00175         self.failIf(ITemplateMixin.isImplementedBy(self._ATCT))

Reimplemented in ATContentTypes.tests.test_attopic.TestSiteATTopic, ATContentTypes.tests.test_atimage.TestSiteATImage, ATContentTypes.tests.test_atfolder.TestSiteATBTreeFolder, ATContentTypes.tests.test_atfolder.TestSiteATFolder, and ATContentTypes.tests.test_atfile.TestSiteATFile.

Definition at line 219 of file atcttestcase.py.

00219 
00220     def test_schema_marshall(self):
00221         atct = self._ATCT
00222         schema = atct.Schema()
00223         marshall = schema.getLayerImpl('marshall')
00224         marshallers = [RFC822Marshaller]
00225         try:
00226             from Products.Marshall import ControlledMarshaller
00227             marshallers.append(ControlledMarshaller)
00228         except ImportError:
00229             pass
00230         self.failUnless(isinstance(marshall, tuple(marshallers)), marshall)

Definition at line 139 of file atcttestcase.py.

00139 
00140     def test_typeInfo(self):
00141         ti = self._ATCT.getTypeInfo()
00142         self.failUnlessEqual(ti.getId(), self.portal_type)
00143         self.failUnlessEqual(ti.Title(), self.title)
00144         self.failUnlessEqual(ti.getIcon(), self.icon)
00145         self.failUnlessEqual(ti.Metatype(), self.meta_type)


Member Data Documentation

Reimplemented in ATContentTypes.tests.test_attopic.TestSiteATTopic.

Definition at line 91 of file atcttestcase.py.

Definition at line 93 of file atcttestcase.py.

Definition at line 82 of file atcttestcase.py.

Definition at line 84 of file atcttestcase.py.


The documentation for this class was generated from the following file: