| 
									
										
										
										
											2010-07-13 23:04:56 +00:00
										 |  |  | import sndhdr | 
					
						
							| 
									
										
										
										
											2014-10-09 16:59:30 -04:00
										 |  |  | import pickle | 
					
						
							| 
									
										
										
										
											2010-07-13 23:04:56 +00:00
										 |  |  | import unittest | 
					
						
							|  |  |  | from test.support import findfile | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | class TestFormats(unittest.TestCase): | 
					
						
							|  |  |  |     def test_data(self): | 
					
						
							|  |  |  |         for filename, expected in ( | 
					
						
							|  |  |  |             ('sndhdr.8svx', ('8svx', 0, 1, 0, 8)), | 
					
						
							|  |  |  |             ('sndhdr.aifc', ('aifc', 44100, 2, 5, 16)), | 
					
						
							|  |  |  |             ('sndhdr.aiff', ('aiff', 44100, 2, 5, 16)), | 
					
						
							|  |  |  |             ('sndhdr.au', ('au', 44100, 2, 5.0, 16)), | 
					
						
							|  |  |  |             ('sndhdr.hcom', ('hcom', 22050.0, 1, -1, 8)), | 
					
						
							|  |  |  |             ('sndhdr.sndt', ('sndt', 44100, 1, 5, 8)), | 
					
						
							|  |  |  |             ('sndhdr.voc', ('voc', 0, 1, -1, 8)), | 
					
						
							| 
									
										
										
										
											2013-03-18 17:42:42 -04:00
										 |  |  |             ('sndhdr.wav', ('wav', 44100, 2, 5, 16)), | 
					
						
							| 
									
										
										
										
											2010-07-13 23:04:56 +00:00
										 |  |  |         ): | 
					
						
							|  |  |  |             filename = findfile(filename, subdir="sndhdrdata") | 
					
						
							|  |  |  |             what = sndhdr.what(filename) | 
					
						
							|  |  |  |             self.assertNotEqual(what, None, filename) | 
					
						
							|  |  |  |             self.assertSequenceEqual(what, expected) | 
					
						
							| 
									
										
										
										
											2014-10-09 16:59:30 -04:00
										 |  |  |             self.assertEqual(what.filetype, expected[0]) | 
					
						
							|  |  |  |             self.assertEqual(what.framerate, expected[1]) | 
					
						
							|  |  |  |             self.assertEqual(what.nchannels, expected[2]) | 
					
						
							|  |  |  |             self.assertEqual(what.nframes, expected[3]) | 
					
						
							|  |  |  |             self.assertEqual(what.sampwidth, expected[4]) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     def test_pickleable(self): | 
					
						
							|  |  |  |         filename = findfile('sndhdr.aifc', subdir="sndhdrdata") | 
					
						
							|  |  |  |         what = sndhdr.what(filename) | 
					
						
							| 
									
										
										
										
											2014-12-15 14:06:02 +02:00
										 |  |  |         for proto in range(pickle.HIGHEST_PROTOCOL + 1): | 
					
						
							|  |  |  |             dump = pickle.dumps(what, proto) | 
					
						
							|  |  |  |             self.assertEqual(pickle.loads(dump), what) | 
					
						
							| 
									
										
										
										
											2014-10-09 16:59:30 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-07-13 23:04:56 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | if __name__ == '__main__': | 
					
						
							|  |  |  |     unittest.main() |