diff options
author | Eric Blake <ebb9@byu.net> | 2009-09-29 11:40:49 -0600 |
---|---|---|
committer | Eric Blake <ebb9@byu.net> | 2009-10-01 05:34:12 -0600 |
commit | 0f4fd7f4782907e0a308a077118c6578fff4e49f (patch) | |
tree | b513b039b277282f8adc2015e3180792baf99745 /tests/test-linkat.c | |
parent | 1c233a6b61e3aca04d0edd02ad31a276d35bfcf4 (diff) | |
download | gnulib-0f4fd7f4782907e0a308a077118c6578fff4e49f.tar.gz |
tests: tighten link, rmdir, and remove tests
Catch cygwin bug where rmdir("a/./") failed but rmdir("a/.//")
succeeded. Be kinder if a Solaris root user runs the test.
* tests/test-link.h (includes): No need to use <config.h> here.
Clean up if directory hard link was created, otherwise test for
trailing '.'.
* tests/test-linkat.c (main): Simplify.
* tests/test-remove.c (main): Enhance test for trailing '.'.
* tests/test-rmdir.h (test_rmdir_func): Likewise.
Signed-off-by: Eric Blake <ebb9@byu.net>
Diffstat (limited to 'tests/test-linkat.c')
-rw-r--r-- | tests/test-linkat.c | 40 |
1 files changed, 18 insertions, 22 deletions
diff --git a/tests/test-linkat.c b/tests/test-linkat.c index f5c4c77619..6aa3ca71d1 100644 --- a/tests/test-linkat.c +++ b/tests/test-linkat.c @@ -92,32 +92,28 @@ main () ASSERT (system ("rm -rf " BASE "*") == 0); /* Test basic link functionality, without mentioning symlinks. */ - { - result = test_link (do_link, false); - dfd1 = open (".", O_RDONLY); - ASSERT (0 <= dfd1); - ASSERT (test_link (do_link, false) == result); - dfd2 = dfd1; - ASSERT (test_link (do_link, false) == result); - dfd1 = AT_FDCWD; - ASSERT (test_link (do_link, false) == result); - flag = 0; - ASSERT (test_link (do_link, false) == result); - dfd1 = dfd2; - ASSERT (test_link (do_link, false) == result); - dfd2 = AT_FDCWD; - ASSERT (test_link (do_link, false) == result); - ASSERT (close (dfd1) == 0); - dfd1 = AT_FDCWD; - ASSERT (test_link (do_link, false) == result); - } + result = test_link (do_link, false); + dfd1 = open (".", O_RDONLY); + ASSERT (0 <= dfd1); + ASSERT (test_link (do_link, false) == result); + dfd2 = dfd1; + ASSERT (test_link (do_link, false) == result); + dfd1 = AT_FDCWD; + ASSERT (test_link (do_link, false) == result); + flag = 0; + ASSERT (test_link (do_link, false) == result); + dfd1 = dfd2; + ASSERT (test_link (do_link, false) == result); + dfd2 = AT_FDCWD; + ASSERT (test_link (do_link, false) == result); + ASSERT (close (dfd1) == 0); + dfd1 = AT_FDCWD; + ASSERT (test_link (do_link, false) == result); /* Create locations to manipulate. */ ASSERT (mkdir (BASE "sub1", 0700) == 0); ASSERT (mkdir (BASE "sub2", 0700) == 0); - dfd = creat (BASE "00", 0600); - ASSERT (0 <= dfd); - ASSERT (close (dfd) == 0); + ASSERT (close (creat (BASE "00", 0600)) == 0); cwd = xgetcwd (); dfd = open (BASE "sub1", O_RDONLY); |