glibc/localedata/tests-mbwc/tsp_common.c

65 lines
1.2 KiB
C
Raw Normal View History

/*
* TEST SUITE FOR MB/WC FUNCTIONS IN C LIBRARY
* Main driver
*/
#define TST_FUNCTION_CALL(func) _TST_FUNCTION_CALL(func)
#define _TST_FUNCTION_CALL(func) tst ##_## func
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <locale.h>
#include <errno.h>
#include <signal.h>
#include "tst_types.h"
#include "tgn_locdef.h"
int
main (int argc, char *argv[])
{
int ret;
int debug;
debug = argc > 1 ? atoi (argv[1]) : 0;
if (debug)
{
fprintf (stdout, "\nTST_MBWC ===> %s ...\n", argv[0]);
}
ret = TST_FUNCTION_CALL (TST_FUNCTION) (stdout, debug);
return (ret != 0);
}
#define MAX_RESULT_REC 132
char result_rec[MAX_RESULT_REC];
int
result (FILE * fp, char res, const char *func, const char *loc, int rec_no,
int seq_no, int case_no, const char *msg)
{
if (fp == NULL
|| strlen (func) + strlen (loc) + strlen (msg) + 32 > MAX_RESULT_REC)
{
fprintf (stderr,
"Warning: result(): can't write the result: %s:%s:%d:%d:%s\n",
func, loc, rec_no, case_no, msg);
return 0;
}
sprintf (result_rec, "%s:%s:%d:%d:%d:%c:%s\n", func, loc, rec_no, seq_no,
case_no, res, msg);
if (fputs (result_rec, fp) == EOF)
{
return 0;
}
return 1;
}