예제 #1
0
 def test_error_handling(self):
     
     temp = filecache._log_error
     try:
         passed_test = [False]
         def mock_logger(*args, **kwargs):
             passed_test[0] = True
         
         filecache._log_error = mock_logger
         
         def popper():
             return 'arbitrary obj here'
         
         # put anything in _db that you know will break filecache
         popper._db = 123
         
         popper = filecache.filecache(0.1, fail_silently=True)(popper)
         
         first = popper()
         
         self.assertTrue(passed_test[0])
     finally:
         filecache._log_error = temp
예제 #2
0
#!/usr/bin/python

import filecache
import os
import stat, time


def test( condition, name ):
	if condition:
		print name + " suceeded."
	else:
		print name + " failed."



cache = filecache.filecache( '' )
cache.resize( 1 ) # 1 MB cache

# Read cache test 1
print "Cache resides at '%s'" % cache.location()
file = "/u/mnm/escher1.jpg"
cachedFile1 = cache.cacheFile( file )
test( file != cachedFile1, "Read cache test 1" )
# Do not release file

# Read cache test 2
cachedFile2 = cache.cacheFile( file ) # Try to cache again
test( file != cachedFile2, "Read cache test 2" )
cache.releaseFile( cachedFile1 ) # Unregister the file in the cache

# Read cache test 3