diff options
author | Andreas Jaeger <aj@suse.de> | 2000-06-27 12:14:09 +0000 |
---|---|---|
committer | Andreas Jaeger <aj@suse.de> | 2000-06-27 12:14:09 +0000 |
commit | 5b905722f66719de502ecd6129ef9a1bda4f9f47 (patch) | |
tree | e74e131343a6427f807f151abcabcce2c62f94ee /localedata/tests-mbwc/tst_wcscoll.c | |
parent | 756bb30555774e22121790fd6eb3dcf2ca4ed29e (diff) | |
download | glibc-5b905722f66719de502ecd6129ef9a1bda4f9f47.tar.gz glibc-5b905722f66719de502ecd6129ef9a1bda4f9f47.tar.xz glibc-5b905722f66719de502ecd6129ef9a1bda4f9f47.zip |
* Makefile (tests): Add tests from tests-mbwc subdirectory,
comment them out for now. (subdir-dirs): New for tests-mbwc, add also vpaths. * Makefile (tests): Add tests from tests-mbwc subdirectory, comment them out for now. (subdir-dirs): New for tests-mbwc, add also vpaths.
Diffstat (limited to 'localedata/tests-mbwc/tst_wcscoll.c')
-rw-r--r-- | localedata/tests-mbwc/tst_wcscoll.c | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/localedata/tests-mbwc/tst_wcscoll.c b/localedata/tests-mbwc/tst_wcscoll.c new file mode 100644 index 0000000000..d648fa3c60 --- /dev/null +++ b/localedata/tests-mbwc/tst_wcscoll.c @@ -0,0 +1,57 @@ +/* + WCSCOLL: int wcscoll (const wchar_t *ws1, const wchar_t *ws2); +*/ + +#define TST_FUNCTION wcscoll + +#include "tsp_common.c" +#include "dat_wcscoll.c" + +int +tst_wcscoll (FILE * fp, int debug_flg) +{ + TST_DECL_VARS (int); + wchar_t *ws1, *ws2; + int cmp; + + TST_DO_TEST (wcscoll) + { + TST_HEAD_LOCALE (wcscoll, S_WCSCOLL); + TST_DO_REC (wcscoll) + { + TST_GET_ERRET (wcscoll); + ws1 = TST_INPUT (wcscoll).ws1; /* external value: size WCSSIZE */ + ws2 = TST_INPUT (wcscoll).ws2; + + TST_CLEAR_ERRNO; + ret = wcscoll (ws1, ws2); + TST_SAVE_ERRNO; + + if (debug_flg) + { + fprintf (stderr, "tst_wcscoll: ret = %d\n", ret); + } + + cmp = TST_EXPECT (wcscoll).cmp_flg; + TST_IF_RETURN (S_WCSCOLL) + { + if (cmp != 0) + { + if ((cmp == 1 && ret > 0) || (cmp == -1 && ret < 0)) + { + Result (C_SUCCESS, S_WCSCOLL, CASE_3, MS_PASSED); + } + else + { + err_count++; + Result (C_FAILURE, S_WCSCOLL, CASE_3, + "the return value should be positive " + "/negative but it's negative/positive."); + } + } + } + } + } + + return err_count; +} |