mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-10-29 05:40:27 -04:00
test: add simple functional tests
Try running openal-info.
This commit is contained in:
parent
76bab25afb
commit
c604f1608a
2 changed files with 84 additions and 0 deletions
|
|
@ -119,6 +119,28 @@ test('test-spa',
|
||||||
link_with: pwtest_lib)
|
link_with: pwtest_lib)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
openal_info = find_program('openal-info', required: false)
|
||||||
|
if openal_info.found()
|
||||||
|
cdata.set_quoted('OPENAL_INFO_PATH', openal_info.full_path())
|
||||||
|
endif
|
||||||
|
summary({'openal-info': openal_info.found()}, bool_yn: true, section: 'Functional test programs')
|
||||||
|
|
||||||
|
pactl = find_program('pactl', required: false)
|
||||||
|
if pactl.found()
|
||||||
|
cdata.set_quoted('PACTL_PATH', pactl.full_path())
|
||||||
|
endif
|
||||||
|
summary({'pactl': pactl.found()}, bool_yn: true, section: 'Functional test programs')
|
||||||
|
|
||||||
|
if default_sm == 'media-session' or default_sm == 'wireplumber'
|
||||||
|
test('test-functional',
|
||||||
|
executable('test-functional',
|
||||||
|
'test-functional.c',
|
||||||
|
include_directories: pwtest_inc,
|
||||||
|
dependencies: [ spa_dep ],
|
||||||
|
link_with: pwtest_lib)
|
||||||
|
)
|
||||||
|
endif
|
||||||
|
|
||||||
valgrind = find_program('valgrind', required: false)
|
valgrind = find_program('valgrind', required: false)
|
||||||
summary({'valgrind (test setup)': valgrind.found()}, bool_yn: true, section: 'Optional programs')
|
summary({'valgrind (test setup)': valgrind.found()}, bool_yn: true, section: 'Optional programs')
|
||||||
if valgrind.found()
|
if valgrind.found()
|
||||||
|
|
|
||||||
62
test/test-functional.c
Normal file
62
test/test-functional.c
Normal file
|
|
@ -0,0 +1,62 @@
|
||||||
|
/* PipeWire
|
||||||
|
*
|
||||||
|
* Copyright © 2019 Wim Taymans
|
||||||
|
*
|
||||||
|
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
* copy of this software and associated documentation files (the "Software"),
|
||||||
|
* to deal in the Software without restriction, including without limitation
|
||||||
|
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||||
|
* and/or sell copies of the Software, and to permit persons to whom the
|
||||||
|
* Software is furnished to do so, subject to the following conditions:
|
||||||
|
*
|
||||||
|
* The above copyright notice and this permission notice (including the next
|
||||||
|
* paragraph) shall be included in all copies or substantial portions of the
|
||||||
|
* Software.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||||
|
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
|
* DEALINGS IN THE SOFTWARE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
#include "config.h"
|
||||||
|
|
||||||
|
#include "pwtest.h"
|
||||||
|
|
||||||
|
PWTEST(openal_info_test)
|
||||||
|
{
|
||||||
|
int status;
|
||||||
|
|
||||||
|
#ifdef OPENAL_INFO_PATH
|
||||||
|
status = pwtest_spawn(OPENAL_INFO_PATH, (char *[]){ "openal-info", NULL });
|
||||||
|
pwtest_int_eq(WEXITSTATUS(status), 0);
|
||||||
|
return PWTEST_PASS;
|
||||||
|
#else
|
||||||
|
return PWTEST_SKIP;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
PWTEST(pactl_test)
|
||||||
|
{
|
||||||
|
int status;
|
||||||
|
|
||||||
|
#ifdef PACTL_PATH
|
||||||
|
status = pwtest_spawn(PACTL_PATH, (char *[]){ "pactl", "info", NULL });
|
||||||
|
pwtest_int_eq(WEXITSTATUS(status), 0);
|
||||||
|
return PWTEST_PASS;
|
||||||
|
#else
|
||||||
|
return PWTEST_SKIP;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
PWTEST_SUITE(pw_array)
|
||||||
|
{
|
||||||
|
pwtest_add(pactl_test, PWTEST_ARG_DAEMON);
|
||||||
|
pwtest_add(openal_info_test, PWTEST_ARG_DAEMON);
|
||||||
|
|
||||||
|
return PWTEST_PASS;
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue