# HG changeset patch # User Amine Sehili # Date 1550603925 -3600 # Node ID 85d26e96d259ea572aee6f5dd6081e2b2655032d # Parent fae263792c2e33ff299f2c2bc7d5d8ccb58661b2 Add tests for _get_audio_parameters diff -r fae263792c2e -r 85d26e96d259 auditok/io.py --- a/auditok/io.py Fri Feb 18 16:10:48 2028 +0100 +++ b/auditok/io.py Tue Feb 19 20:18:45 2019 +0100 @@ -145,9 +145,7 @@ ("sample_width", "sw"), ("channels", "ch"), ): - param = param_dict.get(long_name, None) or param_dict.get( - short_name, None - ) + param = param_dict.get(long_name, param_dict.get(short_name)) if param is None or not isinstance(param, int): raise AudioParameterError( err_message.format(ln=long_name, sn=short_name, val=param) diff -r fae263792c2e -r 85d26e96d259 tests/test_io.py --- a/tests/test_io.py Fri Feb 18 16:10:48 2028 +0100 +++ b/tests/test_io.py Tue Feb 19 20:18:45 2019 +0100 @@ -128,6 +128,54 @@ self.assertEqual(result, expected) @genty_dataset( + simple=((8000, 2, 1, 0), (8000, 2, 1, 0)), + use_channel_left=((8000, 2, 1, "left"), (8000, 2, 1, 0)), + use_channel_right=((8000, 2, 1, "right"), (8000, 2, 1, 1)), + use_channel_mix=((8000, 2, 1, "mix"), (8000, 2, 1, "mix")), + use_channel_None=((8000, 2, 2, None), (8000, 2, 2, 0)), + no_use_channel=((8000, 2, 2), (8000, 2, 2, 0)), + ) + def test_get_audio_parameters_short_params(self, values, expected): + params = {k: v for k, v in zip(("sr", "sw", "ch", "uc"), values)} + result = _get_audio_parameters(params) + self.assertEqual(result, expected) + + @genty_dataset( + simple=((8000, 2, 1, 0), (8000, 2, 1, 0)), + use_channel_left=((8000, 2, 1, "left"), (8000, 2, 1, 0)), + use_channel_right=((8000, 2, 1, "right"), (8000, 2, 1, 1)), + use_channel_mix=((8000, 2, 1, "mix"), (8000, 2, 1, "mix")), + use_channel_None=((8000, 2, 2, None), (8000, 2, 2, 0)), + no_use_channel=((8000, 2, 2), (8000, 2, 2, 0)), + ) + def test_get_audio_parameters_long_params(self, values, expected): + params = { + k: v + for k, v in zip( + ("sampling_rate", "sample_width", "channels", "use_channel"), + values, + ) + } + result = _get_audio_parameters(params) + self.assertEqual(result, expected) + + @genty_dataset(simple=((8000, 2, 1, 0), (8000, 2, 1, 0))) + def test_get_audio_parameters_short_and_long_params( + self, values, expected + ): + params = { + k: v + for k, v in zip( + ("sampling_rate", "sample_width", "channels", "use_channel"), + values, + ) + } + + params.update({k: v for k, v in zip(("sr", "sw", "ch", "uc"), "xxxx")}) + result = _get_audio_parameters(params) + self.assertEqual(result, expected) + + @genty_dataset( mono_1byte=([400], 1), stereo_1byte=([400, 600], 1), three_channel_1byte=([400, 600, 2400], 1),