Christian Heimes | 2202f87 | 2008-02-06 14:31:34 +0000 | [diff] [blame] | 1 | from test.test_support import TESTFN, run_unittest |
Guido van Rossum | 3b0a329 | 2002-08-09 16:38:32 +0000 | [diff] [blame] | 2 | import os |
Guido van Rossum | a00afc1 | 2000-10-09 20:05:59 +0000 | [diff] [blame] | 3 | import wave |
Christian Heimes | 2202f87 | 2008-02-06 14:31:34 +0000 | [diff] [blame] | 4 | import unittest |
Guido van Rossum | a00afc1 | 2000-10-09 20:05:59 +0000 | [diff] [blame] | 5 | |
| 6 | nchannels = 2 |
| 7 | sampwidth = 2 |
| 8 | framerate = 8000 |
| 9 | nframes = 100 |
| 10 | |
Christian Heimes | 2202f87 | 2008-02-06 14:31:34 +0000 | [diff] [blame] | 11 | class TestWave(unittest.TestCase): |
Guido van Rossum | a00afc1 | 2000-10-09 20:05:59 +0000 | [diff] [blame] | 12 | |
Christian Heimes | 2202f87 | 2008-02-06 14:31:34 +0000 | [diff] [blame] | 13 | def setUp(self): |
| 14 | self.f = None |
Guido van Rossum | a00afc1 | 2000-10-09 20:05:59 +0000 | [diff] [blame] | 15 | |
Christian Heimes | 2202f87 | 2008-02-06 14:31:34 +0000 | [diff] [blame] | 16 | def tearDown(self): |
| 17 | if self.f is not None: |
| 18 | self.f.close() |
| 19 | try: |
| 20 | os.remove(TESTFN) |
| 21 | except OSError: |
| 22 | pass |
| 23 | |
| 24 | def test_it(self): |
| 25 | self.f = wave.open(TESTFN, 'wb') |
| 26 | self.f.setnchannels(nchannels) |
| 27 | self.f.setsampwidth(sampwidth) |
| 28 | self.f.setframerate(framerate) |
| 29 | self.f.setnframes(nframes) |
| 30 | output = b'\0' * nframes * nchannels * sampwidth |
| 31 | self.f.writeframes(output) |
| 32 | self.f.close() |
| 33 | |
| 34 | self.f = wave.open(TESTFN, 'rb') |
| 35 | self.assertEqual(nchannels, self.f.getnchannels()) |
| 36 | self.assertEqual(sampwidth, self.f.getsampwidth()) |
| 37 | self.assertEqual(framerate, self.f.getframerate()) |
| 38 | self.assertEqual(nframes, self.f.getnframes()) |
| 39 | self.assertEqual(self.f.readframes(nframes), output) |
| 40 | |
| 41 | def test_main(): |
| 42 | run_unittest(TestWave) |
| 43 | |
| 44 | if __name__ == '__main__': |
| 45 | test_main() |