From: Serhiy Storchaka Date: Mon, 22 Jul 2013 18:02:14 +0000 (+0300) Subject: Issue #17944: test_zipfile now discoverable and uses subclassing to X-Git-Tag: v3.4.0a1~105^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9068e4d642353ea9b7b8a3684307d6608f598256;p=python Issue #17944: test_zipfile now discoverable and uses subclassing to generate tests for different compression types. Fixed a bug with skipping some tests due to use of exhausted iterators. --- 9068e4d642353ea9b7b8a3684307d6608f598256 diff --cc Lib/test/test_zipfile.py index d3a359f066,fb866d8b4d..26dd09b18c --- a/Lib/test/test_zipfile.py +++ b/Lib/test/test_zipfile.py @@@ -1124,13 -942,11 +942,11 @@@ class OtherTests(unittest.TestCase) # - passing a file-like object fp = io.BytesIO() fp.write(zip_contents) - chk = zipfile.is_zipfile(fp) - self.assertTrue(chk) + self.assertTrue(zipfile.is_zipfile(fp)) fp.seek(0, 0) - chk = zipfile.is_zipfile(fp) - self.assertTrue(chk) + self.assertTrue(zipfile.is_zipfile(fp)) - def test_non_existent_file_raises_IOError(self): + def test_non_existent_file_raises_OSError(self): # make sure we don't raise an AttributeError when a partially-constructed # ZipFile instance is finalized; this tests for regression on SF tracker # bug #403871. @@@ -1911,5 -1610,25 +1610,24 @@@ class AbstractUniversalNewlineTests unlink(TESTFN2) + class StoredUniversalNewlineTests(AbstractUniversalNewlineTests, + unittest.TestCase): + compression = zipfile.ZIP_STORED + + @requires_zlib + class DeflateUniversalNewlineTests(AbstractUniversalNewlineTests, + unittest.TestCase): + compression = zipfile.ZIP_DEFLATED + + @requires_bz2 + class Bzip2UniversalNewlineTests(AbstractUniversalNewlineTests, + unittest.TestCase): + compression = zipfile.ZIP_BZIP2 + + @requires_lzma + class LzmaUniversalNewlineTests(AbstractUniversalNewlineTests, + unittest.TestCase): + compression = zipfile.ZIP_LZMA + - if __name__ == "__main__": unittest.main() diff --cc Misc/NEWS index 26c629552f,85238f6674..8bc78d1280 --- a/Misc/NEWS +++ b/Misc/NEWS @@@ -494,75 -406,63 +494,79 @@@ Librar - Issue #14971: unittest test discovery no longer gets confused when a function has a different __name__ than its name in the TestCase class dictionary. -- Issue #17678: Fix DeprecationWarning in the http/cookiejar.py by changing the - usage of get_origin_req_host() to origin_req_host. +- Issue #17487: The wave getparams method now returns a namedtuple rather than + a plain tuple. -- Issue #17666: Fix reading gzip files with an extra field. +- Issue #17675: socket repr() provides local and remote addresses (if any). + Patch by Giampaolo Rodola' -- Issue #17502: Process DEFAULT values in mock side_effect that returns iterator. - Patch by Michael Foord. +- Issue #17093: Make the ABCs in importlib.abc provide default values or raise + reasonable exceptions for their methods to make them more amenable to super() + calls. -- Issue #17572: Avoid chained exceptions while passing bad directives to - time.strptime(). Initial patch by Claudiu Popa. +- Issue #17566: Make importlib.abc.Loader.module_repr() optional instead of an + abstractmethod and raising NotImplementedError so as to be ignored by default. -- Issue #17435: threading.Timer's __init__ method no longer uses mutable - default values for the args and kwargs parameters. +- Issue #17678: Remove the use of deprecated method in http/cookiejar.py. + Changing the usage of get_origin_req_host() to origin_req_host. -- Issue #17526: fix an IndexError raised while passing code without filename to - inspect.findsource(). Initial patch by Tyler Doyle. +- Issue #17666: Fix reading gzip files with an extra field. -- Issue #16550: Update the opcode descriptions of pickletools to use unsigned - integers where appropriate. Initial patch by Serhiy Storchaka. +- Issue #16475: Support object instancing, recursion and interned strings + in marshal -IDLE ----- +- Issue #17502: Process DEFAULT values in mock side_effect that returns iterator. -- Issue #17838: Allow sys.stdin to be reassigned. +- Issue #16795: On the ast.arguments object, unify vararg with varargannotation + and kwarg and kwargannotation. Change the column offset of ast.Attribute to be + at the attribute name. -- Issue #13495: Avoid loading the color delegator twice in IDLE. +- Issue #17434: Properly raise a SyntaxError when a string occurs between future + imports. -- Issue #17798: Allow IDLE to edit new files when specified on command line. +- Issue #17117: Import and @importlib.util.set_loader now set __loader__ when + it has a value of None or the attribute doesn't exist. -- Issue #14735: Update IDLE docs to omit "Control-z on Windows". +- Issue #17032: The "global" in the "NameError: global name 'x' is not defined" + error message has been removed. Patch by Ram Rachum. -- Issue #17585: Fixed IDLE regression. Now closes when using exit() or quit(). +- Issue #18080: When building a C extension module on OS X, if the compiler + is overriden with the CC environment variable, use the new compiler as + the default for linking if LDSHARED is not also overriden. This restores + Distutils behavior introduced in 3.2.3 and inadvertently dropped in 3.3.0. -- Issue #17657: Show full Tk version in IDLE's about dialog. - Patch by Todd Rovito. +- Issue #18113: Fixed a refcount leak in the curses.panel module's + set_userptr() method. Reported by Atsuo Ishimoto. -- Issue #17613: Prevent traceback when removing syntax colorizer in IDLE. +- Implement PEP 443 "Single-dispatch generic functions". -- Issue #1207589: Backwards-compatibility patch for right-click menu in IDLE. +- Implement PEP 435 "Adding an Enum type to the Python standard library". -- Issue #16887: IDLE now accepts Cancel in tabify/untabify dialog box. +Tests +----- -- Issue #17625: In IDLE, close the replace dialog after it is used. ++- Issue #17944: test_zipfile now discoverable and uses subclassing to ++ generate tests for different compression types. Fixed a bug with skipping ++ some tests due to use of exhausted iterators. + -- Issue #14254: IDLE now handles readline correctly across shell restarts. +- Issue #18266: test_largefile now works with unittest test discovery and + supports running only selected tests. Patch by Zachary Ware. -- Issue #17614: IDLE no longer raises exception when quickly closing a file. +- Issue #17767: test_locale now works with unittest test discovery. + Original patch by Zachary Ware. -- Issue #6698: IDLE now opens just an editor window when configured to do so. +- Issue #18375: Assume --randomize when --randseed is used for running the + testsuite. -- Issue #8900: Using keyboard shortcuts in IDLE to open a file no longer - raises an exception. +- Issue #11185: Fix test_wait4 under AIX. Patch by Sébastien Sablé. -- Issue #6649: Fixed missing exit status in IDLE. Patch by Guilherme Polo. +- Issue #18207: Fix test_ssl for some versions of OpenSSL that ignore seconds + in ASN1_TIME fields. -Tests ------ +- Issue #18094: test_uuid no more reports skipped tests as passed. + +- Issue #17992: Add timeouts to asyncore and asynchat tests so that they won't + accidentally hang. - Issue #17833: Fix test_gdb failures seen on machines where debug symbols for glibc are available (seen on PPC64 Linux).