Mercurial > hg > auditok
changeset 145:85d26e96d259
Add tests for _get_audio_parameters
author | Amine Sehili <amine.sehili@gmail.com> |
---|---|
date | Tue, 19 Feb 2019 20:18:45 +0100 |
parents | fae263792c2e |
children | daeb73d16dbf |
files | auditok/io.py tests/test_io.py |
diffstat | 2 files changed, 49 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- 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)
--- 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),