????JFIF??x?x????'
Server IP : 79.136.114.73 / Your IP : 18.116.81.41 Web Server : Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.29 OpenSSL/1.0.1f System : Linux b8009 3.13.0-170-generic #220-Ubuntu SMP Thu May 9 12:40:49 UTC 2019 x86_64 User : www-data ( 33) PHP Version : 5.5.9-1ubuntu4.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/local/lib/python3.6/distutils/tests/ |
Upload File : |
"""Tests for distutils._msvccompiler.""" import sys import unittest import os from distutils.errors import DistutilsPlatformError from distutils.tests import support from test.support import run_unittest SKIP_MESSAGE = (None if sys.platform == "win32" else "These tests are only for win32") @unittest.skipUnless(SKIP_MESSAGE is None, SKIP_MESSAGE) class msvccompilerTestCase(support.TempdirManager, unittest.TestCase): def test_no_compiler(self): import distutils._msvccompiler as _msvccompiler # makes sure query_vcvarsall raises # a DistutilsPlatformError if the compiler # is not found def _find_vcvarsall(plat_spec): return None, None old_find_vcvarsall = _msvccompiler._find_vcvarsall _msvccompiler._find_vcvarsall = _find_vcvarsall try: self.assertRaises(DistutilsPlatformError, _msvccompiler._get_vc_env, 'wont find this version') finally: _msvccompiler._find_vcvarsall = old_find_vcvarsall def test_compiler_options(self): import distutils._msvccompiler as _msvccompiler # suppress path to vcruntime from _find_vcvarsall to # check that /MT is added to compile options old_find_vcvarsall = _msvccompiler._find_vcvarsall def _find_vcvarsall(plat_spec): return old_find_vcvarsall(plat_spec)[0], None _msvccompiler._find_vcvarsall = _find_vcvarsall try: compiler = _msvccompiler.MSVCCompiler() compiler.initialize() self.assertIn('/MT', compiler.compile_options) self.assertNotIn('/MD', compiler.compile_options) finally: _msvccompiler._find_vcvarsall = old_find_vcvarsall def test_vcruntime_copy(self): import distutils._msvccompiler as _msvccompiler # force path to a known file - it doesn't matter # what we copy as long as its name is not in # _msvccompiler._BUNDLED_DLLS old_find_vcvarsall = _msvccompiler._find_vcvarsall def _find_vcvarsall(plat_spec): return old_find_vcvarsall(plat_spec)[0], __file__ _msvccompiler._find_vcvarsall = _find_vcvarsall try: tempdir = self.mkdtemp() compiler = _msvccompiler.MSVCCompiler() compiler.initialize() compiler._copy_vcruntime(tempdir) self.assertTrue(os.path.isfile(os.path.join( tempdir, os.path.basename(__file__)))) finally: _msvccompiler._find_vcvarsall = old_find_vcvarsall def test_vcruntime_skip_copy(self): import distutils._msvccompiler as _msvccompiler tempdir = self.mkdtemp() compiler = _msvccompiler.MSVCCompiler() compiler.initialize() dll = compiler._vcruntime_redist self.assertTrue(os.path.isfile(dll), dll or "<None>") compiler._copy_vcruntime(tempdir) self.assertFalse(os.path.isfile(os.path.join( tempdir, os.path.basename(dll))), dll or "<None>") def test_get_vc_env_unicode(self): import distutils._msvccompiler as _msvccompiler test_var = 'ṰḖṤṪ┅ṼẨṜ' test_value = '₃⁴₅' # Ensure we don't early exit from _get_vc_env old_distutils_use_sdk = os.environ.pop('DISTUTILS_USE_SDK', None) os.environ[test_var] = test_value try: env = _msvccompiler._get_vc_env('x86') self.assertIn(test_var.lower(), env) self.assertEqual(test_value, env[test_var.lower()]) finally: os.environ.pop(test_var) if old_distutils_use_sdk: os.environ['DISTUTILS_USE_SDK'] = old_distutils_use_sdk def test_get_vc2017(self): import distutils._msvccompiler as _msvccompiler # This function cannot be mocked, so pass it if we find VS 2017 # and mark it skipped if we do not. version, path = _msvccompiler._find_vc2017() if version: self.assertGreaterEqual(version, 15) self.assertTrue(os.path.isdir(path)) else: raise unittest.SkipTest("VS 2017 is not installed") def test_get_vc2015(self): import distutils._msvccompiler as _msvccompiler # This function cannot be mocked, so pass it if we find VS 2015 # and mark it skipped if we do not. version, path = _msvccompiler._find_vc2015() if version: self.assertGreaterEqual(version, 14) self.assertTrue(os.path.isdir(path)) else: raise unittest.SkipTest("VS 2015 is not installed") def test_suite(): return unittest.makeSuite(msvccompilerTestCase) if __name__ == "__main__": run_unittest(test_suite())