home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2011 July / maximum-cd-2011-07.iso / DiscContents / LibO_3.3.2_Win_x86_install_multi.exe / libreoffice1.cab / test_wave.py < prev    next >
Encoding:
Python Source  |  2011-03-15  |  1.1 KB  |  46 lines

  1. from test.test_support import TESTFN, run_unittest
  2. import os
  3. import wave
  4. import unittest
  5.  
  6. nchannels = 2
  7. sampwidth = 2
  8. framerate = 8000
  9. nframes = 100
  10.  
  11. class TestWave(unittest.TestCase):
  12.  
  13.     def setUp(self):
  14.         self.f = None
  15.  
  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 = '\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()
  46.