mς SγΈEc@s¦dZdkZdkZdklZdkZdklZdkZdkZdk Z dZ dei fd„ƒYZ d„Z d„Zed joeiƒndS( s™Verify that PersistentMapping works with old versions of Zope. The comments in PersistentMapping.py address the issue in some detail. The pickled form of a PersistentMapping must use _container to store the actual mapping, because old versions of Zope used this attribute. If the new code doesn't generate pickles that are consistent with the old code, developers will have a hard time testing the new code. N(s Transaction(sMappingStoragesT((U PersistenceqUPersistentMappingtqNt.}qU _containerq}qUversionqUoldqss. tPMTestscBs5tZd„Zd„Zd„Zd„Zd„ZRS(NcCsΟy dk}Wntj o dSnXtƒ}tƒ}|i|ƒ|idddt d|ƒ|i |ƒ|i |ƒt i |ƒ}|iƒiƒ}|it|dƒƒ|it|dƒ ƒdS(Ntittdatat _container(t Persistencet ImportErrortMappingStoragetst Transactionttt tpc_begintstoretNonetpicklettpc_votet tpc_finishtZODBtDBtdbtopentroottrtselftassert_thasattr(RRRR RR((t?/data/zmath/zope/lib/python/ZODB/tests/testPersistentMapping.pytcheckOldStyleRoot(s       c Csϊtƒ}ti|ƒ}|iƒiƒ}d|d