changeset 108:0c496f6f1bf5

Add tests for check_audio_data
author Amine Sehili <amine.sehili@gmail.com>
date Sun, 13 Jan 2019 09:18:39 +0100
parents faf3bdd69251
children 4a9e868a9444
files tests/test_io.py
diffstat 1 files changed, 21 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/tests/test_io.py	Sat Jan 12 18:24:46 2019 +0100
+++ b/tests/test_io.py	Sun Jan 13 09:18:39 2019 +0100
@@ -2,7 +2,9 @@
 import sys
 import math
 from array import array
-from auditok.io import DATA_FORMAT
+from unittest import TestCase
+from genty import genty, genty_dataset
+from auditok.io import DATA_FORMAT, AudioParameterError, check_audio_data
 
 
 if sys.version_info >= (3, 0):
@@ -67,3 +69,21 @@
         for freq in (600, 1150, 2400, 7220)
     }
 )
+
+
+@genty
+class TestIO(TestCase):
+    @genty_dataset(
+        valid_mono=(b"\0" * 113, 1, 1),
+        valid_stereo=(b"\0" * 160, 1, 2),
+        invalid_mono_sw_2=(b"\0" * 113, 2, 1, False),
+        invalid_stereo_sw_1=(b"\0" * 113, 1, 2, False),
+        invalid_stereo_sw_2=(b"\0" * 158, 2, 2, False),
+    )
+    def test_check_audio_data(self, data, sample_width, channels, valid=True):
+
+        if not valid:
+            with self.assertRaises(AudioParameterError):
+                check_audio_data(data, sample_width, channels)
+        else:
+            self.assertIsNone(check_audio_data(data, sample_width, channels))