mirror of
				https://github.com/python/cpython.git
				synced 2025-10-30 21:21:22 +00:00 
			
		
		
		
	Deprecate the audiodev module for 3.0.
This commit is contained in:
		
							parent
							
								
									79618239d1
								
							
						
					
					
						commit
						e5d2cbaeaf
					
				
					 3 changed files with 40 additions and 1 deletions
				
			
		|  | @ -47,6 +47,8 @@ Multimedia | |||
| :mod:`audiodev` | ||||
|    --- Platform-independent API for playing audio data. | ||||
| 
 | ||||
|    .. warning:: The :mod:`audiodev` module has been removed in 3.0. | ||||
| 
 | ||||
| :mod:`linuxaudiodev` | ||||
|    --- Play audio data on the Linux audio device.  Replaced in Python 2.3 by the | ||||
|    :mod:`ossaudiodev` module. | ||||
|  |  | |||
|  | @ -1,4 +1,7 @@ | |||
| """Classes for manipulating audio devices (currently only for Sun and SGI)""" | ||||
| from warnings import warnpy3k | ||||
| warnpy3k("the audiodev module has been removed in Python 3.0", stacklevel=2) | ||||
| del warnpy3k | ||||
| 
 | ||||
| __all__ = ["error","AudioDev"] | ||||
| 
 | ||||
|  |  | |||
|  | @ -124,8 +124,42 @@ def test_buffer(self): | |||
|             self.assertWarning(buffer('a'), w, expected) | ||||
| 
 | ||||
| 
 | ||||
| class TestStdlibRemovals(unittest.TestCase): | ||||
| 
 | ||||
|     all_platforms = ('audiodev',) | ||||
| 
 | ||||
|     def check_removal(self, module_name): | ||||
|         """Make sure the specified module, when imported, raises a | ||||
|         DeprecationWarning and specifies itself in the message.""" | ||||
|         original_module = None | ||||
|         if module_name in sys.modules: | ||||
|             original_module = sys.modules[module_name] | ||||
|             del sys.modules[module_name] | ||||
|         try: | ||||
|             with catch_warning() as w: | ||||
|                 warnings.filterwarnings("error", ".+ removed", | ||||
|                                         DeprecationWarning) | ||||
|                 try: | ||||
|                     __import__(module_name, level=0) | ||||
|                 except DeprecationWarning as exc: | ||||
|                     self.assert_(module_name in exc.args[0]) | ||||
|                 else: | ||||
|                     self.fail("DeprecationWarning not raised for %s" % | ||||
|                                 module_name) | ||||
|         finally: | ||||
|             if original_module: | ||||
|                 sys.modules[module_name] = original_module | ||||
| 
 | ||||
| 
 | ||||
|     def test_platform_independent_removals(self): | ||||
|         # Make sure that the modules that are available on all platforms raise | ||||
|         # the proper DeprecationWarning. | ||||
|         for module_name in self.all_platforms: | ||||
|             self.check_removal(module_name) | ||||
| 
 | ||||
| 
 | ||||
| def test_main(): | ||||
|     run_unittest(TestPy3KWarnings) | ||||
|     run_unittest(TestPy3KWarnings, TestStdlibRemovals) | ||||
| 
 | ||||
| if __name__ == '__main__': | ||||
|     test_main() | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Brett Cannon
						Brett Cannon