X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=tests%2Ftest-lstat.c;h=8c62bc135afc81ca9ccd7ecebeb20ed096520f73;hb=6948250861edce048d7bb3c6b47d13fa3649905e;hp=0d58f6bc5346a361ce961663eddde763ed299cd6;hpb=3ff8a9d0d29f6fe7ce697d9f7824c09a99bc1e1b;p=gnulib.git diff --git a/tests/test-lstat.c b/tests/test-lstat.c index 0d58f6bc5..8c62bc135 100644 --- a/tests/test-lstat.c +++ b/tests/test-lstat.c @@ -1,5 +1,5 @@ /* Test of lstat() function. - Copyright (C) 2008 Free Software Foundation, Inc. + Copyright (C) 2008, 2009 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 @@ -14,22 +14,47 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -/* Written by Simon Josefsson, 2008. */ +/* Written by Simon Josefsson, 2008; and Eric Blake, 2009. */ #include #include -int -main (int argc, char **argv) +#include +#include +#include +#include +#include +#include + +#include "same-inode.h" + +#define ASSERT(expr) \ + do \ + { \ + if (!(expr)) \ + { \ + fprintf (stderr, "%s:%d: assertion failed\n", __FILE__, __LINE__); \ + fflush (stderr); \ + abort (); \ + } \ + } \ + while (0) + +#define BASE "test-lstat.t" + +#include "test-lstat.h" + +/* Wrapper around lstat, which works even if lstat is a function-like + macro, where test_lstat_func(lstat) would do the wrong thing. */ +static int +do_lstat (char const *name, struct stat *st) { - struct stat buf; - - if (lstat ("/", &buf) != 0) - { - perror ("lstat"); - return 1; - } + return lstat (name, st); +} - return 0; +int +main (void) +{ + return test_lstat_func (do_lstat, true); }