OSDN Git Service

h8300: O_DIRECT and O_DIRECTIRY swapping.
[uclinux-h8/uclibc-ng.git] / test / ctype / ctype.c
1 /* vi: set sw=4 ts=4: */
2 /*
3  * Test application for functions defined in ctype.h
4  * Copyright (C) 2000-2006 by Erik Andersen <andersen@uclibc.org>
5  *
6  * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
7  */
8
9 #include <stdio.h>
10 #include <stdlib.h>
11 #include <stdarg.h>
12 #include <ctype.h>
13 #include "../testsuite.h"
14
15
16 int main( int argc, char **argv)
17 {
18         int i, c;
19
20
21     init_testsuite("Testing functions defined in ctype.h\n");
22
23         /* isalnum() */
24         {
25                 int buffer[]={ '1', '4', 'a', 'z', 'A', 'Z', '5', -1};
26                 for(i=0; buffer[i]!=-1; i++) {
27                         c = buffer[i];
28                         TEST( isalnum(c)!=0);
29                 }
30         }
31         {
32                 int buffer[]={  2, 128, 254, '\n', -1};
33                 for(i=0; buffer[i]!=-1; i++) {
34                         c = buffer[i];
35                         TEST( isalnum(c)==0);
36                 }
37         }
38
39
40
41         /* isalpha() */
42         {
43                 int buffer[]={ 'a', 'z', 'A', 'Z', -1};
44                 for(i=0; buffer[i]!=-1; i++) {
45                         c = buffer[i];
46                         TEST( isalpha(c)!=0);
47                 }
48         }
49         {
50                 int buffer[]={  2, 63, 128, 254, '\n', -1};
51                 for(i=0; buffer[i]!=-1; i++) {
52                         c = buffer[i];
53                         TEST( isalpha(c)==0);
54                 }
55         }
56
57
58
59 #ifdef __UCLIBC_SUSV4_LEGACY__
60         /* isascii() */
61         {
62                 int buffer[]={ 'a', 'z', 'A', 'Z', '\n', -1};
63                 for(i=0; buffer[i]!=-1; i++) {
64                         c = buffer[i];
65                         TEST( isascii(c)!=0);
66                 }
67         }
68         {
69                 int buffer[]={  128, 254, -1};
70                 for(i=0; buffer[i]!=-1; i++) {
71                         c = buffer[i];
72                         TEST( isascii(c)==0);
73                 }
74         }
75 #endif
76
77
78         /* iscntrl() */
79         {
80                 int buffer[]={ 0x7F, 6, '\t', '\n', 0x7F, -1};
81                 for(i=0; buffer[i]!=-1; i++) {
82                         c = buffer[i];
83                         TEST( iscntrl(c)!=0);
84                 }
85         }
86         {
87                 int buffer[]={  63, 128, 254, -1};
88                 for(i=0; buffer[i]!=-1; i++) {
89                         c = buffer[i];
90                         TEST( iscntrl(c)==0);
91                 }
92         }
93
94
95         /* isdigit() */
96         {
97                 int buffer[]={ '1', '5', '7', '9', -1};
98                 for(i=0; buffer[i]!=-1; i++) {
99                         c = buffer[i];
100                         TEST( isdigit(c)!=0);
101                 }
102         }
103         {
104                 int buffer[]={  2, 'a', 'z', 'A', 'Z', 63, 128, 254, '\n', -1};
105                 for(i=0; buffer[i]!=-1; i++) {
106                         c = buffer[i];
107                         TEST( isdigit(c)==0);
108                 }
109         }
110
111
112
113         /* isgraph() */
114         {
115                 int buffer[]={ ')', '~', '9', -1};
116                 for(i=0; buffer[i]!=-1; i++) {
117                         c = buffer[i];
118                         TEST( isgraph(c)!=0);
119                 }
120         }
121         {
122                 int buffer[]={ 9, ' ', '\t', '\n', 200, 0x7F, -1};
123                 for(i=0; buffer[i]!=-1; i++) {
124                         c = buffer[i];
125                         TEST( isgraph(c)==0);
126                 }
127         }
128
129
130         /* islower() */
131         {
132                 int buffer[]={ 'a', 'g', 'z', -1};
133                 for(i=0; buffer[i]!=-1; i++) {
134                         c = buffer[i];
135                         TEST( islower(c)!=0);
136                 }
137         }
138         {
139                 int buffer[]={ 9, 'A', 'Z', 128, 254, ' ', '\t', '\n', 0x7F, -1};
140                 for(i=0; buffer[i]!=-1; i++) {
141                         c = buffer[i];
142                         TEST( islower(c)==0);
143                 }
144         }
145
146
147         /* isprint() */
148         {
149                 int buffer[]={ ' ', ')', '~', '9', -1};
150                 for(i=0; buffer[i]!=-1; i++) {
151                         c = buffer[i];
152                         TEST( isprint(c)!=0);
153                 }
154         }
155         {
156                 int buffer[]={ '\b', '\t', '\n', 9, 128, 254, 200, 0x7F, -1};
157                 for(i=0; buffer[i]!=-1; i++) {
158                         c = buffer[i];
159                         TEST( isprint(c)==0);
160                 }
161         }
162
163
164         /* ispunct() */
165         {
166                 int buffer[]={ '.', '#', '@', ';', -1};
167                 for(i=0; buffer[i]!=-1; i++) {
168                         c = buffer[i];
169                         TEST( ispunct(c)!=0);
170                 }
171         }
172         {
173                 int buffer[]={  2, 'a', 'Z', '1', 128, 254, '\n', -1};
174                 for(i=0; buffer[i]!=-1; i++) {
175                         c = buffer[i];
176                         TEST( ispunct(c)==0);
177                 }
178         }
179
180
181         /* isspace() */
182         {
183                 int buffer[]={ ' ', '\t', '\r', '\v', '\n', -1};
184                 for(i=0; buffer[i]!=-1; i++) {
185                         c = buffer[i];
186                         TEST( isspace(c)!=0);
187                 }
188         }
189         {
190                 int buffer[]={  2, 'a', 'Z', '1', 128, 254, -1};
191                 for(i=0; buffer[i]!=-1; i++) {
192                         c = buffer[i];
193                         TEST( isspace(c)==0);
194                 }
195         }
196
197
198         /* isupper() */
199         {
200                 int buffer[]={ 'A', 'G', 'Z', -1};
201                 for(i=0; buffer[i]!=-1; i++) {
202                         c = buffer[i];
203                         TEST( isupper(c)!=0);
204                 }
205         }
206         {
207                 int buffer[]={  2, 'a', 'z', '1', 128, 254, -1};
208                 for(i=0; buffer[i]!=-1; i++) {
209                         c = buffer[i];
210                         TEST( isupper(c)==0);
211                 }
212         }
213
214
215
216         /* isxdigit() */
217         {
218                 int buffer[]={ 'f', 'A', '1', '8', -1};
219                 for(i=0; buffer[i]!=-1; i++) {
220                         c = buffer[i];
221                         TEST( isxdigit(c)!=0);
222                 }
223         }
224         {
225                 int buffer[]={  2, 'g', 'G', 'x', '\n', -1};
226                 for(i=0; buffer[i]!=-1; i++) {
227                         c = buffer[i];
228                         TEST( isxdigit(c)==0);
229                 }
230         }
231
232
233         /* tolower() */
234         c='A';
235         TEST_NUMERIC( tolower(c), 'a');
236         c='a';
237         TEST_NUMERIC( tolower(c), 'a');
238         c='#';
239         TEST_NUMERIC( tolower(c), c);
240
241         /* toupper() */
242         c='a';
243         TEST_NUMERIC( toupper(c), 'A');
244         c='A';
245         TEST_NUMERIC( toupper(c), 'A');
246         c='#';
247         TEST_NUMERIC( toupper(c), c);
248
249         exit(0);
250 }