From bb9231c8402e9ae99f98a868429e73c6340da304 Mon Sep 17 00:00:00 2001 From: Carmelo Amoroso Date: Thu, 10 Jul 2008 10:30:28 +0000 Subject: Added missing tests for locale with multibyte encoding --- test/locale-mbwc/dat_mbsrtowcs.c | 180 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 180 insertions(+) create mode 100644 test/locale-mbwc/dat_mbsrtowcs.c (limited to 'test/locale-mbwc/dat_mbsrtowcs.c') diff --git a/test/locale-mbwc/dat_mbsrtowcs.c b/test/locale-mbwc/dat_mbsrtowcs.c new file mode 100644 index 000000000..30a0a6c02 --- /dev/null +++ b/test/locale-mbwc/dat_mbsrtowcs.c @@ -0,0 +1,180 @@ +/* + * TEST SUITE FOR MB/WC FUNCTIONS IN C LIBRARY + * + * FILE: dat_mbsrtowcs.c + * + * MBSRTOWCS: size_t mbsrtowcs (wchar_t *ws, char **s, size_t n, + * mbstate_t *ps); + */ + + +TST_MBSRTOWCS tst_mbsrtowcs_loc [] = { + { + { Tmbsrtowcs, TST_LOC_de }, + { + { /*----------------- #01 -----------------*/ + { + { + { 1, "üäö", 4, 0,0 }, + { 1, "üäö", 3, 0,0 }, + { 1, "üäö", 2, 0,0 }, + } + }, + { + { + { 0,1,3, { 0x00FC,0x00E4,0x00F6,0x0000 } }, + { 0,1,3, { 0x00FC,0x00E4,0x00F6,0x0000 } }, + { 0,1,2, { 0x00FC,0x00E4,0x00F6,0x0000 } }, + } + } + }, + { /*----------------- #02 -----------------*/ + { + { + { 1, "üäö", 4, 0,0 }, + { 1, "", 1, 0,0 }, + { 0, "üäö", 4, 0,0 }, + } + }, + { + { + { 0,1,3, { 0x00FC,0x00E4,0x00F6,0x0000 } }, + { 0,1,0, { 0x0000 } }, + { 0,1,3, { 0x0000 } }, + } + } + }, + { /*----------------- END -----------------*/ + .is_last = 1 + } + } + }, + + { + { Tmbsrtowcs, TST_LOC_enUS }, + { + { /*----------------- #01 -----------------*/ + { + { + { 1, "ABC", 4, 0,0 }, + { 1, "ABC", 3, 0,0 }, + { 1, "ABC", 2, 0,0 }, + } + }, + { + { + { 0,1,3, { 0x0041,0x0042,0x0043,0x0000 } }, + { 0,1,3, { 0x0041,0x0042,0x0043,0x0000 } }, + { 0,1,2, { 0x0041,0x0042,0x0043,0x0000 } }, + } + } + }, + { /*----------------- #02 -----------------*/ + { + { + { 1, "ABC", 4, 0,0 }, + { 1, "", 1, 0,0 }, + { 0, "ABC", 4, 0,0 }, + } + }, + { + { + { 0,1,3, { 0x0041,0x0042,0x0043,0x0000 } }, + { 0,1,0, { 0x0000 } }, + { 0,1,3, { 0x0000 } }, + } + } + }, + { /*----------------- END -----------------*/ + .is_last = 1 + } + } + }, + +#if 0 + { + { Tmbsrtowcs, TST_LOC_eucJP }, + { + { /*----------------- #01 -----------------*/ + { + { + { 1, "\244\242\244\244\244\246ABC", 7, 0,0 }, + { 1, "\244\242\244\244\244\246ABC", 6, 0,0 }, + { 1, "\244\242\244\244\244\246ABC", 4, 0,0 }, + } + }, + { + { + { 0,1,6, { 0x3042,0x3044,0x3046,0x0041,0x0042,0x0043,0x0000 }}, + { 0,1,6, { 0x3042,0x3044,0x3046,0x0041,0x0042,0x0043,0x0000 }}, + { 0,1,4, { 0x3042,0x3044,0x3046,0x0041,0x0000 } }, + } + } + }, + { /*----------------- #02 -----------------*/ + { + { + { 1, "\244\242\244\244\244\246ABC", 7, 0,0 }, + { 1, "", 1, 0,0 }, + { 0, "\244\242\244\244\244\246ABC", 7, 0,0 }, + } + }, + { + { + { 0,1,6, { 0x3042,0x3044,0x3046,0x0041,0x0042,0x0043,0x0000 }}, + { 0,1,0, { 0x0000 } }, + { 0,1,6, { 0x0000 } }, + } + } + }, + { /*----------------- END -----------------*/ + .is_last = 1 + } + } + }, +#else + { + { Tmbsrtowcs, TST_LOC_ja_UTF8 }, + { + { /*----------------- #01 -----------------*/ + { + { + { 1, "\343\201\202\343\201\204\343\201\206ABC", 7, 0,0 }, + { 1, "\343\201\202\343\201\204\343\201\206ABC", 6, 0,0 }, + { 1, "\343\201\202\343\201\204\343\201\206ABC", 4, 0,0 }, + } + }, + { + { + { 0,1,6, { 0x3042,0x3044,0x3046,0x0041,0x0042,0x0043,0x0000 }}, + { 0,1,6, { 0x3042,0x3044,0x3046,0x0041,0x0042,0x0043,0x0000 }}, + { 0,1,4, { 0x3042,0x3044,0x3046,0x0041,0x0000 } }, + } + } + }, + { /*----------------- #02 -----------------*/ + { + { + { 1, "\343\201\202\343\201\204\343\201\206ABC", 7, 0,0 }, + { 1, "", 1, 0,0 }, + { 0, "\343\201\202\343\201\204\343\201\206ABC", 7, 0,0 }, + } + }, + { + { + { 0,1,6, { 0x3042,0x3044,0x3046,0x0041,0x0042,0x0043,0x0000 }}, + { 0,1,0, { 0x0000 } }, + { 0,1,6, { 0x0000 } }, + } + } + }, + { /*----------------- END -----------------*/ + .is_last = 1 + } + } + }, +#endif + { + { Tmbsrtowcs, TST_LOC_end } + } +}; -- cgit v1.2.3