[Zope-Checkins] CVS: Zope/lib/python/App/tests -
test_cachemanager.py:1.1
Fred Drake
cvs-admin at zope.org
Mon Nov 3 11:40:38 EST 2003
Update of /cvs-repository/Zope/lib/python/App/tests
In directory cvs.zope.org:/tmp/cvs-serv22819/lib/python/App/tests
Added Files:
test_cachemanager.py
Log Message:
Fix collector issue #1105:
Make the cache manager report correct values for the object cache size.
=== Added File Zope/lib/python/App/tests/test_cachemanager.py ===
##############################################################################
#
# Copyright (c) 2003 Zope Corporation and Contributors.
# All Rights Reserved.
#
# This software is subject to the provisions of the Zope Public License,
# Version 2.0 (ZPL). A copy of the ZPL should accompany this distribution.
# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
# FOR A PARTICULAR PURPOSE.
#
##############################################################################
"""Tests for the CacheManager.
$Id: test_cachemanager.py,v 1.1 2003/11/03 16:40:37 fdrake Exp $
"""
import unittest
import ZODB
from App.CacheManager import CacheManager
class TestCacheManager(CacheManager):
# Derived CacheManager that fakes enough of the DatabaseManager to
# make it possible to test at least some parts of the CacheManager.
def __init__(self, connection):
self._p_jar = connection
class DummyConnection:
def __init__(self, db, version=None):
self.__db = db
self.__version = version
def db(self):
return self.__db
def getVersion(self):
return self.__version
class DummyDB:
def __init__(self, cache_size, vcache_size):
self._set_sizes(cache_size, vcache_size)
def _set_sizes(self, cache_size, vcache_size):
self.__cache_size = cache_size
self.__vcache_size = vcache_size
def getCacheSize(self):
return self.__cache_size
def getVersionCacheSize(self):
return self.__vcache_size
class CacheManagerTestCase(unittest.TestCase):
def setUp(self):
self.db = DummyDB(42, 24)
self.connection = DummyConnection(self.db)
self.manager = TestCacheManager(self.connection)
def test_cache_size(self):
self.assertEqual(self.manager.cache_size(), 42)
self.db._set_sizes(12, 2)
self.assertEqual(self.manager.cache_size(), 12)
def test_version_cache_size(self):
self.connection = DummyConnection(self.db, "my version")
self.manager = TestCacheManager(self.connection)
# perform test
self.assertEqual(self.manager.cache_size(), 24)
self.db._set_sizes(12, 2)
self.assertEqual(self.manager.cache_size(), 2)
def test_suite():
return unittest.makeSuite(CacheManagerTestCase)
More information about the Zope-Checkins
mailing list