source: products/vendor/Products.CacheSetup/current/Products/CacheSetup/tests/test_header_set_folder.py @ 3296

Last change on this file since 3296 was 3296, checked in by fenix, 13 years ago

Load Products.CacheSetup?-1.2.1 into vendor/Products.CacheSetup?/current.

  • Property svn:eol-style set to native
File size: 2.4 KB
Line 
1# This Python file uses the following encoding: utf-8
2"""
3header set folder implementation tests
4
5$Id: test_header_set_folder.py 62774 2008-04-16 11:24:20Z wichert $
6"""
7
8__author__ = 'Héctor Velarde <hvelarde@jornada.com.mx>'
9__docformat__ = 'restructuredtext'
10
11from base import CacheFuTestCase
12
13from AccessControl import Unauthorized
14from Interface.Verify import verifyObject
15from Products.Archetypes.atapi import OrderedBaseFolder
16from Products.CMFCore.utils import getToolByName
17from Products.CMFPlone.utils import _createObjectByType
18
19from Products.CacheSetup.config import *
20from Products.CacheSetup.interfaces import ICacheToolFolder
21
22class HeaderSetFolder(CacheFuTestCase):
23
24    def afterSetUp(self):
25        _createObjectByType('HeaderSetFolder', self.folder, 'hsf')
26        self.hsf = getattr(self.folder, 'hsf')
27
28    def _testImplementsOrderedBaseFolder(self):
29        # not pretty sure about this but; there is no such a thing as IOrderedBaseFolder...
30        self.fail('not yet implemented...')
31
32    def testImplementsCacheToolFolder(self):
33        iface = ICacheToolFolder
34        self.failUnless(iface.isImplementedBy(self.hsf))
35        self.failUnless(verifyObject(iface, self.hsf))
36
37    def testTypeInfo(self):
38        ti = self.hsf.getTypeInfo()
39        self.failUnlessEqual(ti.Title(), 'Header Set Folder')
40        self.failUnlessEqual(ti.getId(), 'HeaderSetFolder')
41        self.failUnlessEqual(ti.Metatype(), 'HeaderSetFolder')
42        self.failUnlessEqual(ti.globalAllow(), 0)
43        self.failUnlessEqual(ti.getMethodAliases(), {'(Default)': 'cache_policy_item_config', 'view': 'cache_policy_item_config', 'edit': 'cache_policy_item_config'})
44
45    def testAllowedContentTypes(self):
46        allowed = ('HeaderSet',)
47        for t in self.hsf.allowedContentTypes():
48            self.failUnless(t.getId() in allowed)
49
50    def testActions(self):
51        # not pretty sure about this
52        actions = ('object/view',)
53        ttool = getToolByName(self.portal, 'portal_types')
54        hsf = ttool['HeaderSetFolder']
55        # actions have ManagePortal permission set
56        self.assertRaises(Unauthorized, hsf.getActionInfo, actions)
57        self.setRoles(['Manager','Member'])
58        info = hsf.getActionInfo(actions)
59        self.failUnless(info is not None)
60        self.failUnlessEqual(info['url'], '')
61
62def test_suite():
63    from unittest import TestSuite, makeSuite
64    suite = TestSuite()
65    suite.addTest(makeSuite(HeaderSetFolder))
66    return suite
Note: See TracBrowser for help on using the repository browser.