Mercurial > octave
changeset 30268:007dd7d008b3
test: Fix "audiodevinfo" test if multiple audio devices have the same name.
* libinterp/dldfcn/audiodevinfo.cc: Fix test if multiple audio devices have the
same name.
author | Markus Mützel <markus.muetzel@gmx.de> |
---|---|
date | Mon, 01 Nov 2021 17:38:03 +0100 |
parents | 535f97bb5f86 |
children | 313da8fd4657 |
files | libinterp/dldfcn/audiodevinfo.cc |
diffstat | 1 files changed, 10 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/libinterp/dldfcn/audiodevinfo.cc Mon Nov 01 14:37:01 2021 +0100 +++ b/libinterp/dldfcn/audiodevinfo.cc Mon Nov 01 17:38:03 2021 +0100 @@ -500,11 +500,17 @@ %! devinfo = audiodevinfo; %! nout = audiodevinfo (0); %! nin = audiodevinfo (1); -%! for i = 1:nout -%! assert (devinfo.output(i).ID, audiodevinfo (0, devinfo.output(i).Name)); +%! ## There might be multiple devices with the same name (e.g. on Windows WDM-KS) +%! ## Check only the first of each unique device name. +%! [unq_out_name, idx_unique] = unique ({devinfo.output(:).Name}); +%! unq_out_id = [devinfo.output(idx_unique).ID]; +%! for i = 1:numel (unq_out_name) +%! assert (audiodevinfo (0, unq_out_name{i}), unq_out_id(i)); %! endfor -%! for i = 1:nin -%! assert (devinfo.input (i).ID, audiodevinfo (1, devinfo.input (i).Name)); +%! [unq_in_name, idx_unique] = unique ({devinfo.input(:).Name}); +%! unq_in_id = [devinfo.input(idx_unique).ID]; +%! for i = 1:numel (unq_in_name) +%! assert (audiodevinfo (1, unq_in_name{i}), unq_in_id(i)); %! endfor */