diff options
author | Ulrich Drepper <drepper@redhat.com> | 1998-03-16 13:39:33 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1998-03-16 13:39:33 +0000 |
commit | 6760028826b40e45fe7f12b3e1ec934b032dba55 (patch) | |
tree | f3746c7e19be631712064d3c87a10ac85a52e385 /posix/wordexp-test.c | |
parent | f649c2015a0c9cc4a2d71880fcb7fac0832af69c (diff) | |
download | glibc-6760028826b40e45fe7f12b3e1ec934b032dba55.zip glibc-6760028826b40e45fe7f12b3e1ec934b032dba55.tar.gz glibc-6760028826b40e45fe7f12b3e1ec934b032dba55.tar.bz2 |
Update.
1998-03-16 13:02 Tim Waugh <tim@cyberelk.demon.co.uk>
* posix/wordexp-tst.sh: Store test results in the
${common_objpfx}posix directory.
* posix/wordexp-test.c: Remove temporary directory afterwards.
Diffstat (limited to 'posix/wordexp-test.c')
-rw-r--r-- | posix/wordexp-test.c | 29 |
1 files changed, 23 insertions, 6 deletions
diff --git a/posix/wordexp-test.c b/posix/wordexp-test.c index 965e26b..b8a83c5 100644 --- a/posix/wordexp-test.c +++ b/posix/wordexp-test.c @@ -152,11 +152,12 @@ command_line_test (const char *words) int main (int argc, char *argv[]) { + const char *globfile[] = { "one", "two", "three", NULL }; char tmpdir[32]; struct passwd *pw; int test; int fail = 0; - int fd; + int i; if (argc > 1) { @@ -164,16 +165,22 @@ main (int argc, char *argv[]) return 0; } + cwd = getcwd (NULL, 0); setenv ("IFS", IFS, 1); /* Set up arena for pathname expansion */ tmpnam (tmpdir); - if (mkdir (tmpdir, S_IRWXU) || - chdir (tmpdir) || - (fd = creat ("one", S_IRWXU)) == -1 || close (fd) || - (fd = creat ("two", S_IRWXU)) == -1 || close (fd) || - (fd = creat ("three", S_IRWXU)) == -1 || close (fd)) + if (mkdir (tmpdir, S_IRWXU) || chdir (tmpdir)) return -1; + else + { + int fd; + + for (i = 0; globfile[i]; ++i) + if ((fd = creat (globfile[i], S_IRUSR | S_IWUSR)) == -1 + || close (fd)) + return -1; + } for (test = 0; test_case[test].retval != -1; test++) if (testit (&test_case[test])) @@ -195,6 +202,16 @@ main (int argc, char *argv[]) ++fail; } + /* Clean up */ + for (i = 0; globfile[i]; ++i) + remove (globfile[i]); + + if (cwd = NULL) + strcpy (cwd, ".."); + + chdir (cwd); + rmdir (tmpdir); + return fail != 0; } |