xrdp/tests/libxrdp/test_libxrdp_main.c
matt335672 57bd1be5b1 Disable stdout buffering for LOG() when running tests
Normally the test runners run in 'forking mode'. When a lot of
messages are logged to stdout, the child process can still be writing
data when the parent writes 'ok' or 'not ok'. This can confuse
the tap-driver.sh process.
2023-01-30 14:31:16 +00:00

36 lines
909 B
C

#if defined(HAVE_CONFIG_H)
#include "config_ac.h"
#endif
#include <stdio.h>
#include <stdlib.h>
#include <check.h>
#include "log.h"
#include "test_libxrdp.h"
int main (void)
{
int number_failed;
SRunner *sr;
sr = srunner_create(make_suite_test_xrdp_sec_process_mcs_data_monitors());
srunner_add_suite(sr, make_suite_test_monitor_processing());
srunner_set_tap(sr, "-");
/*
* Set up console logging */
struct log_config *lc = log_config_init_for_console(LOG_LEVEL_INFO, NULL);
log_start_from_param(lc);
log_config_free(lc);
/* Disable stdout buffering, as this can confuse the error
* reporting when running in libcheck fork mode */
setvbuf(stdout, NULL, _IONBF, 0);
srunner_run_all (sr, CK_ENV);
number_failed = srunner_ntests_failed(sr);
srunner_free(sr);
log_end();
return (number_failed == 0) ? EXIT_SUCCESS : EXIT_FAILURE;
}