/
opt
/
imh-python
/
lib
/
python3.9
/
distutils
/
tests
/
/opt/imh-python/lib/python3.9/distutils/tests
mkdir
upload
Name
Size
Mode
Actions
__pycache__/
-
0755
rm
includetest.rst
25
0644
edit
dl
rm
Setup.sample
2249
0644
edit
dl
rm
support.py
6478
0644
edit
dl
rm
test_archive_util.py
14301
0644
edit
dl
rm
test_bdist.py
1893
0644
edit
dl
rm
test_bdist_dumb.py
2905
0644
edit
dl
rm
test_bdist_msi.py
803
0644
edit
dl
rm
test_bdist_rpm.py
5008
0644
edit
dl
rm
test_bdist_wininst.py
1390
0644
edit
dl
rm
test_build.py
1965
0644
edit
dl
rm
test_build_clib.py
4631
0644
edit
dl
rm
test_build_ext.py
20633
0644
edit
dl
rm
test_build_py.py
6335
0644
edit
dl
rm
test_build_scripts.py
3593
0644
edit
dl
rm
test_check.py
5711
0644
edit
dl
rm
test_clean.py
1441
0644
edit
dl
rm
test_cmd.py
3835
0644
edit
dl
rm
test_config.py
3892
0644
edit
dl
rm
test_config_cmd.py
3023
0644
edit
dl
rm
test_core.py
4077
0644
edit
dl
rm
test_cygwinccompiler.py
5636
0644
edit
dl
rm
test_dep_util.py
2820
0644
edit
dl
rm
test_dir_util.py
4654
0644
edit
dl
rm
test_dist.py
19080
0644
edit
dl
rm
test_extension.py
2768
0644
edit
dl
rm
test_filelist.py
11475
0644
edit
dl
rm
test_file_util.py
4413
0644
edit
dl
rm
test_install.py
8612
0644
edit
dl
rm
test_install_data.py
2577
0644
edit
dl
rm
test_install_headers.py
1238
0644
edit
dl
rm
test_install_lib.py
3974
0644
edit
dl
rm
test_install_scripts.py
2625
0644
edit
dl
rm
test_log.py
1864
0644
edit
dl
rm
test_msvc9compiler.py
6038
0644
edit
dl
rm
test_msvccompiler.py
2845
0644
edit
dl
rm
test_register.py
9765
0644
edit
dl
rm
test_sdist.py
17047
0644
edit
dl
rm
test_spawn.py
5460
0644
edit
dl
rm
test_sysconfig.py
11045
0644
edit
dl
rm
test_text_file.py
3436
0644
edit
dl
rm
test_unixccompiler.py
4628
0644
edit
dl
rm
test_upload.py
7137
0644
edit
dl
rm
test_util.py
11572
0644
edit
dl
rm
test_version.py
3450
0644
edit
dl
rm
test_versionpredicate.py
280
0644
edit
dl
rm
xxmodule.c
12915
0644
edit
dl
rm
__init__.py
1344
0644
edit
dl
rm
Edit:
/opt/imh-python/lib/python3.9/distutils/tests/test_file_util.py
(4413B)
"""Tests for distutils.file_util.""" import unittest import os import errno from unittest.mock import patch from distutils.file_util import move_file, copy_file from distutils import log from distutils.tests import support from distutils.errors import DistutilsFileError from test.support import run_unittest, unlink class FileUtilTestCase(support.TempdirManager, unittest.TestCase): def _log(self, msg, *args): if len(args) > 0: self._logs.append(msg % args) else: self._logs.append(msg) def setUp(self): super(FileUtilTestCase, self).setUp() self._logs = [] self.old_log = log.info log.info = self._log tmp_dir = self.mkdtemp() self.source = os.path.join(tmp_dir, 'f1') self.target = os.path.join(tmp_dir, 'f2') self.target_dir = os.path.join(tmp_dir, 'd1') def tearDown(self): log.info = self.old_log super(FileUtilTestCase, self).tearDown() def test_move_file_verbosity(self): f = open(self.source, 'w') try: f.write('some content') finally: f.close() move_file(self.source, self.target, verbose=0) wanted = [] self.assertEqual(self._logs, wanted) # back to original state move_file(self.target, self.source, verbose=0) move_file(self.source, self.target, verbose=1) wanted = ['moving %s -> %s' % (self.source, self.target)] self.assertEqual(self._logs, wanted) # back to original state move_file(self.target, self.source, verbose=0) self._logs = [] # now the target is a dir os.mkdir(self.target_dir) move_file(self.source, self.target_dir, verbose=1) wanted = ['moving %s -> %s' % (self.source, self.target_dir)] self.assertEqual(self._logs, wanted) def test_move_file_exception_unpacking_rename(self): # see issue 22182 with patch("os.rename", side_effect=OSError("wrong", 1)), \ self.assertRaises(DistutilsFileError): with open(self.source, 'w') as fobj: fobj.write('spam eggs') move_file(self.source, self.target, verbose=0) def test_move_file_exception_unpacking_unlink(self): # see issue 22182 with patch("os.rename", side_effect=OSError(errno.EXDEV, "wrong")), \ patch("os.unlink", side_effect=OSError("wrong", 1)), \ self.assertRaises(DistutilsFileError): with open(self.source, 'w') as fobj: fobj.write('spam eggs') move_file(self.source, self.target, verbose=0) def test_copy_file_hard_link(self): with open(self.source, 'w') as f: f.write('some content') # Check first that copy_file() will not fall back on copying the file # instead of creating the hard link. try: os.link(self.source, self.target) except OSError as e: self.skipTest('os.link: %s' % e) else: unlink(self.target) st = os.stat(self.source) copy_file(self.source, self.target, link='hard') st2 = os.stat(self.source) st3 = os.stat(self.target) self.assertTrue(os.path.samestat(st, st2), (st, st2)) self.assertTrue(os.path.samestat(st2, st3), (st2, st3)) with open(self.source, 'r') as f: self.assertEqual(f.read(), 'some content') def test_copy_file_hard_link_failure(self): # If hard linking fails, copy_file() falls back on copying file # (some special filesystems don't support hard linking even under # Unix, see issue #8876). with open(self.source, 'w') as f: f.write('some content') st = os.stat(self.source) with patch("os.link", side_effect=OSError(0, "linking unsupported")): copy_file(self.source, self.target, link='hard') st2 = os.stat(self.source) st3 = os.stat(self.target) self.assertTrue(os.path.samestat(st, st2), (st, st2)) self.assertFalse(os.path.samestat(st2, st3), (st2, st3)) for fn in (self.source, self.target): with open(fn, 'r') as f: self.assertEqual(f.read(), 'some content') def test_suite(): return unittest.makeSuite(FileUtilTestCase) if __name__ == "__main__": run_unittest(test_suite())
Save
cmd:
run