From 8083cd6c3bd8970de4bb592a0973169733f32b94 Mon Sep 17 00:00:00 2001 From: Berker Peksag Date: Sat, 1 Nov 2014 11:04:06 +0200 Subject: [PATCH] Issue #22665: Add missing get_terminal_size and SameFileError to shutil.__all__. --- Lib/shutil.py | 3 ++- Lib/test/test_shutil.py | 18 ++++++++++++++++++ Misc/NEWS | 3 +++ 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/Lib/shutil.py b/Lib/shutil.py index 0cd6ec48e1d..b5e7cbe3d5d 100644 --- a/Lib/shutil.py +++ b/Lib/shutil.py @@ -36,7 +36,8 @@ __all__ = ["copyfileobj", "copyfile", "copymode", "copystat", "copy", "copy2", "register_archive_format", "unregister_archive_format", "get_unpack_formats", "register_unpack_format", "unregister_unpack_format", "unpack_archive", - "ignore_patterns", "chown", "which"] + "ignore_patterns", "chown", "which", "get_terminal_size", + "SameFileError"] # disk_usage is added later, if available on the platform class Error(OSError): diff --git a/Lib/test/test_shutil.py b/Lib/test/test_shutil.py index 66b3fb19572..c4306da5e41 100644 --- a/Lib/test/test_shutil.py +++ b/Lib/test/test_shutil.py @@ -1762,5 +1762,23 @@ class TermsizeTests(unittest.TestCase): self.assertEqual(expected, actual) +class PublicAPITests(unittest.TestCase): + """Ensures that the correct values are exposed in the public API.""" + + def test_module_all_attribute(self): + self.assertTrue(hasattr(shutil, '__all__')) + target_api = ['copyfileobj', 'copyfile', 'copymode', 'copystat', + 'copy', 'copy2', 'copytree', 'move', 'rmtree', 'Error', + 'SpecialFileError', 'ExecError', 'make_archive', + 'get_archive_formats', 'register_archive_format', + 'unregister_archive_format', 'get_unpack_formats', + 'register_unpack_format', 'unregister_unpack_format', + 'unpack_archive', 'ignore_patterns', 'chown', 'which', + 'get_terminal_size', 'SameFileError'] + if hasattr(os, 'statvfs') or os.name == 'nt': + target_api.append('disk_usage') + self.assertEqual(set(shutil.__all__), set(target_api)) + + if __name__ == '__main__': unittest.main() diff --git a/Misc/NEWS b/Misc/NEWS index f15ea59a391..9f9155dcf1c 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -33,6 +33,9 @@ Core and Builtins Library ------- +- Issue #22665: Add missing get_terminal_size and SameFileError to + shutil.__all__. + - Issue #17381: Fixed handling of case-insensitive ranges in regular expressions.