[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 2/2] tests: make it easier to bypass alarm time in debugger
From: |
Eric Blake |
Subject: |
[PATCH 2/2] tests: make it easier to bypass alarm time in debugger |
Date: |
Mon, 11 Mar 2013 15:42:08 -0600 |
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 <address@hidden>
---
ChangeLog | 9 +++++++++
tests/test-file-has-acl.c | 7 +++++--
tests/test-memmem.c | 3 ++-
tests/test-passfd.c | 3 ++-
tests/test-ptsname.c | 3 ++-
tests/test-ptsname_r.c | 3 ++-
tests/test-strcasestr.c | 3 ++-
tests/test-strstr.c | 3 ++-
8 files changed, 26 insertions(+), 8 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index addadee..a608362 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,14 @@
2013-03-11 Eric Blake <address@hidden>
+ 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.
diff --git a/tests/test-file-has-acl.c b/tests/test-file-has-acl.c
index a9bfd50..56cc3ba 100644
--- a/tests/test-file-has-acl.c
+++ b/tests/test-file-has-acl.c
@@ -49,8 +49,11 @@ main (int argc, char *argv[])
#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
diff --git a/tests/test-memmem.c b/tests/test-memmem.c
index 6b3325b..97ae7c1 100644
--- a/tests/test-memmem.c
+++ b/tests/test-memmem.c
@@ -43,8 +43,9 @@ main (int argc, char *argv[])
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
{
diff --git a/tests/test-passfd.c b/tests/test-passfd.c
index c11a828..6389e15 100644
--- a/tests/test-passfd.c
+++ b/tests/test-passfd.c
@@ -45,8 +45,9 @@ main ()
# 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);
diff --git a/tests/test-ptsname.c b/tests/test-ptsname.c
index 29cf72c..15d4925 100644
--- a/tests/test-ptsname.c
+++ b/tests/test-ptsname.c
@@ -59,8 +59,9 @@ main (void)
#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
{
diff --git a/tests/test-ptsname_r.c b/tests/test-ptsname_r.c
index acc3c94..b194303 100644
--- a/tests/test-ptsname_r.c
+++ b/tests/test-ptsname_r.c
@@ -104,8 +104,9 @@ main (void)
#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
{
diff --git a/tests/test-strcasestr.c b/tests/test-strcasestr.c
index 0ca3692..df75e78 100644
--- a/tests/test-strcasestr.c
+++ b/tests/test-strcasestr.c
@@ -37,8 +37,9 @@ main ()
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
{
diff --git a/tests/test-strstr.c b/tests/test-strstr.c
index 2d2cea1..80e8093 100644
--- a/tests/test-strstr.c
+++ b/tests/test-strstr.c
@@ -37,8 +37,9 @@ main (int argc, char *argv[])
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
{
--
1.8.1.4