Module Name: src
Committed By: christos
Date: Sun Mar 31 16:47:16 UTC 2013
Modified Files:
src/tests/lib/libc/sys: t_nanosleep.c
Log Message:
add more test cases for nanosleep
To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/tests/lib/libc/sys/t_nanosleep.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/tests/lib/libc/sys/t_nanosleep.c
diff -u src/tests/lib/libc/sys/t_nanosleep.c:1.2 src/tests/lib/libc/sys/t_nanosleep.c:1.3
--- src/tests/lib/libc/sys/t_nanosleep.c:1.2 Sat Mar 31 07:41:33 2012
+++ src/tests/lib/libc/sys/t_nanosleep.c Sun Mar 31 12:47:16 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: t_nanosleep.c,v 1.2 2012/03/31 11:41:33 jruoho Exp $ */
+/* $NetBSD: t_nanosleep.c,v 1.3 2013/03/31 16:47:16 christos Exp $ */
/*-
* Copyright (c) 2011 The NetBSD Foundation, Inc.
@@ -29,7 +29,7 @@
* POSSIBILITY OF SUCH DAMAGE.
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: t_nanosleep.c,v 1.2 2012/03/31 11:41:33 jruoho Exp $");
+__RCSID("$NetBSD: t_nanosleep.c,v 1.3 2013/03/31 16:47:16 christos Exp $");
#include <sys/time.h>
#include <sys/wait.h>
@@ -104,12 +104,21 @@ ATF_TC_BODY(nanosleep_err, tc)
{
struct timespec ts;
- ts.tv_sec = -1;
- ts.tv_nsec = 1000;
+ ts.tv_sec = 1;
+ ts.tv_nsec = -1;
+ errno = 0;
+ ATF_REQUIRE_ERRNO(EINVAL, nanosleep(&ts, NULL) == -1);
+ ts.tv_sec = 1;
+ ts.tv_nsec = 1000000000;
errno = 0;
ATF_REQUIRE_ERRNO(EINVAL, nanosleep(&ts, NULL) == -1);
+ ts.tv_sec = -1;
+ ts.tv_nsec = 0;
+ errno = 0;
+ ATF_REQUIRE_ERRNO(0, nanosleep(&ts, NULL) == 0);
+
errno = 0;
ATF_REQUIRE_ERRNO(EFAULT, nanosleep((void *)-1, NULL) == -1);
}