diff options
Diffstat (limited to 'REORG.TODO/localedata/tests-mbwc/tst_towctrans.c')
-rw-r--r-- | REORG.TODO/localedata/tests-mbwc/tst_towctrans.c | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/REORG.TODO/localedata/tests-mbwc/tst_towctrans.c b/REORG.TODO/localedata/tests-mbwc/tst_towctrans.c new file mode 100644 index 0000000000..47bab2cf65 --- /dev/null +++ b/REORG.TODO/localedata/tests-mbwc/tst_towctrans.c @@ -0,0 +1,61 @@ +/* + TOWCTRANS: wint_t towctrans (wint_t wc, wctrans_t desc); +*/ + +#define TST_FUNCTION towctrans + +#include "tsp_common.c" +#include "dat_towctrans.c" + + +int +tst_towctrans (FILE *fp, int debug_flg) +{ + TST_DECL_VARS (wint_t); + wint_t wc; + const char *ts; + wctrans_t wto; + + TST_DO_TEST (towctrans) + { + TST_HEAD_LOCALE (towctrans, S_TOWCTRANS); + TST_DO_REC (towctrans) + { + TST_GET_ERRET (towctrans); + wc = TST_INPUT (towctrans).wc; + ts = TST_INPUT (towctrans).ts; + + wto = wctrans (ts); + + TST_CLEAR_ERRNO; + ret = towctrans (wc, wto); + TST_SAVE_ERRNO; + + if (debug_flg) + { + fprintf (stdout, "towctrans() [ %s : %d ] ret = 0x%x\n", + locale, rec+1, ret); + fprintf (stdout, " errno = %d\n", + errno_save); + } + + TST_IF_RETURN (S_TOWCTRANS) + { + if (ret != 0) + { + result (fp, C_SUCCESS, S_TOWCTRANS, locale, rec+1, + seq_num+1, 3, MS_PASSED); + } + else + { + err_count++; + result (fp, C_FAILURE, S_TOWCTRANS, locale, rec+1, + seq_num+1, 3, + "the function returned 0, but should be non-zero"); + } + } + } + } + + return err_count; +} |