Mercurial > hg > octave-nkf > gnulib-hg
changeset 17367:639f60219717
tests: make it easier to bypass alarm time in debugger
While auditing alarm usage, I noticed that test-regex had a nice
idiom that made it easier to disable an alarm under glibc. Use
it elsewhere, so future copy-and-paste will preserve the idiom.
* tests/test-file-has-acl.c (main): Allow gdb to override alarm.
* tests/test-memmem.c (main): Likewise.
* tests/test-passfd.c (main): Likewise.
* tests/test-ptsname.c (main): Likewise.
* tests/test-ptsname_r.c (main): Likewise.
* tests/test-strcasestr.c (main): Likewise.
* tests/test-strstr.c (main): Likewise.
Signed-off-by: Eric Blake <eblake@redhat.com>
author | Eric Blake <eblake@redhat.com> |
---|---|
date | Mon, 11 Mar 2013 15:40:32 -0600 |
parents | 9855b352e525 |
children | 2f5f50211fb5 |
files | ChangeLog tests/test-file-has-acl.c tests/test-memmem.c tests/test-passfd.c tests/test-ptsname.c tests/test-ptsname_r.c tests/test-strcasestr.c tests/test-strstr.c |
diffstat | 8 files changed, 26 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,14 @@ 2013-03-11 Eric Blake <eblake@redhat.com> + tests: make it easier to bypass alarm time in debugger + * tests/test-file-has-acl.c (main): Allow gdb to override alarm. + * tests/test-memmem.c (main): Likewise. + * tests/test-passfd.c (main): Likewise. + * tests/test-ptsname.c (main): Likewise. + * tests/test-ptsname_r.c (main): Likewise. + * tests/test-strcasestr.c (main): Likewise. + * tests/test-strstr.c (main): Likewise. + regex: port to mingw's recent addition of undeclared alarm * doc/posix-functions/alarm.texi (alarm): Document that alarm exists but still doesn't work in newer mingw.
--- a/tests/test-file-has-acl.c +++ b/tests/test-file-has-acl.c @@ -49,8 +49,11 @@ #if HAVE_DECL_ALARM /* Declare failure if test takes too long, by using default abort caused by SIGALRM. */ - signal (SIGALRM, SIG_DFL); - alarm (5); + { + int alarm_value = 5; + signal (SIGALRM, SIG_DFL); + alarm (alarm_value); + } #endif #if USE_ACL
--- a/tests/test-memmem.c +++ b/tests/test-memmem.c @@ -43,8 +43,9 @@ caused by SIGALRM. All known platforms that lack alarm also lack memmem, and the replacement memmem is known to not take too long. */ + int alarm_value = 100; signal (SIGALRM, SIG_DFL); - alarm (100); + alarm (alarm_value); #endif {
--- a/tests/test-passfd.c +++ b/tests/test-passfd.c @@ -45,8 +45,9 @@ # if HAVE_DECL_ALARM /* Avoid hanging on failure. */ + int alarm_value = 5; signal (SIGALRM, SIG_DFL); - alarm (5); + alarm (alarm_value); # endif fdnull = open ("/dev/null", O_RDWR);
--- a/tests/test-ptsname.c +++ b/tests/test-ptsname.c @@ -59,8 +59,9 @@ #if HAVE_DECL_ALARM /* Declare failure if test takes too long, by using default abort caused by SIGALRM. */ + int alarm_value = 5; signal (SIGALRM, SIG_DFL); - alarm (5); + alarm (alarm_value); #endif {
--- a/tests/test-ptsname_r.c +++ b/tests/test-ptsname_r.c @@ -104,8 +104,9 @@ #if HAVE_DECL_ALARM /* Declare failure if test takes too long, by using default abort caused by SIGALRM. */ + int alarm_value = 5; signal (SIGALRM, SIG_DFL); - alarm (5); + alarm (alarm_value); #endif {
--- a/tests/test-strcasestr.c +++ b/tests/test-strcasestr.c @@ -37,8 +37,9 @@ caused by SIGALRM. All known platforms that lack alarm also lack strcasestr, and the replacement strcasestr is known to not take too long. */ + int alarm_value = 50; signal (SIGALRM, SIG_DFL); - alarm (50); + alarm (alarm_value); #endif {
--- a/tests/test-strstr.c +++ b/tests/test-strstr.c @@ -37,8 +37,9 @@ caused by SIGALRM. All known platforms that lack alarm also have a quadratic strstr, and the replacement strstr is known to not take too long. */ + int alarm_value = 50; signal (SIGALRM, SIG_DFL); - alarm (50); + alarm (alarm_value); #endif {