1 /* Copyright (C) 1999 Free Software Foundation, Inc. 2 This file is part of the GNU C Library. 3 Contributed by Ulrich Drepper <drepper@cygnus.com>, 1999. 4 5 The GNU C Library is free software; you can redistribute it and/or 6 modify it under the terms of the GNU Lesser General Public 7 License as published by the Free Software Foundation; either 8 version 2.1 of the License, or (at your option) any later version. 9 10 The GNU C Library is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 Lesser General Public License for more details. 14 15 You should have received a copy of the GNU Lesser General Public 16 License along with the GNU C Library; if not, write to the Free 17 Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 18 02111-1307 USA. */ 19 20 #include <stdio.h> 21 #include <stdlib.h> 22 #include <wchar.h> 23 24 #define TEST(Str, Max, Exp) \ 25 n = wcsnlen (L##Str, Max); \ 26 if (n != Exp) { \ 27 result = 1; \ 28 printf ("wcsnlen (L\"%s\", %d) = %d, not %d\n", Str, Max, n, Exp); \ 29 } 30 31 32 int 33 main(void) 34 { 35 int result = 0; 36 int n; 37 38 TEST ("0123456789", 0, 0); 39 TEST ("0123456789", 1, 1); 40 TEST ("0123456789", 2, 2); 41 TEST ("0123456789", 3, 3); 42 TEST ("0123456789", 4, 4); 43 TEST ("0123456789", 5, 5); 44 TEST ("0123456789", 6, 6); 45 TEST ("0123456789", 7, 7); 46 TEST ("0123456789", 8, 8); 47 TEST ("0123456789", 9, 9); 48 49 TEST ("01234", 9, 5); 50 51 if (result == 0) 52 printf("all ok.\n"); 53 54 return result; 55 } 56