123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190 |
- /*
- * TEST SUITE FOR MB/WC FUNCTIONS IN C LIBRARY
- *
- * FILE: dat_mbstowcs.c
- *
- * MBSTOWCS: size_t mbstowcs (wchar_t *ws, char *s, size_t n);
- */
- #include <limits.h>
- TST_MBSTOWCS tst_mbstowcs_loc [] = {
- {
- { Tmbstowcs, TST_LOC_de },
- {
- { /*----------------- #01 -----------------*/
- {
- {
- { 1, 1, "ABC", 4 },
- { 1, 1, "ABC", 3 },
- { 1, 1, "ABC", 2 },
- }
- },
- {
- {
- { 0,1,3, { 0x0041,0x0042,0x0043,0x0000 } },
- { 0,1,3, { 0x0041,0x0042,0x0043,0x0000 } },
- { 0,1,2, { 0x0041,0x0042,0x0043,0x0000 } },
- }
- }
- },
- { /*----------------- #02 -----------------*/
- {
- {
- { 1, 1, "ABC", 4 },
- { 1, 1, "", 1 },
- { 0, 1, "ABC", 4 },
- }
- },
- {
- {
- { 0,1,3, { 0x0041,0x0042,0x0043,0x0000 } },
- { 0,1,0, { 0x0000 } },
- { 0,1,3, { 0x0000 } },
- }
- }
- },
- { .is_last = 1 }
- }
- },
- {
- { Tmbstowcs, TST_LOC_enUS },
- {
- { /*----------------- #01 -----------------*/
- {
- {
- { 1, 1, "ABC", 4 },
- { 1, 1, "ABC", 3 },
- { 1, 1, "ABC", 2 },
- }
- },
- {
- {
- { 0,1,3, { 0x0041,0x0042,0x0043,0x0000 } },
- { 0,1,3, { 0x0041,0x0042,0x0043,0x0000 } },
- { 0,1,2, { 0x0041,0x0042,0x0043,0x0000 } },
- }
- }
- },
- { /*----------------- #02 -----------------*/
- {
- {
- { 1, 1, "ABC", 4 },
- { 1, 1, "", 1 },
- { 0, 1, "ABC", 4 },
- }
- },
- {
- {
- { 0,1,3, { 0x0041,0x0042,0x0043,0x0000 } },
- { 0,1,0, { 0x0000 } },
- { 0,1,3, { 0x0000 } },
- }
- }
- },
- { .is_last = 1 }
- }
- },
- #if 0
- {
- { Tmbstowcs, TST_LOC_eucJP },
- {
- { /*----------------- #01 -----------------*/
- {
- {
- { 1, 1, "\244\242\244\244\244\246ABC", 7 },
- { 1, 1, "\244\242\244\244\244\246ABC", 6 },
- { 1, 1, "\244\242\244\244\244\246ABC", 4 },
- }
- },
- {
- {
- { 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 -----------------*/
- {
- {
- #ifdef SHOJI_IS_RIGHT
- /* XXX I really don't understand the first and third line.
- the result of the first line is the same as the first
- in the last test (i.e., returns 6). Also, the third
- test will simply convert everything. */
- { 1, 1, "\244\242\244\244\244\246ABC", 7 },
- { 1, 1, "", 1 },
- { 0, 1, "\244\242\244\244\244\246ABC", 7 },
- #else
- { 1, 1, "\244\242\244\244\244\246ABC", 4 },
- { 1, 1, "", 1 },
- { 0, 1, "\244\242\244\244\244\246ABC", 0 },
- #endif
- }
- },
- {
- {
- { 0,1,4, { 0x3042,0x3044,0x3046,0x0041,0x0000 } },
- { 0,1,0, { 0x0000 } },
- { 0,1,6, { 0x0000 } },
- }
- }
- },
- { .is_last = 1 }
- }
- },
- #else
- {
- { Tmbstowcs, TST_LOC_ja_UTF8 },
- {
- { /*----------------- #01 -----------------*/
- {
- {
- { 1, 1, "\343\201\202\343\201\204\343\201\206ABC", 7 },
- { 1, 1, "\343\201\202\343\201\204\343\201\206ABC", 6 },
- { 1, 1, "\343\201\202\343\201\204\343\201\206ABC", 4 },
- }
- },
- {
- {
- { 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 -----------------*/
- {
- {
- #ifdef SHOJI_IS_RIGHT
- /* XXX I really don't understand the first and third line.
- the result of the first line is the same as the first
- in the last test (i.e., returns 6). Also, the third
- test will simply convert everything. */
- { 1, 1, "\244\242\244\244\244\246ABC", 7 },
- { 1, 1, "", 1 },
- { 0, 1, "\244\242\244\244\244\246ABC", 7 },
- #else
- { 1, 1, "\343\201\202\343\201\204\343\201\206ABC", 4 },
- { 1, 1, "", 1 },
- { 0, 1, "\343\201\202\343\201\204\343\201\206ABC", 7 },
- #endif
- }
- },
- {
- {
- { 0,1,4, { 0x3042,0x3044,0x3046,0x0041,0x0000 } },
- { 0,1,0, { 0x0000 } },
- { 0,1,6, { 0x0000 } },
- }
- }
- },
- { .is_last = 1 }
- }
- },
- #endif
- {
- { Tmbstowcs, TST_LOC_end }
- }
- };
|