2002-10-18 Jeff Johnston <jjohnstn@redhat.com>

* testsuite/include/check.h: New header file to use with
        test cases.
        * testsuite/lib/newlib.exp: Add testsuite/include directory
        to list of header files to use.
        * testsuite/newlib.wctype/twctype.c: New test case for iswctype fns.
        * testsuite/newlib.wctype/wctype.exp: New file.
This commit is contained in:
Jeff Johnston 2002-10-18 18:18:49 +00:00
parent 5d8c2b592d
commit 94c5b430a1
5 changed files with 95 additions and 0 deletions

View File

@ -1,3 +1,12 @@
2002-10-18 Jeff Johnston <jjohnstn@redhat.com>
* testsuite/include/check.h: New header file to use with
test cases.
* testsuite/lib/newlib.exp: Add testsuite/include directory
to list of header files to use.
* testsuite/newlib.wctype/twctype.c: New test case for iswctype fns.
* testsuite/newlib.wctype/wctype.exp: New file.
2002-10-11 Graham Stott <graham.stott@btinternet.com>
Richard Sandiford <rsandifo@redhat.com>

View File

@ -0,0 +1,7 @@
#define CHECK(a) { \
if (!(a)) \
{ \
printf ("Failed " #a " in <%s> at line %d\n", __FILE__, __LINE__); \
abort(); \
} \
}

View File

@ -58,6 +58,9 @@ proc newlib_target_compile { source dest type options } {
global host_triplet target_triplet
verbose "In newlib_target_compile...\n"
lappend options "libs=-I$srcdir/include"
verbose "srcdir is $srcdir"
if {[target_info needs_status_wrapper] != "" && \
[target_info needs_status_wrapper] != "0" && \

View File

@ -0,0 +1,64 @@
#include <wctype.h>
#include <ctype.h>
#include <stdio.h>
#include <string.h>
#include <newlib.h>
#include <locale.h>
#include "check.h"
int main()
{
if (_ELIX_LEVEL == 1)
{ /* no testing..wctype functions aren't present */ }
else if (_MB_LEN_MAX == 1)
{
CHECK (iswalpha(L'a'));
CHECK (!iswalpha(L'3'));
CHECK (iswalnum(L'9'));
CHECK (!iswalnum(L'$'));
CHECK (iswcntrl(L'\n'));
CHECK (!iswcntrl(L'#'));
CHECK (iswdigit(L'2'));
CHECK (!iswdigit(L'a'));
CHECK (iswgraph(L'2'));
CHECK (!iswgraph(L' '));
CHECK (iswlower(L'g'));
CHECK (!iswlower(L'G'));
CHECK (iswprint(L'*'));
CHECK (!iswprint(L'\n'));
CHECK (iswpunct(L','));
CHECK (!iswpunct(L'\n'));
CHECK (iswspace(L'\t'));
CHECK (!iswspace(L':'));
CHECK (iswupper(L'G'));
CHECK (!iswupper(L'g'));
CHECK (iswxdigit(L'A'));
CHECK (!iswxdigit(L'g'));
}
else
{
setlocale (LC_CTYPE, "C-UTF-8");
CHECK (iswalpha(0x0967));
CHECK (!iswalpha(0x128e));
CHECK (iswalnum(0x1d7ce));
CHECK (!iswalnum(0x1d800));
CHECK (iswcntrl(0x007f));
CHECK (!iswcntrl(0x2027));
CHECK (iswdigit(L'2'));
CHECK (!iswdigit(0x0009));
CHECK (iswlower(0x03b3));
CHECK (!iswlower(0x04aa));
CHECK (iswprint(0x0b13));
CHECK (!iswprint(0x0ce2));
CHECK (iswpunct(0x002d));
CHECK (!iswpunct(0x0a84));
CHECK (iswspace(0x000a));
CHECK (!iswspace(0x2060));
CHECK (iswupper(0x01a4));
CHECK (!iswupper(0x1e6d));
CHECK (iswxdigit(L'A'));
CHECK (!iswxdigit(0x1f48));
}
exit (0);
}

View File

@ -0,0 +1,12 @@
# Copyright (C) 2002 by Red Hat, Incorporated. All rights reserved.
#
# Permission to use, copy, modify, and distribute this software
# is freely granted, provided that this notice is preserved.
#
load_lib passfail.exp
set exclude_list {
}
newlib_pass_fail_all -x $exclude_list