2023-02-08 18:12:00 +01:00
|
|
|
/* PipeWire */
|
|
|
|
|
/* SPDX-FileCopyrightText: Copyright © 2019 Wim Taymans */
|
|
|
|
|
/* SPDX-License-Identifier: MIT */
|
2022-03-05 12:21:28 +02:00
|
|
|
|
|
|
|
|
#include "config.h"
|
|
|
|
|
|
2025-05-30 10:15:49 +01:00
|
|
|
#include <sys/wait.h>
|
|
|
|
|
|
2022-03-05 12:21:28 +02:00
|
|
|
#include "pwtest.h"
|
|
|
|
|
|
|
|
|
|
PWTEST(openal_info_test)
|
|
|
|
|
{
|
2025-07-28 22:05:45 +03:00
|
|
|
/* openal-info tries to load libpipewire, which would need
|
|
|
|
|
* LD_PRELOAD=/lib64/libasan.so.XX to work when ASan is enabled. Don't try to
|
|
|
|
|
* figure out the right preload, but just disable the test in that case.
|
|
|
|
|
*/
|
|
|
|
|
#if defined(OPENAL_INFO_PATH) && !defined(HAVE_ASAN)
|
2022-09-27 16:41:22 -04:00
|
|
|
int status = pwtest_spawn(OPENAL_INFO_PATH, (char *[]){ "openal-info", NULL });
|
2022-03-05 12:21:28 +02:00
|
|
|
pwtest_int_eq(WEXITSTATUS(status), 0);
|
2025-07-28 22:05:45 +03:00
|
|
|
pwtest_int_eq(WIFSIGNALED(status), 0);
|
2022-03-05 12:21:28 +02:00
|
|
|
return PWTEST_PASS;
|
|
|
|
|
#else
|
|
|
|
|
return PWTEST_SKIP;
|
|
|
|
|
#endif
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
PWTEST(pactl_test)
|
|
|
|
|
{
|
|
|
|
|
#ifdef PACTL_PATH
|
2022-09-27 16:41:22 -04:00
|
|
|
int status = pwtest_spawn(PACTL_PATH, (char *[]){ "pactl", "info", NULL });
|
2022-03-05 12:21:28 +02:00
|
|
|
pwtest_int_eq(WEXITSTATUS(status), 0);
|
2025-07-28 22:05:45 +03:00
|
|
|
pwtest_int_eq(WIFSIGNALED(status), 0);
|
2022-03-05 12:21:28 +02:00
|
|
|
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;
|
|
|
|
|
}
|