mirror of
				https://github.com/python/cpython.git
				synced 2025-11-03 23:21:29 +00:00 
			
		
		
		
	#6026 - fix tests that failed without zlib
This commit is contained in:
		
							parent
							
								
									21121e64b4
								
							
						
					
					
						commit
						1036a7f7e1
					
				
					 7 changed files with 51 additions and 6 deletions
				
			
		| 
						 | 
					@ -19,10 +19,18 @@
 | 
				
			||||||
except ImportError:
 | 
					except ImportError:
 | 
				
			||||||
    ZIP_SUPPORT = find_executable('zip')
 | 
					    ZIP_SUPPORT = find_executable('zip')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# some tests will fail if zlib is not available
 | 
				
			||||||
 | 
					try:
 | 
				
			||||||
 | 
					    import zlib
 | 
				
			||||||
 | 
					except ImportError:
 | 
				
			||||||
 | 
					    zlib = None
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class ArchiveUtilTestCase(support.TempdirManager,
 | 
					class ArchiveUtilTestCase(support.TempdirManager,
 | 
				
			||||||
                          support.LoggingSilencer,
 | 
					                          support.LoggingSilencer,
 | 
				
			||||||
                          unittest.TestCase):
 | 
					                          unittest.TestCase):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @unittest.skipUnless(zlib, "Requires zlib")
 | 
				
			||||||
    def test_make_tarball(self):
 | 
					    def test_make_tarball(self):
 | 
				
			||||||
        # creating something to tar
 | 
					        # creating something to tar
 | 
				
			||||||
        tmpdir = self.mkdtemp()
 | 
					        tmpdir = self.mkdtemp()
 | 
				
			||||||
| 
						 | 
					@ -83,6 +91,7 @@ def _create_files(self):
 | 
				
			||||||
        base_name = os.path.join(tmpdir2, 'archive')
 | 
					        base_name = os.path.join(tmpdir2, 'archive')
 | 
				
			||||||
        return tmpdir, tmpdir2, base_name
 | 
					        return tmpdir, tmpdir2, base_name
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @unittest.skipUnless(zlib, "Requires zlib")
 | 
				
			||||||
    @unittest.skipUnless(find_executable('tar') and find_executable('gzip'),
 | 
					    @unittest.skipUnless(find_executable('tar') and find_executable('gzip'),
 | 
				
			||||||
                         'Need the tar command to run')
 | 
					                         'Need the tar command to run')
 | 
				
			||||||
    def test_tarfile_vs_tar(self):
 | 
					    def test_tarfile_vs_tar(self):
 | 
				
			||||||
| 
						 | 
					@ -168,6 +177,7 @@ def test_compress_deprecated(self):
 | 
				
			||||||
        self.assertTrue(not os.path.exists(tarball))
 | 
					        self.assertTrue(not os.path.exists(tarball))
 | 
				
			||||||
        self.assertEquals(len(w.warnings), 1)
 | 
					        self.assertEquals(len(w.warnings), 1)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @unittest.skipUnless(zlib, "Requires zlib")
 | 
				
			||||||
    @unittest.skipUnless(ZIP_SUPPORT, 'Need zip support to run')
 | 
					    @unittest.skipUnless(ZIP_SUPPORT, 'Need zip support to run')
 | 
				
			||||||
    def test_make_zipfile(self):
 | 
					    def test_make_zipfile(self):
 | 
				
			||||||
        # creating something to tar
 | 
					        # creating something to tar
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -4,6 +4,13 @@
 | 
				
			||||||
import sys
 | 
					import sys
 | 
				
			||||||
import os
 | 
					import os
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# zlib is not used here, but if it's not available
 | 
				
			||||||
 | 
					# test_simple_built will fail
 | 
				
			||||||
 | 
					try:
 | 
				
			||||||
 | 
					    import zlib
 | 
				
			||||||
 | 
					except ImportError:
 | 
				
			||||||
 | 
					    zlib = None
 | 
				
			||||||
 | 
					
 | 
				
			||||||
from distutils.core import Distribution
 | 
					from distutils.core import Distribution
 | 
				
			||||||
from distutils.command.bdist_dumb import bdist_dumb
 | 
					from distutils.command.bdist_dumb import bdist_dumb
 | 
				
			||||||
from distutils.tests import support
 | 
					from distutils.tests import support
 | 
				
			||||||
| 
						 | 
					@ -31,6 +38,7 @@ def tearDown(self):
 | 
				
			||||||
        sys.argv = self.old_sys_argv[:]
 | 
					        sys.argv = self.old_sys_argv[:]
 | 
				
			||||||
        super(BuildDumbTestCase, self).tearDown()
 | 
					        super(BuildDumbTestCase, self).tearDown()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @unittest.skipUnless(zlib, "requires zlib")
 | 
				
			||||||
    def test_simple_built(self):
 | 
					    def test_simple_built(self):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        # let's create a simple package
 | 
					        # let's create a simple package
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -3,6 +3,14 @@
 | 
				
			||||||
import unittest
 | 
					import unittest
 | 
				
			||||||
import shutil
 | 
					import shutil
 | 
				
			||||||
import zipfile
 | 
					import zipfile
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# zlib is not used here, but if it's not available
 | 
				
			||||||
 | 
					# the tests that use zipfile may fail
 | 
				
			||||||
 | 
					try:
 | 
				
			||||||
 | 
					    import zlib
 | 
				
			||||||
 | 
					except ImportError:
 | 
				
			||||||
 | 
					    zlib = None
 | 
				
			||||||
 | 
					
 | 
				
			||||||
from os.path import join
 | 
					from os.path import join
 | 
				
			||||||
import sys
 | 
					import sys
 | 
				
			||||||
import tempfile
 | 
					import tempfile
 | 
				
			||||||
| 
						 | 
					@ -79,6 +87,7 @@ def _warn(*args):
 | 
				
			||||||
        cmd.warn = _warn
 | 
					        cmd.warn = _warn
 | 
				
			||||||
        return dist, cmd
 | 
					        return dist, cmd
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @unittest.skipUnless(zlib, "requires zlib")
 | 
				
			||||||
    def test_prune_file_list(self):
 | 
					    def test_prune_file_list(self):
 | 
				
			||||||
        # this test creates a package with some vcs dirs in it
 | 
					        # this test creates a package with some vcs dirs in it
 | 
				
			||||||
        # and launch sdist to make sure they get pruned
 | 
					        # and launch sdist to make sure they get pruned
 | 
				
			||||||
| 
						 | 
					@ -120,6 +129,7 @@ def test_prune_file_list(self):
 | 
				
			||||||
        # making sure everything has been pruned correctly
 | 
					        # making sure everything has been pruned correctly
 | 
				
			||||||
        self.assertEquals(len(content), 4)
 | 
					        self.assertEquals(len(content), 4)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @unittest.skipUnless(zlib, "requires zlib")
 | 
				
			||||||
    def test_make_distribution(self):
 | 
					    def test_make_distribution(self):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        # check if tar and gzip are installed
 | 
					        # check if tar and gzip are installed
 | 
				
			||||||
| 
						 | 
					@ -156,6 +166,7 @@ def test_make_distribution(self):
 | 
				
			||||||
        self.assertEquals(result,
 | 
					        self.assertEquals(result,
 | 
				
			||||||
                ['fake-1.0.tar', 'fake-1.0.tar.gz'])
 | 
					                ['fake-1.0.tar', 'fake-1.0.tar.gz'])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @unittest.skipUnless(zlib, "requires zlib")
 | 
				
			||||||
    def test_add_defaults(self):
 | 
					    def test_add_defaults(self):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        # http://bugs.python.org/issue2279
 | 
					        # http://bugs.python.org/issue2279
 | 
				
			||||||
| 
						 | 
					@ -217,6 +228,7 @@ def test_add_defaults(self):
 | 
				
			||||||
        manifest = open(join(self.tmp_dir, 'MANIFEST')).read()
 | 
					        manifest = open(join(self.tmp_dir, 'MANIFEST')).read()
 | 
				
			||||||
        self.assertEquals(manifest, MANIFEST % {'sep': os.sep})
 | 
					        self.assertEquals(manifest, MANIFEST % {'sep': os.sep})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @unittest.skipUnless(zlib, "requires zlib")
 | 
				
			||||||
    def test_metadata_check_option(self):
 | 
					    def test_metadata_check_option(self):
 | 
				
			||||||
        # testing the `medata-check` option
 | 
					        # testing the `medata-check` option
 | 
				
			||||||
        dist, cmd = self.get_cmd(metadata={})
 | 
					        dist, cmd = self.get_cmd(metadata={})
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -21,9 +21,14 @@
 | 
				
			||||||
#    misrepresented as being the original software.
 | 
					#    misrepresented as being the original software.
 | 
				
			||||||
# 3. This notice may not be removed or altered from any source distribution.
 | 
					# 3. This notice may not be removed or altered from any source distribution.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import zlib, datetime
 | 
					import datetime
 | 
				
			||||||
import unittest
 | 
					import unittest
 | 
				
			||||||
import sqlite3 as sqlite
 | 
					import sqlite3 as sqlite
 | 
				
			||||||
 | 
					try:
 | 
				
			||||||
 | 
					    import zlib
 | 
				
			||||||
 | 
					except ImportError:
 | 
				
			||||||
 | 
					    zlib = None
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class SqliteTypeTests(unittest.TestCase):
 | 
					class SqliteTypeTests(unittest.TestCase):
 | 
				
			||||||
    def setUp(self):
 | 
					    def setUp(self):
 | 
				
			||||||
| 
						 | 
					@ -300,6 +305,7 @@ def CheckCasterIsUsed(self):
 | 
				
			||||||
        val = self.cur.fetchone()[0]
 | 
					        val = self.cur.fetchone()[0]
 | 
				
			||||||
        self.assertEqual(type(val), float)
 | 
					        self.assertEqual(type(val), float)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@unittest.skipUnless(zlib, "requires zlib")
 | 
				
			||||||
class BinaryConverterTests(unittest.TestCase):
 | 
					class BinaryConverterTests(unittest.TestCase):
 | 
				
			||||||
    def convert(s):
 | 
					    def convert(s):
 | 
				
			||||||
        return zlib.decompress(s)
 | 
					        return zlib.decompress(s)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -5,9 +5,8 @@
 | 
				
			||||||
import unittest
 | 
					import unittest
 | 
				
			||||||
from test import test_support
 | 
					from test import test_support
 | 
				
			||||||
import os
 | 
					import os
 | 
				
			||||||
import gzip
 | 
					 | 
				
			||||||
import struct
 | 
					import struct
 | 
				
			||||||
 | 
					gzip = test_support.import_module('gzip')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
data1 = """  int length=DEFAULTALLOC, err = Z_OK;
 | 
					data1 = """  int length=DEFAULTALLOC, err = Z_OK;
 | 
				
			||||||
  PyObject *RetVal;
 | 
					  PyObject *RetVal;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -311,6 +311,7 @@ def test_write_default_name(self):
 | 
				
			||||||
        self.assertEqual(zipfp.read(TESTFN), file(TESTFN).read())
 | 
					        self.assertEqual(zipfp.read(TESTFN), file(TESTFN).read())
 | 
				
			||||||
        zipfp.close()
 | 
					        zipfp.close()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @skipUnless(zlib, "requires zlib")
 | 
				
			||||||
    def test_per_file_compression(self):
 | 
					    def test_per_file_compression(self):
 | 
				
			||||||
        # Check that files within a Zip archive can have different compression options
 | 
					        # Check that files within a Zip archive can have different compression options
 | 
				
			||||||
        zipfp = zipfile.ZipFile(TESTFN2, "w")
 | 
					        zipfp = zipfile.ZipFile(TESTFN2, "w")
 | 
				
			||||||
| 
						 | 
					@ -882,6 +883,7 @@ def test_bad_password(self):
 | 
				
			||||||
        self.zip2.setpassword("perl")
 | 
					        self.zip2.setpassword("perl")
 | 
				
			||||||
        self.assertRaises(RuntimeError, self.zip2.read, "zero")
 | 
					        self.assertRaises(RuntimeError, self.zip2.read, "zero")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @skipUnless(zlib, "requires zlib")
 | 
				
			||||||
    def test_good_password(self):
 | 
					    def test_good_password(self):
 | 
				
			||||||
        self.zip.setpassword("python")
 | 
					        self.zip.setpassword("python")
 | 
				
			||||||
        self.assertEquals(self.zip.read("test.txt"), self.plain)
 | 
					        self.assertEquals(self.zip.read("test.txt"), self.plain)
 | 
				
			||||||
| 
						 | 
					@ -982,6 +984,7 @@ def test_random_open_stored(self):
 | 
				
			||||||
            self.zip_random_open_test(f, zipfile.ZIP_STORED)
 | 
					            self.zip_random_open_test(f, zipfile.ZIP_STORED)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@skipUnless(zlib, "requires zlib")
 | 
				
			||||||
class TestsWithMultipleOpens(unittest.TestCase):
 | 
					class TestsWithMultipleOpens(unittest.TestCase):
 | 
				
			||||||
    def setUp(self):
 | 
					    def setUp(self):
 | 
				
			||||||
        # Create the ZIP archive
 | 
					        # Create the ZIP archive
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -6,11 +6,17 @@
 | 
				
			||||||
import time
 | 
					import time
 | 
				
			||||||
import unittest
 | 
					import unittest
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import zlib # implied prerequisite
 | 
					 | 
				
			||||||
from zipfile import ZipFile, ZipInfo, ZIP_STORED, ZIP_DEFLATED
 | 
					 | 
				
			||||||
from test import test_support
 | 
					from test import test_support
 | 
				
			||||||
from test.test_importhooks import ImportHooksBaseTestCase, test_src, test_co
 | 
					from test.test_importhooks import ImportHooksBaseTestCase, test_src, test_co
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# some tests can be ran even without zlib
 | 
				
			||||||
 | 
					try:
 | 
				
			||||||
 | 
					    import zlib
 | 
				
			||||||
 | 
					except ImportError:
 | 
				
			||||||
 | 
					    zlib = None
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					from zipfile import ZipFile, ZipInfo, ZIP_STORED, ZIP_DEFLATED
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import zipimport
 | 
					import zipimport
 | 
				
			||||||
import linecache
 | 
					import linecache
 | 
				
			||||||
import doctest
 | 
					import doctest
 | 
				
			||||||
| 
						 | 
					@ -53,6 +59,7 @@ def module_path_to_dotted_name(path):
 | 
				
			||||||
TESTPACK2 = "ziptestpackage2"
 | 
					TESTPACK2 = "ziptestpackage2"
 | 
				
			||||||
TEMP_ZIP = os.path.abspath("junk95142" + os.extsep + "zip")
 | 
					TEMP_ZIP = os.path.abspath("junk95142" + os.extsep + "zip")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class UncompressedZipImportTestCase(ImportHooksBaseTestCase):
 | 
					class UncompressedZipImportTestCase(ImportHooksBaseTestCase):
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    compression = ZIP_STORED
 | 
					    compression = ZIP_STORED
 | 
				
			||||||
| 
						 | 
					@ -357,7 +364,6 @@ def doDoctestSuite(self, module):
 | 
				
			||||||
    def testDoctestSuite(self):
 | 
					    def testDoctestSuite(self):
 | 
				
			||||||
        self.runDoctest(self.doDoctestSuite)
 | 
					        self.runDoctest(self.doDoctestSuite)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
    def doTraceback(self, module):
 | 
					    def doTraceback(self, module):
 | 
				
			||||||
        try:
 | 
					        try:
 | 
				
			||||||
            module.do_raise()
 | 
					            module.do_raise()
 | 
				
			||||||
| 
						 | 
					@ -381,6 +387,7 @@ def testTraceback(self):
 | 
				
			||||||
        self.doTest(None, files, TESTMOD, call=self.doTraceback)
 | 
					        self.doTest(None, files, TESTMOD, call=self.doTraceback)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@unittest.skipUnless(zlib, "requires zlib")
 | 
				
			||||||
class CompressedZipImportTestCase(UncompressedZipImportTestCase):
 | 
					class CompressedZipImportTestCase(UncompressedZipImportTestCase):
 | 
				
			||||||
    compression = ZIP_DEFLATED
 | 
					    compression = ZIP_DEFLATED
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue