diff options
author | Artem Bityutskiy <Artem.Bityutskiy@nokia.com> | 2011-04-13 17:09:36 +0300 |
---|---|---|
committer | Artem Bityutskiy <Artem.Bityutskiy@nokia.com> | 2011-04-18 17:44:46 +0300 |
commit | 9055b9c71241a3dcc8f96744b9c081ef23fa5562 (patch) | |
tree | 452309c354d7e21d1ddde9cfedd086b00ffcd4e5 /tests/fs-tests/integrity | |
parent | 803fded90e2bf8aed8a2ecde51f6b09b990daf4e (diff) |
fs-tests: integck: implement own version of CHECK
Remove the final dependency on the common code - the CHECK() macro.
Now we are finally independent. The reason we needed this is that
we are going to improve integck to handle errors more gracefully,
in order to support failure testing better. And this requires changes
in the common code, but it is ancient and shared by many tests, and
we do not want to touch it. So we better make integck independent
and concentrate on integck only.
This patch also removes Makefile dependencies. And while on it, remove
the broken 'tests' target.
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Diffstat (limited to 'tests/fs-tests/integrity')
-rw-r--r-- | tests/fs-tests/integrity/Makefile | 7 | ||||
-rw-r--r-- | tests/fs-tests/integrity/integck.c | 17 |
2 files changed, 16 insertions, 8 deletions
diff --git a/tests/fs-tests/integrity/Makefile b/tests/fs-tests/integrity/Makefile index 364a732..03652a2 100644 --- a/tests/fs-tests/integrity/Makefile +++ b/tests/fs-tests/integrity/Makefile @@ -13,12 +13,5 @@ TARGETS = integck all: $(TARGETS) -$(TARGETS): ../lib/tests.o - -../lib/tests.o: ../lib/tests.h - clean: rm -f *.o $(TARGETS) - -tests: all - ./integck diff --git a/tests/fs-tests/integrity/integck.c b/tests/fs-tests/integrity/integck.c index 2dbe9de..387874c 100644 --- a/tests/fs-tests/integrity/integck.c +++ b/tests/fs-tests/integrity/integck.c @@ -36,7 +36,6 @@ #include <sys/vfs.h> #include <sys/mount.h> #include <sys/statvfs.h> -#include "tests.h" #define PROGRAM_VERSION "1.1" #define PROGRAM_NAME "integck" @@ -47,6 +46,22 @@ /* The pattern for the top directory where we run the test */ #define TEST_DIR_PATTERN "integck_test_dir_%u" +/* + * Check if a condition is true and die if not. + */ +#define stringify1(x) #x +#define stringify(x) stringify1(x) +#define CHECK(cond) do { \ + if (!(cond)) { \ + int _err = errno; \ + fflush(stdout); \ + errmsg("condition '%s' failed at %s:%d\n", \ + stringify(cond), __FILE__, __LINE__); \ + errmsg("error %d (%s)\n", _err, strerror(_err)); \ + exit(EXIT_FAILURE); \ + } \ +} while(0) + /* The variables below are set by command line arguments */ static struct { long repeat_cnt; |