diff options
author | Behdad Esfahbod <behdad@behdad.org> | 2006-07-11 22:19:39 -0400 |
---|---|---|
committer | Behdad Esfahbod <behdad@behdad.org> | 2006-07-11 22:19:39 -0400 |
commit | 973d3a3d1466830dcaa94e9fe39fa6fdf510fbbc (patch) | |
tree | 80eb49f8c4f0bf09eb83517e42533cca45dae5d6 /test/cairo-test.h | |
parent | 94bdbc15f79308269f1bcd74b3d8899f8458babc (diff) |
More test suite infrastructure improvements:
- Remove cairo_test_expect_failure. cairo-test.c now checks
env var CAIRO_XFAIL_TESTS to see if the running test is
expected to fail. The reason for expected failure is
appended to the test description.
- Test description is written out.
- Failed/crashed tests also write a line out to stderr (in red),
so one can now redirect stdout to /dev/null to only see failures.
- cairo_test() has been changed to not take the draw function
anymore, instead, draw function is now part of the test struct.
- "make check" doesn't allow limiting backends to test using env
var anymore. To limit backends to test, one should use the
TARGETS variable on the make command line.
- "make check-valgrind" now writes its log to valgrind-log instead
of valgrind.log, to not interfere with test log file processing.
Diffstat (limited to 'test/cairo-test.h')
-rw-r--r-- | test/cairo-test.h | 24 |
1 files changed, 9 insertions, 15 deletions
diff --git a/test/cairo-test.h b/test/cairo-test.h index f33ea1e4..fbcbf29e 100644 --- a/test/cairo-test.h +++ b/test/cairo-test.h @@ -71,18 +71,20 @@ typedef enum cairo_test_status { CAIRO_TEST_CRASHED } cairo_test_status_t; -typedef struct cairo_test { - char *name; - char *description; +typedef cairo_test_status_t (cairo_test_draw_function_t) (cairo_t *cr, int width, int height); +static cairo_test_draw_function_t draw; + +typedef struct _cairo_test { + const char *name; + const char *description; int width; int height; + cairo_test_draw_function_t *draw; } cairo_test_t; -typedef cairo_test_status_t (*cairo_test_draw_function_t) (cairo_t *cr, int width, int height); - /* The standard test interface which works by examining result image. * - * cairo_test() accepts a draw function which will be called once for + * cairo_test() accepts a test struct which will be called once for * each testable backend. The following checks will be performed for * each backend: * @@ -103,15 +105,7 @@ typedef cairo_test_status_t (*cairo_test_draw_function_t) (cairo_t *cr, int wid * to the four criteria above. */ cairo_test_status_t -cairo_test (cairo_test_t *test, cairo_test_draw_function_t draw); - -/* Like cairo_test, but the text is expected to fail for the stated - * reason. Any test calling this variant should be listed in the - * XFAIL_TESTS list in Makefile.am. */ -cairo_test_status_t -cairo_test_expect_failure (cairo_test_t *test, - cairo_test_draw_function_t draw, - const char *reason); +cairo_test (cairo_test_t *test); /* cairo_test_init() and cairo_test_log() exist to help in writing * tests for which cairo_test() is not appropriate for one reason or |