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

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

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

  • Property svn:eol-style set to native
File size: 3.6 KB
Line 
1import unittest
2
3from base import CacheFuTestCase
4
5from Products.CMFCore.utils  import getToolByName
6import Products.CacheSetup.config as config
7
8# util for making content in a container
9def makeContent(container, id, portal_type, title=None):
10    container.invokeFactory(id=id, type_name=portal_type)
11    o = getattr(container, id)
12    if title is not None:
13        o.setTitle(title)
14    return o
15
16
17# This is the test case. You will have to add test_<methods> to your
18# class inorder to assert things about your Product.
19class CacheManagerTest(CacheFuTestCase):
20    USER1 = 'user1'
21   
22    def afterSetUp(self):
23        CacheFuTestCase.afterSetUp(self)
24       
25        # Add a couple of users
26        self.portal.acl_users._doAddUser('manager', 'secret', ['Manager'], [])
27        self.portal.acl_users._doAddUser(self.USER1, 'secret', ['Member'], [])
28        self.login('manager')
29
30        self.portal.portal_quickinstaller.installProducts(['CacheSetup'])
31
32        # We have added a skin so we need to rebuild the skin object
33        # (since the object is cached in the current request)
34        self._refreshSkinData()
35
36    # cacheConfig deprecated
37    #
38    #def test_set_domains(self):
39    #    pcs = self.portal.portal_cache_settings
40    #    pcs.setCacheConfig('squid')
41    #    pcs.setDomains('\nfoo.com\n\nhttp://www.bar.com\nhttps://bar.com\nwww.foo.com:8080')
42    #    self.assertEqual(pcs.getDomains(), ('http://foo.com:80','http://www.bar.com:80','https://bar.com:443','http://www.foo.com:8080'))
43    #    pcs.setCacheConfig('squid_behind_apache')
44    #    pcs.setDomains('\nfoo.com\n\nhttp://www.bar.com\nhttps://bar.com\nwww.foo.com:8080')
45    #    self.assertEqual(pcs.getDomains(), ('http://foo.com:80','http://www.bar.com:80','https://bar.com:443','http://www.foo.com:8080'))
46       
47    #def test_squid_urls(self):
48    #    pcs = self.portal.portal_cache_settings
49    #    squid_tool = self.portal.portal_squid
50    #
51    #    pcs.setCacheConfig('squid_behind_apache')
52    #    pcs.setSquidURLs(['http://localhost:3128'])
53    #    self.assertEqual(pcs.getSquidURLs(), ('http://localhost:3128',))
54    #    self.assertEqual(squid_tool.getSquidURLs(), 'http://localhost:3128')
55    #   
56    #    pcs.setSquidURLs(['http://localhost:3128','http://someotherhost:3128'])
57    #    self.assertEqual(pcs.getSquidURLs(), ('http://localhost:3128','http://someotherhost:3128'))
58    #    self.assertEqual(squid_tool.getSquidURLs(), 'http://localhost:3128\nhttp://someotherhost:3128')
59
60    def test_vary_header(self):
61        pcs = self.portal.portal_cache_settings
62
63        pcs.setVaryHeader('foobar')
64        self.assertEqual(pcs.getVaryHeader(), 'foobar')
65
66        #for header_set in pcs.getHeaderSets().objectValues():
67        #    self.assertEqual(header_set.getVary(), 'foobar')
68
69   
70    #def test_cache_config(self):
71    #    pcs = self.portal.portal_cache_settings
72    #    self.assertEqual(pcs.getCacheConfig(), 'zserver')
73    #    rules = pcs.getRules()
74    #    rule = getattr(rules, 'plone-content-types')
75    #    self.assertEqual(rule.getHeaderSetIdAnon(), 'cache-in-memory')
76    #
77    #    pcs.setCacheConfig('apache')
78    #    self.assertEqual(rule.getHeaderSetIdAnon(), 'cache-in-memory')
79    #
80    #    pcs.setCacheConfig('squid')
81    #    self.assertEqual(rule.getHeaderSetIdAnon(), 'cache-in-proxy-1-hour')
82    #
83    #    pcs.setCacheConfig('squid_behind_apache')
84    #    self.assertEqual(rule.getHeaderSetIdAnon(), 'cache-in-proxy-1-hour')
85    #   
86    #    pcs.setCacheConfig('zserver')
87    #    self.assertEqual(rule.getHeaderSetIdAnon(), 'cache-in-memory')
88
89def test_suite():
90    suite = unittest.TestSuite()
91    suite.addTest(unittest.makeSuite(CacheManagerTest))
92    return suite
Note: See TracBrowser for help on using the repository browser.