diff options
Diffstat (limited to 'Lib/test/test_zipimport.py')
-rw-r--r-- | Lib/test/test_zipimport.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/Lib/test/test_zipimport.py b/Lib/test/test_zipimport.py index 4a934ff..67ca39b 100644 --- a/Lib/test/test_zipimport.py +++ b/Lib/test/test_zipimport.py @@ -668,6 +668,20 @@ class UncompressedZipImportTestCase(ImportHooksBaseTestCase): with self.assertWarns(DeprecationWarning): zipimport.zipimporter(memoryview(os.fsencode(filename))) + @support.cpython_only + def testUninitializedZipimporter(self): + # The interpreter shouldn't crash in case of calling methods of an + # uninitialized zipimport.zipimporter object. + zi = zipimport.zipimporter.__new__(zipimport.zipimporter) + self.assertRaises(ValueError, zi.find_module, 'foo') + self.assertRaises(ValueError, zi.find_loader, 'foo') + self.assertRaises(ValueError, zi.load_module, 'foo') + self.assertRaises(ValueError, zi.get_filename, 'foo') + self.assertRaises(ValueError, zi.is_package, 'foo') + self.assertRaises(ValueError, zi.get_data, 'foo') + self.assertRaises(ValueError, zi.get_code, 'foo') + self.assertRaises(ValueError, zi.get_source, 'foo') + @support.requires_zlib class CompressedZipImportTestCase(UncompressedZipImportTestCase): |