xref: /aosp_15_r20/external/ltp/lib/tst_test_macros.c (revision 49cdfc7efb34551c7342be41a7384b9c40d7cab7)
1 // SPDX-License-Identifier: GPL-2.0-or-later
2 /*
3  * Copyright (c) 2024 Cyril Hrubis <[email protected]>
4  */
5 
6 #include <stdio.h>
7 #define TST_NO_DEFAULT_MAIN
8 #include "tst_test.h"
9 #include "tst_test_macros.h"
10 
tst_errno_in_set(int err,const int * exp_errs,int exp_errs_cnt)11 bool tst_errno_in_set(int err, const int *exp_errs, int exp_errs_cnt)
12 {
13 	int i;
14 
15 	for (i = 0; i < exp_errs_cnt; i++) {
16 		if (err == exp_errs[i])
17 			return 1;
18 	}
19 
20 	return 0;
21 }
22 
tst_errno_names(char * buf,const int * exp_errs,int exp_errs_cnt)23 const char *tst_errno_names(char *buf, const int *exp_errs, int exp_errs_cnt)
24 {
25 	int i;
26 	char *cb = buf;
27 
28 	for (i = 0; i < exp_errs_cnt-1; i++)
29 		cb += sprintf(cb, "%s, ", tst_strerrno(exp_errs[i]));
30 
31 	cb += sprintf(cb, "%s", tst_strerrno(exp_errs[i]));
32 
33 	*cb = '\0';
34 
35 	return buf;
36 }
37