From a48389b75092cdce85018b936ed06fbef2a165fd Mon Sep 17 00:00:00 2001 From: Matteo Bernardini Date: Wed, 6 Aug 2025 18:04:54 +0800 Subject: [PATCH] chore: make `pyright` happy on tests --- tests/test.py | 45 ++++++++++++++++++++++++--------------------- 1 file changed, 24 insertions(+), 21 deletions(-) diff --git a/tests/test.py b/tests/test.py index 0251e7b..e3eb15b 100755 --- a/tests/test.py +++ b/tests/test.py @@ -13,14 +13,16 @@ import alsaaudio import warnings from contextlib import closing +MethodsType = list[tuple[str, tuple[int, ...] | None]] + # we can't test read and write well - these are tested otherwise -PCMMethods = [ +PCMMethods: MethodsType = [ ('pcmtype', None), ('pcmmode', None), ('cardname', None) ] -PCMDeprecatedMethods = [ +PCMDeprecatedMethods: MethodsType = [ ('setchannels', (2,)), ('setrate', (44100,)), ('setformat', (alsaaudio.PCM_FORMAT_S8,)), @@ -30,20 +32,21 @@ PCMDeprecatedMethods = [ # A clever test would look at the Mixer capabilities and selectively run the # omitted tests, but I am too tired for that. -MixerMethods = [('cardname', None), - ('mixer', None), - ('mixerid', None), - ('switchcap', None), - ('volumecap', None), - ('getvolume', None), - ('getrange', None), - ('getenum', None), -# ('getmute', None), -# ('getrec', None), -# ('setvolume', (60,)), -# ('setmute', (0,)) -# ('setrec', (0')), - ] +MixerMethods: MethodsType = [ + ('cardname', None), + ('mixer', None), + ('mixerid', None), + ('switchcap', None), + ('volumecap', None), + ('getvolume', None), + ('getrange', None), + ('getenum', None), +# ('getmute', None), +# ('getrec', None), +# ('setvolume', (60,)), +# ('setmute', (0,)) +# ('setrec', (0')), +] class MixerTest(unittest.TestCase): """Test Mixer objects""" @@ -162,25 +165,25 @@ class PollDescriptorArgsTest(unittest.TestCase): def testArgsNoList(self): with closing(alsaaudio.PCM()) as pcm: with self.assertRaises(TypeError): - pcm.polldescriptors_revents('foo') + pcm.polldescriptors_revents('foo') # pyright: ignore[reportArgumentType] def testArgsListButNoTuples(self): with closing(alsaaudio.PCM()) as pcm: with self.assertRaises(TypeError): - pcm.polldescriptors_revents(['foo', 1]) + pcm.polldescriptors_revents(['foo', 1]) # pyright: ignore[reportArgumentType] def testArgsListButInvalidTuples(self): with closing(alsaaudio.PCM()) as pcm: with self.assertRaises(TypeError): - pcm.polldescriptors_revents([('foo', 'bar')]) + pcm.polldescriptors_revents([('foo', 'bar')]) # pyright: ignore[reportArgumentType] def testArgsListTupleWrongLength(self): with closing(alsaaudio.PCM()) as pcm: with self.assertRaises(TypeError): - pcm.polldescriptors_revents([(1, )]) + pcm.polldescriptors_revents([(1, )]) # pyright: ignore[reportArgumentType] with self.assertRaises(TypeError): - pcm.polldescriptors_revents([(1, 2, 3)]) + pcm.polldescriptors_revents([(1, 2, 3)]) # pyright: ignore[reportArgumentType] if __name__ == '__main__':