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_wcsncat.c | 158 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 158 insertions(+) create mode 100644 test/locale-mbwc/dat_wcsncat.c (limited to 'test/locale-mbwc/dat_wcsncat.c') diff --git a/test/locale-mbwc/dat_wcsncat.c b/test/locale-mbwc/dat_wcsncat.c new file mode 100644 index 000000000..9d1e46b99 --- /dev/null +++ b/test/locale-mbwc/dat_wcsncat.c @@ -0,0 +1,158 @@ +/* + * TEST SUITE FOR MB/WC FUNCTIONS IN C LIBRARY + * + * FILE: dat_wcsncat.c + * + * WCSNCAT: wchar_t *wcsncat (wchar_t *ws1, wchar_t *ws2, size_t n); + */ + + +/* + * Note: + * A terminating null wide chararacter is always appended to + * the result: ws1. + * + */ + + +TST_WCSNCAT tst_wcsncat_loc [] = { + { + {Twcsncat, TST_LOC_de}, + { + /* 1 */ + { + /* Input: */ + {{ 0x00D1,0x00D2,0x0000 }, + { 0x00D3,0x00D4,0x0000 }, 3 }, + /* Expect: */ + { 0, 0, 0, + { 0x00D1,0x00D2,0x00D3,0x00D4,0x0000 } }, + }, + /* 2 */ + {{{ 0x00D1,0x00D2,0x0000 }, + { 0x00D3,0x00D4,0x0000 }, 2 }, + { 0, 0, 0, + { 0x00D1,0x00D2,0x00D3,0x00D4,0x0000 } }, + }, + /* 3 */ + {{{ 0x00E1,0x00E2,0x0000 }, + { 0x00E3,0x00E4,0x0000 }, 1 }, + { 0, 0, 0, + { 0x00E1,0x00E2,0x00E3,0x0000 } }, + }, + /* 4 */ + {{{ 0x00E1,0x00E2,0x0000 }, + { 0x00E3,0x00E4,0x0000 }, 0 }, + { 0, 0, 0, + { 0x00E1,0x00E2,0x0000 } }, + }, + /* 5 */ + {{{ 0x0000 }, + { 0x00D3,0x00D4,0x0000 }, 3 }, + { 0, 0, 0, + { 0x00D3,0x00D4,0x0000 } }, + }, + /* 6 */ + {{{ 0x00E1,0x00E2,0x0000 }, + { 0x0000 }, 3 }, + { 0, 0, 0, + { 0x00E1,0x00E2,0x0000 } }, + }, + {.is_last = 1} + } + }, + { + {Twcsncat, TST_LOC_enUS}, + { + /* 1 */ + { + /* Input: */ + {{ 0x0041,0x0042,0x0000 }, + { 0x0043,0x0044,0x0000 }, 3 }, + /* Expect: */ + { 0, 0, 0, + { 0x0041,0x0042,0x0043,0x0044,0x0000 } }, + }, + /* 2 */ + {{{ 0x0041,0x0042,0x0000 }, + { 0x0043,0x0044,0x0000 }, 2 }, + { 0, 0, 0, + { 0x0041,0x0042,0x0043,0x0044,0x0000 } }, + }, + /* 3 */ + {{{ 0x0051,0x0052,0x0000 }, + { 0x0053,0x0054,0x0000 }, 1 }, + { 0, 0, 0, + { 0x0051,0x0052,0x0053,0x0000 } }, + }, + /* 4 */ + {{{ 0x0051,0x0052,0x0000 }, + { 0x0053,0x0054,0x0000 }, 0 }, + { 0, 0, 0, + { 0x0051,0x0052,0x0000 } }, + }, + /* 5 */ + {{{ 0x0000 }, + { 0x0043,0x0044,0x0000 }, 3 }, + { 0, 0, 0, + { 0x0043,0x0044,0x0000 } }, + }, + /* 6 */ + {{{ 0x0051,0x0052,0x0000 }, + { 0x0000 }, 3 }, + { 0, 0, 0, + { 0x0051,0x0052,0x0000 } }, + }, + {.is_last = 1} + } + }, + { +#if 0 + {Twcsncat, TST_LOC_eucJP}, +#else + {Twcsncat, TST_LOC_ja_UTF8}, +#endif + { + /* 1 */ + {{{ 0x3041,0x3042,0x0000 }, + { 0x3043,0x3044,0x0000 }, 3 }, + { 0, 0, 0, + { 0x3041,0x3042,0x3043,0x3044,0x0000 } }, + }, + /* 2 */ + {{{ 0x30A2,0x30A3,0x0000 }, + { 0xFF71,0xFF72,0x0000 }, 2 }, + { 0, 0, 0, + { 0x30A2,0x30A3,0xFF71,0xFF72,0x0000 } }, + }, + /* 3 */ + {{{ 0x3051,0x3052,0x0000 }, + { 0x3053,0x3054,0x0000 }, 1 }, + { 0, 0, 0, + { 0x3051,0x3052,0x3053,0x0000 } }, + }, + /* 4 */ + {{{ 0x3051,0x3052,0x0000 }, + { 0x3053,0x3054,0x0000 }, 0 }, + { 0, 0, 0, + { 0x3051,0x3052,0x0000 } }, + }, + /* 5 */ + {{{ 0x0000 }, + { 0x3043,0x3044,0x0000 }, 3 }, + { 0, 0, 0, + { 0x3043,0x3044,0x0000 } }, + }, + /* 6 */ + {{{ 0x3051,0x3052,0x0000 }, + { 0x0000 }, 3 }, + { 0, 0, 0, + { 0x3051,0x3052,0x0000 } }, + }, + {.is_last = 1} + } + }, + { + {Twcsncat, TST_LOC_end} + } +}; -- cgit v1.2.3