From: Adhemerval Zanella Date: Mon, 18 May 2020 13:16:48 +0000 (-0300) Subject: string: Add strsignal test X-Git-Tag: upstream/2.34~1719 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c2723ce317f858f70237fc8866935114e2bb61b2;p=platform%2Fupstream%2Fglibc.git string: Add strsignal test Checked on x86-64-linux-gnu, i686-linux-gnu, powerpc64le-linux-gnu, and s390x-linux-gnu. Tested-by: Carlos O'Donell Reviewed-by: Carlos O'Donell --- diff --git a/string/Makefile b/string/Makefile index e1cca55..5b67808 100644 --- a/string/Makefile +++ b/string/Makefile @@ -60,7 +60,8 @@ tests := tester inl-tester noinl-tester testcopy test-ffs \ bug-envz1 tst-strxfrm2 tst-endian tst-svc2 \ tst-strtok_r bug-strcoll2 tst-cmp tst-xbzero-opt \ test-endian-types test-endian-file-scope \ - test-endian-sign-conversion tst-memmove-overflow + test-endian-sign-conversion tst-memmove-overflow \ + tst-strsignal # This test allocates a lot of memory and can run for a long time. xtests = tst-strcoll-overflow @@ -105,7 +106,7 @@ $(objpfx)tst-svc-cmp.out: tst-svc.expect $(objpfx)tst-svc.out LOCALES := de_DE.UTF-8 en_US.ISO-8859-1 en_US.UTF-8 \ tr_TR.ISO-8859-9 tr_TR.UTF-8 cs_CZ.UTF-8 \ - da_DK.ISO-8859-1 en_GB.UTF-8 + da_DK.ISO-8859-1 en_GB.UTF-8 pt_BR.UTF-8 include ../gen-locales.mk $(objpfx)test-strcasecmp.out: $(gen-locales) @@ -115,5 +116,6 @@ $(objpfx)tst-strxfrm2.out: $(gen-locales) # bug-strcoll2 needs cs_CZ.UTF-8 and da_DK.ISO-8859-1. $(objpfx)bug-strcoll2.out: $(gen-locales) $(objpfx)tst-strcoll-overflow.out: $(gen-locales) +$(objpfx)tst-strsignal.out: $(gen-locales) endif diff --git a/string/tst-strsignal.c b/string/tst-strsignal.c new file mode 100644 index 0000000..93a46db --- /dev/null +++ b/string/tst-strsignal.c @@ -0,0 +1,57 @@ +/* Test for strsignal. + + Copyright (C) 2020 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + . */ + +#include +#include +#include +#include +#include + +#include +#include + +static int +do_test (void) +{ + xsetlocale (LC_ALL, "C"); + + TEST_COMPARE_STRING (strsignal (SIGINT), "Interrupt"); + TEST_COMPARE_STRING (strsignal (-1), "Unknown signal -1"); +#ifdef SIGRTMIN + TEST_COMPARE_STRING (strsignal (SIGRTMIN), "Real-time signal 0"); +#endif +#ifdef SIGRTMAX + TEST_COMPARE_STRING (strsignal (SIGRTMAX+1), "Unknown signal 65"); +#endif + + xsetlocale (LC_ALL, "pt_BR.UTF-8"); + + TEST_COMPARE_STRING (strsignal (SIGINT), "Interrup\xc3\xa7\xc3\xa3\x6f"); + TEST_COMPARE_STRING (strsignal (-1), "Sinal desconhecido -1"); +#ifdef SIGRTMI + TEST_COMPARE_STRING (strsignal (SIGRTMIN), "Sinal de tempo-real 0"); +#endif +#ifdef SIGRTMAX + TEST_COMPARE_STRING (strsignal (SIGRTMAX+1), "Sinal desconhecido 65"); +#endif + + return 0; +} + +#include