X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=tests%2Ftest-mkdirat.c;h=9b9627cb1e422937735007b1ad4f77ddd1b46755;hb=1276a2c5f24c0c932426aca9c899fa524d2443f2;hp=fe0da254fac73f23b0e99400df9b92e5c9548582;hpb=9c40f34443ba034ee7890ab10c369a903417765d;p=gnulib.git diff --git a/tests/test-mkdirat.c b/tests/test-mkdirat.c index fe0da254f..9b9627cb1 100644 --- a/tests/test-mkdirat.c +++ b/tests/test-mkdirat.c @@ -1,5 +1,5 @@ /* Tests of mkdirat. - Copyright (C) 2009 Free Software Foundation, Inc. + Copyright (C) 2009-2014 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -30,6 +30,8 @@ SIGNATURE_CHECK (mkdirat, int, (int, char const *, mode_t)); #include #include +#include "progname.h" +#include "ignore-value.h" #include "macros.h" #define BASE "test-mkdirat.t" @@ -46,12 +48,27 @@ do_mkdir (char const *name, mode_t mode) } int -main (void) +main (int argc _GL_UNUSED, char *argv[]) { int result; + set_program_name (argv[0]); + /* Clean up any trash from prior testsuite runs. */ - system ("rm -rf " BASE "*"); + ignore_value (system ("rm -rf " BASE "*")); + + /* Test behaviour for invalid file descriptors. */ + { + errno = 0; + ASSERT (mkdirat (-1, "foo", 0700) == -1); + ASSERT (errno == EBADF); + } + { + close (99); + errno = 0; + ASSERT (mkdirat (99, "foo", 0700) == -1); + ASSERT (errno == EBADF); + } /* Test basic mkdir functionality. */ result = test_mkdir (do_mkdir, false);