]> granicus.if.org Git - python/commitdiff
Issue #18266: test_largefile now works with unittest test discovery and
authorSerhiy Storchaka <storchaka@gmail.com>
Wed, 17 Jul 2013 10:44:17 +0000 (13:44 +0300)
committerSerhiy Storchaka <storchaka@gmail.com>
Wed, 17 Jul 2013 10:44:17 +0000 (13:44 +0300)
supports running only selected tests.  Patch by Zachary Ware.

1  2 
Lib/test/test_largefile.py
Misc/NEWS

index 7502dc3c82b84e422ec887ccb2961883e19c9526,63ee6972501e12ffa6cf4dad9fd22382c0f448cc..5b276e76ff2ec76ec6ac4c4d52fb5266bfe45da1
@@@ -158,35 -156,25 +156,25 @@@ def setUpModule()
          try:
              # 2**31 == 2147483648
              f.seek(2147483649)
-             # Seeking is not enough of a test: you must write and
-             # flush, too!
+             # Seeking is not enough of a test: you must write and flush, too!
              f.write(b'x')
              f.flush()
 -        except (IOError, OverflowError):
 +        except (OSError, OverflowError):
+             raise unittest.SkipTest("filesystem does not have "
+                                     "largefile support")
+         finally:
              f.close()
              unlink(TESTFN)
-             raise unittest.SkipTest("filesystem does not have largefile support")
-         else:
-             f.close()
-     suite = unittest.TestSuite()
-     for _open, prefix in [(io.open, 'C'), (pyio.open, 'Py')]:
-         class TestCase(LargeFileTest):
-             pass
-         TestCase.open = staticmethod(_open)
-         TestCase.__name__ = prefix + LargeFileTest.__name__
-         suite.addTest(TestCase('test_seek'))
-         suite.addTest(TestCase('test_osstat'))
-         suite.addTest(TestCase('test_seek_read'))
-         suite.addTest(TestCase('test_lseek'))
-         with _open(TESTFN, 'wb') as f:
-             if hasattr(f, 'truncate'):
-                 suite.addTest(TestCase('test_truncate'))
-         suite.addTest(TestCase('test_seekable'))
-         unlink(TESTFN)
-     try:
-         run_unittest(suite)
-     finally:
-         unlink(TESTFN)
+ class CLargeFileTest(LargeFileTest, unittest.TestCase):
+     open = staticmethod(io.open)
+ class PyLargeFileTest(LargeFileTest, unittest.TestCase):
+     open = staticmethod(pyio.open)
+ def tearDownModule():
+     unlink(TESTFN)
  
  if __name__ == '__main__':
-     test_main()
+     unittest.main()
diff --cc Misc/NEWS
index 8cded5e7f35a7f1a8f89403d81bda4d0ac203775,6650d0d4af9f3eb51c8d96f0aa5de7ca8f9f1b35..1c971bffcd85bb0a5f7447fac8efe614de456520
+++ b/Misc/NEWS
@@@ -478,72 -390,63 +478,75 @@@ 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 #18266: test_largefile now works with unittest test discovery and
++  supports running only selected tests.  Patch by Zachary Ware.
 -- Issue #14254: IDLE now handles readline correctly across shell restarts.
 +- Issue #17767: test_locale now works with unittest test discovery.
 +  Original patch by Zachary Ware.
  
 -- Issue #17614: IDLE no longer raises exception when quickly closing a file.
 +- Issue #18375: Assume --randomize when --randseed is used for running the
 +  testsuite.
  
 -- Issue #6698: IDLE now opens just an editor window when configured to do so.
 +- Issue #11185: Fix test_wait4 under AIX.  Patch by SĂ©bastien SablĂ©.
  
 -- Issue #8900: Using keyboard shortcuts in IDLE to open a file no longer
 -  raises an exception.
 +- Issue #18207: Fix test_ssl for some versions of OpenSSL that ignore seconds
 +  in ASN1_TIME fields.
  
 -- Issue #6649: Fixed missing exit status in IDLE. Patch by Guilherme Polo.
 +- Issue #18094: test_uuid no more reports skipped tests as passed.
  
 -Tests
 ------
 +- 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).