1/*
2 * TEST SUITE FOR MB/WC FUNCTIONS IN C LIBRARY
3 *
4 * FILE: dat_wcspbrk.c
5 *
6 * WCSSTR: wchar_t *wcspbrk (const wchar_t *ws1, const wchar_t *ws2);
7 */
8
9
10/*
11 * NOTE:
12 * This is not a locale sensitive function.
13 * So those data in each locale doesn't make sense
14 * ... (redundant test cases)
15 */
16
17
18TST_WCSPBRK tst_wcspbrk_loc [] = {
19 {
20 { Twcspbrk, TST_LOC_de },
21 {
22 { /*input.*/ { { 0x00D1,0x00D2,0x00D3,0x0000 },
23 { 0x00D1,0x0000 }, }, /* #01 */
24 /*expect*/ { 0,0,0, 0x00D1 },
25 },
26 { /*input.*/ { { 0x00D1,0x00D2,0x00D3,0x0000 },
27 { 0x00D2,0x0000 }, }, /* #02 */
28 /*expect*/ { 0,0,0, 0x00D2 },
29 },
30 { /*input.*/ { { 0x00D1,0x00D2,0x00D3,0x0000 },
31 { 0x00D3,0x0000 }, }, /* #03 */
32 /*expect*/ { 0,0,0, 0x00D3 },
33 },
34 { /*input.*/ { { 0x00D1,0x00D2,0x00D3,0x0000 },
35 { 0x00D1,0x00D2,0x0000 }, }, /* #04 */
36 /*expect*/ { 0,0,0, 0x00D1 },
37 },
38 { /*input.*/ { { 0x00D1,0x00D2,0x00D3,0x0000 },
39 { 0x00D2,0x00D3,0x0000 }, }, /* #05 */
40 /*expect*/ { 0,0,0, 0x00D2 },
41 },
42 { /*input.*/ { { 0x00D1,0x00D2,0x00D3,0x0000 },
43 { 0x00D1,0x00D2,0x00D3,0x0000 }, }, /* #06 */
44 /*expect*/ { 0,0,0, 0x00D1 },
45 },
46 { /*input.*/ { { 0x00D1,0x00D2,0x00D3,0x0000 },
47 { 0x00D0,0x00D4,0x00D5,0x0000 }, }, /* #07 */
48 /*expect*/ { 0,1,(wchar_t *)NULL, 0x0000 },
49 },
50 { /*input.*/ { { 0x00D1,0x00D2,0x00D3,0x0000 },
51 { 0x00D5,0x00D0,0x00D4,0x0000 }, }, /* #08 */
52 /*expect*/ { 0,1,(wchar_t *)NULL, 0x0000 },
53 },
54 { /*input.*/ { { 0x00D1,0x00D2,0x00D3,0x0000 },
55 { 0x0000 }, }, /* #09 */
56 /*expect*/ { 0,1,(wchar_t *)NULL, 0x0000 },
57 },
58 { /*input.*/ { { 0x0000,0x00D2,0x00D3,0x0000 },
59 { 0x00D1,0x0000 }, }, /* #10 */
60 /*expect*/ { 0,1,(wchar_t *)NULL, 0x0000 },
61 },
62 { /*input.*/ { { 0x0000,0x00D2,0x00D3,0x0000 },
63 { 0x0000 }, }, /* #11 */
64 /*expect*/ { 0,1,(wchar_t *)NULL, 0x0000 },
65 },
66 { .is_last = 1 }
67 }
68 },
69 {
70 { Twcspbrk, TST_LOC_enUS },
71 {
72 { /*input.*/ { { 0x0041,0x0042,0x0043,0x0000 },
73 { 0x0041,0x0000 }, }, /* #01 */
74 /*expect*/ { 0,0,0, 0x0041 },
75 },
76 { /*input.*/ { { 0x0041,0x0042,0x0043,0x0000 },
77 { 0x0042,0x0000 }, }, /* #02 */
78 /*expect*/ { 0,0,0, 0x0042 },
79 },
80 { /*input.*/ { { 0x0041,0x0042,0x0043,0x0000 },
81 { 0x0043,0x0000 }, }, /* #03 */
82 /*expect*/ { 0,0,0, 0x0043 },
83 },
84 { /*input.*/ { { 0x0041,0x0042,0x0043,0x0000 },
85 { 0x0041,0x0042,0x0000 }, }, /* #04 */
86 /*expect*/ { 0,0,0, 0x0041 },
87 },
88 { /*input.*/ { { 0x0041,0x0042,0x0043,0x0000 },
89 { 0x0042,0x0043,0x0000 }, }, /* #05 */
90 /*expect*/ { 0,0,0, 0x0042 },
91 },
92 { /*input.*/ { { 0x0041,0x0042,0x0043,0x0000 },
93 { 0x0041,0x0042,0x0043,0x0000 }, }, /* #06 */
94 /*expect*/ { 0,0,0, 0x0041 },
95 },
96 { /*input.*/ { { 0x0041,0x0042,0x0043,0x0000 },
97 { 0x0040,0x0044,0x0045,0x0000 }, }, /* #07 */
98 /*expect*/ { 0,1,(wchar_t *)NULL, 0x0000 },
99 },
100 { /*input.*/ { { 0x0041,0x0042,0x0043,0x0000 },
101 { 0x0045,0x0040,0x0044,0x0000 }, }, /* #08 */
102 /*expect*/ { 0,1,(wchar_t *)NULL, 0x0000 },
103 },
104 { /*input.*/ { { 0x0041,0x0042,0x0043,0x0000 },
105 { 0x0000 }, }, /* #09 */
106 /*expect*/ { 0,1,(wchar_t *)NULL, 0x0000 },
107 },
108 { /*input.*/ { { 0x0000,0x0042,0x0043,0x0000 },
109 { 0x0041,0x0000 }, }, /* #10 */
110 /*expect*/ { 0,1,(wchar_t *)NULL, 0x0000 },
111 },
112 { /*input.*/ { { 0x0000,0x0042,0x0043,0x0000 },
113 { 0x0000 }, }, /* #11 */
114 /*expect*/ { 0,1,(wchar_t *)NULL, 0x0000 },
115 },
116 { .is_last = 1 }
117 }
118 },
119 {
120 { Twcspbrk, TST_LOC_eucJP },
121 {
122 { /*input.*/ { { 0x3041,0x3042,0x3043,0x0000 },
123 { 0x3041,0x0000 }, }, /* #01 */
124 /*expect*/ { 0,0,0, 0x3041 },
125 },
126 { /*input.*/ { { 0x3041,0x3042,0x3043,0x0000 },
127 { 0x3042,0x0000 }, }, /* #02 */
128 /*expect*/ { 0,0,0, 0x3042 },
129 },
130 { /*input.*/ { { 0x3041,0x3042,0x3043,0x0000 },
131 { 0x3043,0x0000 }, }, /* #03 */
132 /*expect*/ { 0,0,0, 0x3043 },
133 },
134 { /*input.*/ { { 0x3041,0x3042,0x3043,0x0000 },
135 { 0x3041,0x3042,0x0000 }, }, /* #04 */
136 /*expect*/ { 0,0,0, 0x3041 },
137 },
138 { /*input.*/ { { 0x3041,0x3042,0x3043,0x0000 },
139 { 0x3042,0x3043,0x0000 }, }, /* #05 */
140 /*expect*/ { 0,0,0, 0x3042 },
141 },
142 { /*input.*/ { { 0x3041,0x3042,0x3043,0x0000 },
143 { 0x3041,0x3042,0x3043,0x0000 }, }, /* #06 */
144 /*expect*/ { 0,0,0, 0x3041 },
145 },
146 { /*input.*/ { { 0x3041,0x3042,0x3043,0x0000 },
147 { 0x3042,0x3043,0x3044,0x0000 }, }, /* #07 */
148 /*expect*/ { 0,0,0, 0x3042 },
149 },
150 { /*input.*/ { { 0x3041,0x3042,0x3043,0x0000 },
151 { 0x3040,0x3041,0x3042,0x0000 }, }, /* #08 */
152 /*expect*/ { 0,0,0, 0x3041 },
153 },
154 { /*input.*/ { { 0x3041,0x3042,0x3043,0x0000 },
155 { 0x0000 }, }, /* #09 */
156 /*expect*/ { 0,1,(wchar_t *)NULL, 0x0000 },
157 },
158 { /*input.*/ { { 0x0000,0x3042,0x3043,0x0000 },
159 { 0x3041,0x0000 }, }, /* #10 */
160 /*expect*/ { 0,1,(wchar_t *)NULL, 0x0000 },
161 },
162 { /*input.*/ { { 0x0000,0x3042,0x3043,0x0000 },
163 { 0x0000 }, }, /* #11 */
164 /*expect*/ { 0,1,(wchar_t *)NULL, 0x0000 },
165 },
166 { .is_last = 1 }
167 }
168 },
169 {
170 { Twcspbrk, TST_LOC_end }
171 }
172};
173

source code of glibc/localedata/tests-mbwc/dat_wcspbrk.c