Benjamin Peterson | bec087f | 2009-03-26 21:10:30 +0000 | [diff] [blame] | 1 | from test.test_support import findfile, TestFailed, import_module |
2 | import unittest | ||||
Brett Cannon | 2224817 | 2008-05-16 00:10:24 +0000 | [diff] [blame] | 3 | sunaudiodev = import_module('sunaudiodev', deprecated=True) |
Barry Warsaw | 5bc697d | 1997-01-07 21:05:29 +0000 | [diff] [blame] | 4 | import os |
5 | |||||
Fred Drake | b891891 | 2001-04-14 03:10:12 +0000 | [diff] [blame] | 6 | try: |
7 | audiodev = os.environ["AUDIODEV"] | ||||
8 | except KeyError: | ||||
9 | audiodev = "/dev/audio" | ||||
10 | |||||
11 | if not os.path.exists(audiodev): | ||||
Benjamin Peterson | bec087f | 2009-03-26 21:10:30 +0000 | [diff] [blame] | 12 | raise unittest.SkipTest("no audio device found!") |
Fred Drake | b891891 | 2001-04-14 03:10:12 +0000 | [diff] [blame] | 13 | |
Barry Warsaw | 5bc697d | 1997-01-07 21:05:29 +0000 | [diff] [blame] | 14 | def play_sound_file(path): |
15 | fp = open(path, 'r') | ||||
16 | data = fp.read() | ||||
17 | fp.close() | ||||
Barry Warsaw | 3de721d | 1997-01-13 20:53:46 +0000 | [diff] [blame] | 18 | try: |
Guido van Rossum | 41360a4 | 1998-03-26 19:42:58 +0000 | [diff] [blame] | 19 | a = sunaudiodev.open('w') |
Barry Warsaw | 3de721d | 1997-01-13 20:53:46 +0000 | [diff] [blame] | 20 | except sunaudiodev.error, msg: |
Guido van Rossum | 41360a4 | 1998-03-26 19:42:58 +0000 | [diff] [blame] | 21 | raise TestFailed, msg |
Barry Warsaw | 3de721d | 1997-01-13 20:53:46 +0000 | [diff] [blame] | 22 | else: |
Guido van Rossum | 41360a4 | 1998-03-26 19:42:58 +0000 | [diff] [blame] | 23 | a.write(data) |
24 | a.close() | ||||
Barry Warsaw | 5bc697d | 1997-01-07 21:05:29 +0000 | [diff] [blame] | 25 | |
Brett Cannon | 7dbd918 | 2008-03-03 04:19:29 +0000 | [diff] [blame] | 26 | |
27 | def test_main(): | ||||
Barry Warsaw | b241c42 | 1997-01-13 20:34:44 +0000 | [diff] [blame] | 28 | play_sound_file(findfile('audiotest.au')) |
Barry Warsaw | 5bc697d | 1997-01-07 21:05:29 +0000 | [diff] [blame] | 29 | |
Brett Cannon | 7dbd918 | 2008-03-03 04:19:29 +0000 | [diff] [blame] | 30 | |
31 | |||||
32 | if __name__ == '__main__': | ||||
33 | test_main() |