-í
Û„?c       sÐ   d  Z  d k l Z d k Z d k Z d k Z d k Z d k l Z d e i	 f d „  ƒ  YZ
 d e i	 f d „  ƒ  YZ d e
 f d	 „  ƒ  YZ d
 e f d „  ƒ  YZ d „  Z e d j o e i d d ƒ n d S(   s   Test suite for the ZEO.ClientCache module.

At times, we do 'white box' testing, i.e. we know about the internals
of the ClientCache object.
(   s   nested_scopesN(   s   ClientCaches   ClientCacheTestsc      s˜   t  Z d Z d Z d Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d	 „  Z
 d
 „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   Ns   abcdefghs   bcdefghis   cdefghijc    s7   d d d |  _ t d |  i ƒ |  _ |  i i ƒ  d  S(   Ni
   iè  s   size(   s   selfs	   cachesizes   ClientCaches   caches   open(   s   self(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   setUp" s    c    s   |  i i ƒ  d  S(   N(   s   selfs   caches   close(   s   self(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   tearDown' s    c    s   d  S(   N(    (   s   self(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   testOpenClose* s    c    sj   |  i } |  i } d d } d } | i | | | d d d ƒ | i | d ƒ } |  i	 | | | f ƒ d  S(   Ns   1234id   s   ABCDEFGHs    (
   s   selfs   caches   _oids   oids   datas   serials   stores   loads   loadeds   assertEqual(   s   selfs   oids   loadeds   caches   datas   serial(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   testStoreLoad- s    		
c    sd   |  i } |  i } d d } d } | i | | | d d d ƒ | i d d ƒ } |  i	 | t
 ƒ d  S(   Ns   1234id   s   ABCDEFGHs    s   garbage1(   s   selfs   caches   _oids   oids   datas   serials   stores   loads   loadeds   assertEquals   None(   s   selfs   oids   loadeds   caches   datas   serial(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   testMissingLoad6 s    		
c    sœ   |  i } |  i } d d } d } | i | | | d d d ƒ | i | d ƒ } |  i	 | | | f ƒ | i
 | d ƒ | i | d ƒ } |  i	 | t ƒ d  S(   Ns   1234id   s   ABCDEFGHs    (   s   selfs   caches   _oids   oids   datas   serials   stores   loads   loadeds   assertEquals
   invalidates   None(   s   selfs   oids   loadeds   caches   datas   serial(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   testInvalidate? s    		
c 
   s¨   |  i } |  i } d d } d } d } d d } d } | i	 | | | | | | ƒ | i
 | d ƒ } |  i | | | f ƒ | i
 | | ƒ }	 |  i |	 | | f ƒ d  S(	   Ns   1234id   s   ABCDEFGHs	   myversions   5678iÈ   s   IJKLMNOPs    (   s   selfs   caches   _oids   oids   datas   serials   vnames   vdatas   vserials   stores   loads   loadeds   assertEquals   vloaded(
   s   selfs   oids   vserials   vnames   vdatas   loadeds   caches   datas   serials   vloaded(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   testVersionK s    		

c 
   sž   |  i } |  i } d }	 d } d } d d } d } | i	 | |	 | | | | ƒ | i
 | d ƒ } |  i | t ƒ | i
 | | ƒ } |  i | | | f ƒ d  S(   Ns    s	   myversions   5678iÈ   s   IJKLMNOP(   s   selfs   caches   _oids   oids   datas   serials   vnames   vdatas   vserials   stores   loads   loadeds   assertEquals   Nones   vloaded(
   s   selfs   vdatas   vnames   oids   vloadeds   caches   vserials   loadeds   serials   data(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   testVersionOnlyY s    		
c 
   sü   |  i } |  i } d d }	 d } d } d d } d } | i	 | |	 | | | | ƒ | i
 | d ƒ } |  i | |	 | f ƒ | i
 | | ƒ } |  i | | | f ƒ | i | d ƒ | i
 | d ƒ } |  i | t ƒ | i
 | | ƒ } |  i | t ƒ d  S(	   Ns   1234id   s   ABCDEFGHs	   myversions   5678iÈ   s   IJKLMNOPs    (   s   selfs   caches   _oids   oids   datas   serials   vnames   vdatas   vserials   stores   loads   loadeds   assertEquals   vloadeds
   invalidates   None(
   s   selfs   vdatas   vnames   oids   vloadeds   caches   vserials   loadeds   serials   data(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   testInvalidateNonVersiong s"    		

c    s¢   |  i } |  i } d d } d } | i | | | d d d ƒ | i | d ƒ } |  i	 | | | f ƒ | i
 | d ƒ | i | d ƒ } |  i	 | | | f ƒ d  S(   Ns   1234id   s   ABCDEFGHs    s   bogus(   s   selfs   caches   _oids   oids   datas   serials   stores   loads   loadeds   assertEquals
   invalidate(   s   selfs   oids   loadeds   caches   datas   serial(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   testInvalidateVersion{ s    		
c    s    |  i } g  ‰  ‡  d †  } | i | ƒ |  i ˆ  g  ƒ |  i } d d } d } | i
 | | | d d d ƒ g  ‰  | i | ƒ |  i ˆ  | | t f g ƒ d  S(   Nc    s   ˆ  i |  | | f ƒ d  S(   N(   s   resultss   appends   oids   serials   vserial(   s   oids   serials   vserial(   s   results(    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   verifierŒ s    s   1234id   s   ABCDEFGHs    (   s   selfs   caches   resultss   verifiers   verifys   assertEquals   _oids   oids   datas   serials   stores   None(   s   selfs   verifiers   oids   caches   datas   resultss   serial(    (   s   resultssA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys
   testVerify‰ s    		
c    s×   |  i } |  i } d d } d } | i | | | d d d ƒ | i d |  i ƒ |  i	 } d d } d } | i | | | d d d ƒ | i d |  i ƒ |  i | i i | ƒ t ƒ |  i | i i | ƒ t ƒ d  S(   Ns   1234id   s   ABCDEFGHs    i
   s   ABCDEFGZ(   s   selfs   caches   _oids   oids   datas   serials   stores	   checkSizes	   cachesizes   _oid2s   oid2s   data2s   serial2s   assertNotEquals   _indexs   gets   Nones   assertEqual(   s   selfs   serial2s   oids   caches   datas   serials   oid2s   data2(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   testCheckSize˜ s    		
	
c    s3  |  i } |  i } d d } d } |  i }	 d d } d } d } d } d	 d
 } d } |  i }
 d d } d } | i | | | d d d ƒ | i |	 | | | | | ƒ | i |
 | | d d d ƒ |  i t | i i | ƒ j	 o
 d j n ƒ |  i t | i i |	 ƒ j	 o
 d j n ƒ |  i t | i i |
 ƒ j	 o
 d j n ƒ |  i | i | d ƒ | | f ƒ |  i | i |	 d ƒ | | f ƒ |  i | i |	 | ƒ | | f ƒ |  i | i |	 | ƒ | | f ƒ |  i | i |
 d ƒ | | f ƒ |  i t | i i | ƒ j	 o
 d j n ƒ |  i t | i i |	 ƒ j	 o
 d j n ƒ |  i t | i i |
 ƒ j	 o
 d j n ƒ | i d |  i ƒ |  i | i | d ƒ | | f ƒ |  i | i |	 | ƒ | | f ƒ |  i | i |	 | ƒ | | f ƒ |  i | i |	 d ƒ | | f ƒ |  i t | i i | ƒ j	 o
 d j  n ƒ |  i t | i i |	 ƒ j	 o
 d j  n ƒ |  i t | i i |
 ƒ j	 o
 d j n ƒ | i d |  i ƒ |  i | i | d ƒ | | f ƒ |  i | i |	 | ƒ | | f ƒ |  i | i |	 | ƒ | | f ƒ |  i | i |	 d ƒ | | f ƒ |  i t | i i | ƒ j	 o
 d j n ƒ |  i t | i i |	 ƒ j	 o
 d j n ƒ |  i t | i i |
 ƒ j ƒ | i |	 | ƒ |  i | i |	 d ƒ | | f ƒ |  i | i |	 | ƒ t ƒ |  i | i |	 | ƒ t ƒ | i d |  i ƒ |  i | i | d ƒ | | f ƒ |  i | i |	 | ƒ t ƒ |  i | i |	 | ƒ t ƒ |  i | i |	 d ƒ | | f ƒ |  i t | i i | ƒ j	 o
 d j  n ƒ |  i t | i i |	 ƒ j	 o
 d j  n ƒ d  S(   Ns   1234id   s   ABCDEFGHs   2345iÈ   s   BCDEFGHIs	   myversions   nadas   5432iú   s   IHGFEDCBs   3456i,  s   CDEFGHIJs    i    i
   (   s   selfs   caches   _oids   oid1s   data1s   serial1s   _oid2s   oid2s   data2s   serial2s   version2s
   nonversions   vdata2s   vserial2s   _oid3s   oid3s   data3s   serial3s   stores   assert_s   Nones   _indexs   gets   assertEquals   loads	   checkSizes	   cachesizes
   invalidate(   s   selfs   serial3s   serial2s   serial1s   version2s   vdata2s   caches   vserial2s   oid1s   oid2s   oid3s
   nonversions   data1s   data3s   data2(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   testCopyToCurrent© sn    		
	

	
000"""""000""""000""""00"""0c    sÌ   |  i } |  i | i ƒ  t j ƒ d } | i | ƒ |  i | i ƒ  | ƒ | i d |  i	 ƒ |  i | i ƒ  | ƒ | i t ƒ |  i | i ƒ  t j ƒ | i d |  i	 ƒ |  i | i ƒ  t j ƒ d  S(   Ns   pqrstuvwi
   (
   s   selfs   caches
   failUnlesss
   getLastTids   Nones   ltids
   setLastTids   assertEquals	   checkSizes	   cachesize(   s   selfs   ltids   cache(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   testLastTid
s    	(   s   __name__s
   __module__s   _oids   _oid2s   _oid3s   setUps   tearDowns   testOpenCloses   testStoreLoads   testMissingLoads   testInvalidates   testVersions   testVersionOnlys   testInvalidateNonVersions   testInvalidateVersions
   testVerifys   testCheckSizes   testCopyToCurrents   testLastTid(    (    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   ClientCacheTests s"   															as   PersistentClientCacheTestsc      sb   t  Z d Z d Z d Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d	 „  Z
 d
 „  Z d „  Z RS(   Ns   abcdefghs   bcdefghis   cdefghijc    sÅ   t  i ƒ  |  _ d d d |  _ d |  _ d |  _ d |  i |  i f } d |  i |  i f } xV | | f D]H } t  i
 i |  i | ƒ } y t  i | ƒ Wn t  i j
 o n Xqk W|  i ƒ  d  S(   Ni
   iè  s   foos   tests   c%s-%s-0.zecs   c%s-%s-1.zec(   s   oss   getcwds   selfs   vardirs	   cachesizes   storagenames
   clientnames   fn0s   fn1s   fns   paths   joins   unlinks   errors	   openCache(   s   selfs   fns   fn1s   fn0(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   setUps    		 	c  	  sA   t  d |  i d |  i d |  i d |  i ƒ |  _ |  i i ƒ  d  S(   Ns   storages   sizes   clients   var(   s   ClientCaches   selfs   storagenames	   cachesizes
   clientnames   vardirs   caches   open(   s   self(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys	   openCache-s
    		c    s"   |  i i ƒ  |  i ƒ  |  i Sd  S(   N(   s   selfs   caches   closes	   openCache(   s   self(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   reopenCache4s    
c    sc   |  i i ƒ  xO |  i i D]A } | t j	 o. y t i | ƒ Wn t i j
 o n Xn q Wd  S(   N(	   s   selfs   caches   closes   _ps   filenames   Nones   oss   unlinks   error(   s   selfs   filename(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   tearDown9s     c    s  |  i } |  i | i d ƒ |  i } d } d } | i | | | d d d ƒ | i	 | ƒ | i
 d |  i ƒ |  i | i d ƒ d } d } | i | | | d d d ƒ | i	 | ƒ |  i ƒ  } | i | d ƒ } |  i | | | f ƒ |  i | i d ƒ d  S(	   Ni    s   1234s   ABCDEFGHs    i
   i   s   123s   ABCDEFGZ(   s   selfs   caches   assertEquals   _currents   _oids   oids   datas   serials   stores
   setLastTids	   checkSizes	   cachesizes   reopenCaches   loads   loaded(   s   selfs   oids   loadeds   caches   datas   serial(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   testCacheFileSelectionBs"    		c    sí   |  i } t d ƒ d d >} |  i } |  i } d | } d } | i | | | d d d ƒ | i	 | d ƒ } |  i | | | f ƒ | i | d ƒ |  i ƒ  } | i	 | d ƒ } | t j o+ |  i d t | d ƒ t | ƒ f ƒ n d  S(	   Ns   ii   i   s   !s   ABCDEFGHs    s-   invalidated data resurrected, size %d, was %di    (   s   selfs   caches   ords	   magicsizes   _oids   oids   datas   serials   stores   loads   loadeds   assertEquals
   invalidates   reopenCaches   Nones   fails   len(   s   selfs   oids   loadeds   caches   datas   serials	   magicsize(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   testInvalidationPersists[s    			
c    s5  |  i } |  i | i ƒ  t j ƒ d } | i | ƒ |  i | i ƒ  | ƒ |  i } d } d } | i | | | d d d ƒ |  i | i ƒ  | ƒ | i d |  i ƒ |  i | i ƒ  | ƒ |  i ƒ  } |  i | i ƒ  | ƒ | i t ƒ |  i | i ƒ  t j ƒ | i d |  i ƒ |  i | i ƒ  t j ƒ d  S(   Ns   pqrstuvws   1234s   ABCDEFGHs    i
   (   s   selfs   caches
   failUnlesss
   getLastTids   Nones   ltids
   setLastTids   assertEquals   _oids   oids   datas   serials   stores	   checkSizes	   cachesizes   reopenCache(   s   selfs   caches   ltids   datas   serials   oid(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   testPersistentLastTidqs$    		c    s  d } d } d } d } d } |  i i |  i | | | | | ƒ |  i i	 d |  i
 ƒ x„ d d f D]v } xm d	 | | f | | | f g D]M \ } } } |  i i |  i | ƒ \ }
 }	 |  i |
 | ƒ |  i |	 | ƒ q‰ Wqd W|  i i |  i d	 d	 d
 d d ƒ |  i i	 d |  i
 ƒ |  i i |  i d	 ƒ |  i i |  i d d d	 d	 d	 ƒ |  i i	 d |  i
 ƒ |  i i |  i d	 ƒ x„ d d f D]v } xm d	 | | f | | | f g D]M \ } } } |  i i |  i | ƒ \ }
 }	 |  i |
 | ƒ |  i |	 | ƒ q®Wq‰Wd  S(   Ns9   Mend your speech a little, lest it may mar your fortunes.s   12345678s   folios:   Mend your speech a little, lest you may mar your fortunes.s   12346789i
   i   i   s    s   foos   bars   23456789s   34567890(   s   nvdatas   nvserials   versions   vdatas   vserials   selfs   caches   stores   _oids	   checkSizes	   cachesizes   is   xversions   xdatas   xserials   loads   datas   serials   assertEquals   _oid2s   _oid3(   s   selfs   nvserials   vdatas   xversions   xserials   is   nvdatas   versions   vserials   serials   datas   xdata(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys+   testLoadNonversionWithVersionInFlippedCache…s6    "  ""  (   s   __name__s
   __module__s   _oids   _oid2s   _oid3s   setUps	   openCaches   reopenCaches   tearDowns   testCacheFileSelections   testInvalidationPersistss   testPersistentLastTids+   testLoadNonversionWithVersionInFlippedCache(    (    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   PersistentClientCacheTestss   								s   ClientCacheLongOIDTestsc      s&   t  Z d d Z d d Z d d Z RS(   Ns   abcdefghijklmnopi   s   bcdefghijklmnopqs   cdefghijklmnopqr(   s   __name__s
   __module__s   _oids   _oid2s   _oid3(    (    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   ClientCacheLongOIDTests©s   

s!   PersistentClientCacheLongOIDTestsc      s&   t  Z d d Z d d Z d d Z RS(   Ns   abcdefghijklmnopi   s   bcdefghijklmnopqs   cdefghijklmnopqr(   s   __name__s
   __module__s   _oids   _oid2s   _oid3(    (    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys!   PersistentClientCacheLongOIDTests¯s   

c     sl   t  i ƒ  }  |  i t  i t ƒ ƒ |  i t  i t ƒ ƒ |  i t  i t ƒ ƒ |  i t  i t ƒ ƒ |  Sd  S(   N(	   s   unittests	   TestSuites   suites   addTests	   makeSuites   ClientCacheTestss   ClientCacheLongOIDTestss   PersistentClientCacheTestss!   PersistentClientCacheLongOIDTests(   s   suite(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys
   test_suite´s    s   __main__s   defaultTests
   test_suite(   s   __doc__s
   __future__s   nested_scopess   oss   times   tempfiles   unittests   ZEO.ClientCaches   ClientCaches   TestCases   ClientCacheTestss   PersistentClientCacheTestss   ClientCacheLongOIDTestss!   PersistentClientCacheLongOIDTestss
   test_suites   __name__s   main(   s!   PersistentClientCacheLongOIDTestss   nested_scopess   tempfiles   unittests   PersistentClientCacheTestss
   test_suites   ClientCacheTestss   times   ClientCaches   ClientCacheLongOIDTestss   os(    (    sA   /usr/pkg/lib/python2.2/site-packages/ZEO/tests/testClientCache.pys   ? s   				û’	