test-ttyname_r tests: EBADF tests.
authorBruno Haible <bruno@clisp.org>
Tue, 20 Sep 2011 20:22:15 +0000 (22:22 +0200)
committerBruno Haible <bruno@clisp.org>
Tue, 20 Sep 2011 21:27:57 +0000 (23:27 +0200)
* tests/test-ttyname_r.c (main): Add tests for EBADF.

ChangeLog
tests/test-ttyname_r.c

index 2ee54d8..8e970c2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2011-09-20  Bruno Haible  <bruno@clisp.org>
 
+       test-ttyname_r tests: EBADF tests.
+       * tests/test-ttyname_r.c (main): Add tests for EBADF.
+
        Tests for module 'isatty'.
        * modules/isatty-tests: New file.
        * tests/test-isatty.c: New file.
index 698eb87..c28fe30 100644 (file)
@@ -47,5 +47,19 @@ main (void)
   ASSERT (ttyname_r (fd, buf, sizeof (buf)) == 0);
   ASSERT (memcmp (buf, "/dev/", 5) == 0);
 
+  /* Test behaviour for invalid file descriptors.  */
+  {
+    int err = ttyname_r (-1, buf, sizeof (buf));
+    ASSERT (err == EBADF
+            || err == ENOTTY /* seen on FreeBSD 6.4 */
+           );
+  }
+  {
+    int err = ttyname_r (99, buf, sizeof (buf));
+    ASSERT (err == EBADF
+            || err == ENOTTY /* seen on FreeBSD 6.4 */
+           );
+  }
+
   return 0;
 }