summaryrefslogtreecommitdiff
path: root/test/locale-mbwc/dat_wcsncat.c
blob: 9d1e46b99495c25227bb70ea5e4c42155edb7bed (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
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}
  }
};