summaryrefslogtreecommitdiff
path: root/test/cairo-test.h
diff options
context:
space:
mode:
authorBehdad Esfahbod <behdad@behdad.org>2006-07-11 22:19:39 -0400
committerBehdad Esfahbod <behdad@behdad.org>2006-07-11 22:19:39 -0400
commit973d3a3d1466830dcaa94e9fe39fa6fdf510fbbc (patch)
tree80eb49f8c4f0bf09eb83517e42533cca45dae5d6 /test/cairo-test.h
parent94bdbc15f79308269f1bcd74b3d8899f8458babc (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.h24
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