]> git.proxmox.com Git - mirror_edk2.git/blobdiff - AppPkg/Applications/Python/Python-2.7.2/Lib/test/test_ossaudiodev.py
edk2: Remove AppPkg, StdLib, StdLibPrivateInternalFiles
[mirror_edk2.git] / AppPkg / Applications / Python / Python-2.7.2 / Lib / test / test_ossaudiodev.py
diff --git a/AppPkg/Applications/Python/Python-2.7.2/Lib/test/test_ossaudiodev.py b/AppPkg/Applications/Python/Python-2.7.2/Lib/test/test_ossaudiodev.py
deleted file mode 100644 (file)
index 1574103..0000000
+++ /dev/null
@@ -1,174 +0,0 @@
-from test import test_support\r
-test_support.requires('audio')\r
-\r
-from test.test_support import findfile\r
-\r
-ossaudiodev = test_support.import_module('ossaudiodev')\r
-\r
-import errno\r
-import sys\r
-import sunau\r
-import time\r
-import audioop\r
-import unittest\r
-\r
-# Arggh, AFMT_S16_NE not defined on all platforms -- seems to be a\r
-# fairly recent addition to OSS.\r
-try:\r
-    from ossaudiodev import AFMT_S16_NE\r
-except ImportError:\r
-    if sys.byteorder == "little":\r
-        AFMT_S16_NE = ossaudiodev.AFMT_S16_LE\r
-    else:\r
-        AFMT_S16_NE = ossaudiodev.AFMT_S16_BE\r
-\r
-\r
-def read_sound_file(path):\r
-    with open(path, 'rb') as fp:\r
-        au = sunau.open(fp)\r
-        rate = au.getframerate()\r
-        nchannels = au.getnchannels()\r
-        encoding = au._encoding\r
-        fp.seek(0)\r
-        data = fp.read()\r
-\r
-    if encoding != sunau.AUDIO_FILE_ENCODING_MULAW_8:\r
-        raise RuntimeError("Expect .au file with 8-bit mu-law samples")\r
-\r
-    # Convert the data to 16-bit signed.\r
-    data = audioop.ulaw2lin(data, 2)\r
-    return (data, rate, 16, nchannels)\r
-\r
-class OSSAudioDevTests(unittest.TestCase):\r
-\r
-    def play_sound_file(self, data, rate, ssize, nchannels):\r
-        try:\r
-            dsp = ossaudiodev.open('w')\r
-        except IOError, msg:\r
-            if msg.args[0] in (errno.EACCES, errno.ENOENT,\r
-                               errno.ENODEV, errno.EBUSY):\r
-                raise unittest.SkipTest(msg)\r
-            raise\r
-\r
-        # at least check that these methods can be invoked\r
-        dsp.bufsize()\r
-        dsp.obufcount()\r
-        dsp.obuffree()\r
-        dsp.getptr()\r
-        dsp.fileno()\r
-\r
-        # Make sure the read-only attributes work.\r
-        self.assertFalse(dsp.closed)\r
-        self.assertEqual(dsp.name, "/dev/dsp")\r
-        self.assertEqual(dsp.mode, "w", "bad dsp.mode: %r" % dsp.mode)\r
-\r
-        # And make sure they're really read-only.\r
-        for attr in ('closed', 'name', 'mode'):\r
-            try:\r
-                setattr(dsp, attr, 42)\r
-            except TypeError:\r
-                pass\r
-            else:\r
-                self.fail("dsp.%s not read-only" % attr)\r
-\r
-        # Compute expected running time of sound sample (in seconds).\r
-        expected_time = float(len(data)) / (ssize//8) / nchannels / rate\r
-\r
-        # set parameters based on .au file headers\r
-        dsp.setparameters(AFMT_S16_NE, nchannels, rate)\r
-        self.assertTrue(abs(expected_time - 3.51) < 1e-2, expected_time)\r
-        t1 = time.time()\r
-        dsp.write(data)\r
-        dsp.close()\r
-        t2 = time.time()\r
-        elapsed_time = t2 - t1\r
-\r
-        percent_diff = (abs(elapsed_time - expected_time) / expected_time) * 100\r
-        self.assertTrue(percent_diff <= 10.0,\r
-                        "elapsed time > 10% off of expected time")\r
-\r
-    def set_parameters(self, dsp):\r
-        # Two configurations for testing:\r
-        #   config1 (8-bit, mono, 8 kHz) should work on even the most\r
-        #      ancient and crufty sound card, but maybe not on special-\r
-        #      purpose high-end hardware\r
-        #   config2 (16-bit, stereo, 44.1kHz) should work on all but the\r
-        #      most ancient and crufty hardware\r
-        config1 = (ossaudiodev.AFMT_U8, 1, 8000)\r
-        config2 = (AFMT_S16_NE, 2, 44100)\r
-\r
-        for config in [config1, config2]:\r
-            (fmt, channels, rate) = config\r
-            if (dsp.setfmt(fmt) == fmt and\r
-                dsp.channels(channels) == channels and\r
-                dsp.speed(rate) == rate):\r
-                break\r
-        else:\r
-            raise RuntimeError("unable to set audio sampling parameters: "\r
-                               "you must have really weird audio hardware")\r
-\r
-        # setparameters() should be able to set this configuration in\r
-        # either strict or non-strict mode.\r
-        result = dsp.setparameters(fmt, channels, rate, False)\r
-        self.assertEqual(result, (fmt, channels, rate),\r
-                         "setparameters%r: returned %r" % (config, result))\r
-\r
-        result = dsp.setparameters(fmt, channels, rate, True)\r
-        self.assertEqual(result, (fmt, channels, rate),\r
-                         "setparameters%r: returned %r" % (config, result))\r
-\r
-    def set_bad_parameters(self, dsp):\r
-        # Now try some configurations that are presumably bogus: eg. 300\r
-        # channels currently exceeds even Hollywood's ambitions, and\r
-        # negative sampling rate is utter nonsense.  setparameters() should\r
-        # accept these in non-strict mode, returning something other than\r
-        # was requested, but should barf in strict mode.\r
-        fmt = AFMT_S16_NE\r
-        rate = 44100\r
-        channels = 2\r
-        for config in [(fmt, 300, rate),       # ridiculous nchannels\r
-                       (fmt, -5, rate),        # impossible nchannels\r
-                       (fmt, channels, -50),   # impossible rate\r
-                      ]:\r
-            (fmt, channels, rate) = config\r
-            result = dsp.setparameters(fmt, channels, rate, False)\r
-            self.assertNotEqual(result, config,\r
-                             "unexpectedly got requested configuration")\r
-\r
-            try:\r
-                result = dsp.setparameters(fmt, channels, rate, True)\r
-            except ossaudiodev.OSSAudioError, err:\r
-                pass\r
-            else:\r
-                self.fail("expected OSSAudioError")\r
-\r
-    def test_playback(self):\r
-        sound_info = read_sound_file(findfile('audiotest.au'))\r
-        self.play_sound_file(*sound_info)\r
-\r
-    def test_set_parameters(self):\r
-        dsp = ossaudiodev.open("w")\r
-        try:\r
-            self.set_parameters(dsp)\r
-\r
-            # Disabled because it fails under Linux 2.6 with ALSA's OSS\r
-            # emulation layer.\r
-            #self.set_bad_parameters(dsp)\r
-        finally:\r
-            dsp.close()\r
-            self.assertTrue(dsp.closed)\r
-\r
-\r
-def test_main():\r
-    try:\r
-        dsp = ossaudiodev.open('w')\r
-    except (ossaudiodev.error, IOError), msg:\r
-        if msg.args[0] in (errno.EACCES, errno.ENOENT,\r
-                           errno.ENODEV, errno.EBUSY):\r
-            raise unittest.SkipTest(msg)\r
-        raise\r
-    dsp.close()\r
-    test_support.run_unittest(__name__)\r
-\r
-if __name__ == "__main__":\r
-    test_main()\r