[pypy-svn] r55529 - in pypy/dist/pypy/module/zipimport: . test

fijal at codespeak.net fijal at codespeak.net
Tue Jun 3 21:08:42 CEST 2008


Author: fijal
Date: Tue Jun  3 21:08:41 2008
New Revision: 55529

Modified:
   pypy/dist/pypy/module/zipimport/interp_zipimport.py
   pypy/dist/pypy/module/zipimport/test/test_zipimport.py
Log:
A test and a fix for __iter__ on zip_directory_cache


Modified: pypy/dist/pypy/module/zipimport/interp_zipimport.py
==============================================================================
--- pypy/dist/pypy/module/zipimport/interp_zipimport.py	(original)
+++ pypy/dist/pypy/module/zipimport/interp_zipimport.py	Tue Jun  3 21:08:41 2008
@@ -106,6 +106,7 @@
     'zip_dict',
     __getitem__ = interp2app(W_ZipCache.getitem),
     __contains__ = interp2app(W_ZipCache.contains),
+    __iter__ = interp2app(W_ZipCache.iterkeys),
     items = interp2app(W_ZipCache.items),
     iteritems = interp2app(W_ZipCache.iteritems),
     keys = interp2app(W_ZipCache.keys),

Modified: pypy/dist/pypy/module/zipimport/test/test_zipimport.py
==============================================================================
--- pypy/dist/pypy/module/zipimport/test/test_zipimport.py	(original)
+++ pypy/dist/pypy/module/zipimport/test/test_zipimport.py	Tue Jun  3 21:08:41 2008
@@ -233,6 +233,16 @@
         assert archive == self.zipfile
         assert importer.prefix == prefix
 
+    def test_zip_directory_cache(self):
+        """ Check full dictionary interface
+        """
+        import os
+        import zipimport
+        self.writefile(
+            self, os.sep.join(("directory", "package", "__init__.py")), "")
+        importer = zipimport.zipimporter(self.zipfile + "/directory")
+        l = [i for i in zipimport._zip_directory_cache]
+        assert len(l)
 
 class AppTestZipimportDeflated(AppTestZipimport):
     compression = ZIP_DEFLATED



More information about the Pypy-commit mailing list