diff options
author | Georg Brandl <georg@python.org> | 2008-05-11 15:05:13 (GMT) |
---|---|---|
committer | Georg Brandl <georg@python.org> | 2008-05-11 15:05:13 (GMT) |
commit | 6a57c08dc828ff8512c047c97e7c7edfb0abbc74 (patch) | |
tree | 74e089debd39df01c79b57352dee0a05b57dae50 /Lib | |
parent | ae98f50eca5c5fbae6ae9ba390c5ed8729489b00 (diff) | |
download | cpython-6a57c08dc828ff8512c047c97e7c7edfb0abbc74.zip cpython-6a57c08dc828ff8512c047c97e7c7edfb0abbc74.tar.gz cpython-6a57c08dc828ff8512c047c97e7c7edfb0abbc74.tar.bz2 |
#1326: document and test zipimporter.archive and zipimporter.prefix.
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/test/test_zipimport.py | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/Lib/test/test_zipimport.py b/Lib/test/test_zipimport.py index 7ce0cf4..205853d 100644 --- a/Lib/test/test_zipimport.py +++ b/Lib/test/test_zipimport.py @@ -212,6 +212,7 @@ class UncompressedZipImportTestCase(ImportHooksBaseTestCase): z.close() zi = zipimport.zipimporter(TEMP_ZIP) + self.assertEquals(zi.archive, TEMP_ZIP) self.assertEquals(zi.is_package(TESTPACK), True) zi.load_module(TESTPACK) @@ -232,6 +233,37 @@ class UncompressedZipImportTestCase(ImportHooksBaseTestCase): z.close() os.remove(TEMP_ZIP) + def testZipImporterMethodsInSubDirectory(self): + packdir = TESTPACK + os.sep + packdir2 = packdir + TESTPACK2 + os.sep + files = {packdir2 + "__init__" + pyc_ext: (NOW, test_pyc), + packdir2 + TESTMOD + pyc_ext: (NOW, test_pyc)} + + z = ZipFile(TEMP_ZIP, "w") + try: + for name, (mtime, data) in files.items(): + zinfo = ZipInfo(name, time.localtime(mtime)) + zinfo.compress_type = self.compression + z.writestr(zinfo, data) + z.close() + + zi = zipimport.zipimporter(TEMP_ZIP + os.sep + packdir) + self.assertEquals(zi.archive, TEMP_ZIP) + self.assertEquals(zi.prefix, packdir) + self.assertEquals(zi.is_package(TESTPACK2), True) + zi.load_module(TESTPACK2) + + self.assertEquals(zi.is_package(TESTPACK2 + os.sep + '__init__'), False) + self.assertEquals(zi.is_package(TESTPACK2 + os.sep + TESTMOD), False) + + mod_name = TESTPACK2 + os.sep + TESTMOD + mod = __import__(module_path_to_dotted_name(mod_name)) + self.assertEquals(zi.get_source(TESTPACK2), None) + self.assertEquals(zi.get_source(mod_name), None) + finally: + z.close() + os.remove(TEMP_ZIP) + def testGetData(self): z = ZipFile(TEMP_ZIP, "w") z.compression = self.compression |