[waffle] [PATCH 22/29] tests/gl_basic: setup CREATE_TESTSUITE macro and enable glx
Emil Velikov
emil.l.velikov at gmail.com
Wed Jan 6 13:27:48 PST 2016
From: Emil Velikov <emil.velikov at collabora.com>
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
---
tests/functional/gl_basic_test.c | 140 ++++++++++++++++++++++-----------------
1 file changed, 80 insertions(+), 60 deletions(-)
diff --git a/tests/functional/gl_basic_test.c b/tests/functional/gl_basic_test.c
index 75d9c20..283489c 100644
--- a/tests/functional/gl_basic_test.c
+++ b/tests/functional/gl_basic_test.c
@@ -483,7 +483,76 @@ static void test_gl_basic_gles##waffle_version(void **state) \
.expect_error=WAFFLE_##error); \
}
-#if 0
+
+#define CREATE_TESTSUITE(waffle_platform, platform) \
+ \
+static int \
+setup_##platform(void **state) \
+{ \
+ return gl_basic_init(state, waffle_platform); \
+} \
+ \
+static int \
+testsuite_##platform(void) \
+{ \
+ const struct CMUnitTest tests[] = { \
+ \
+ unit_test_make(test_gl_basic_gl_rgb), \
+ unit_test_make(test_gl_basic_gl_rgba), \
+ unit_test_make(test_gl_basic_gl_fwdcompat), \
+ unit_test_make(test_gl_basic_gl_debug), \
+ \
+ unit_test_make(test_gl_basic_gl10), \
+ unit_test_make(test_gl_basic_gl11), \
+ unit_test_make(test_gl_basic_gl12), \
+ unit_test_make(test_gl_basic_gl13), \
+ unit_test_make(test_gl_basic_gl14), \
+ unit_test_make(test_gl_basic_gl15), \
+ unit_test_make(test_gl_basic_gl20), \
+ unit_test_make(test_gl_basic_gl21), \
+ unit_test_make(test_gl_basic_gl21_fwdcompat), \
+ \
+ unit_test_make(test_gl_basic_gl30), \
+ unit_test_make(test_gl_basic_gl30_fwdcompat), \
+ unit_test_make(test_gl_basic_gl31), \
+ unit_test_make(test_gl_basic_gl31_fwdcompat), \
+ \
+ unit_test_make(test_gl_basic_gl32_core), \
+ unit_test_make(test_gl_basic_gl32_core_fwdcompat), \
+ unit_test_make(test_gl_basic_gl33_core), \
+ unit_test_make(test_gl_basic_gl40_core), \
+ unit_test_make(test_gl_basic_gl41_core), \
+ unit_test_make(test_gl_basic_gl42_core), \
+ unit_test_make(test_gl_basic_gl43_core), \
+ \
+ unit_test_make(test_gl_basic_gl32_compat), \
+ unit_test_make(test_gl_basic_gl33_compat), \
+ unit_test_make(test_gl_basic_gl40_compat), \
+ unit_test_make(test_gl_basic_gl41_compat), \
+ unit_test_make(test_gl_basic_gl42_compat), \
+ unit_test_make(test_gl_basic_gl43_compat), \
+ \
+ unit_test_make(test_gl_basic_gles1_rgb), \
+ unit_test_make(test_gl_basic_gles1_rgba), \
+ unit_test_make(test_gl_basic_gles1_fwdcompat), \
+ unit_test_make(test_gl_basic_gles10), \
+ unit_test_make(test_gl_basic_gles11), \
+ \
+ unit_test_make(test_gl_basic_gles2_rgb), \
+ unit_test_make(test_gl_basic_gles2_rgba), \
+ unit_test_make(test_gl_basic_gles2_fwdcompat), \
+ unit_test_make(test_gl_basic_gles20), \
+ \
+ unit_test_make(test_gl_basic_gles3_rgb), \
+ unit_test_make(test_gl_basic_gles3_rgba), \
+ unit_test_make(test_gl_basic_gles3_fwdcompat), \
+ unit_test_make(test_gl_basic_gles30), \
+ \
+ }; \
+ \
+ return cmocka_run_group_tests_name(#platform, tests, NULL, NULL); \
+}
+
test_XX_rgb(gl, OPENGL, NO_ERROR)
test_XX_rgba(gl, OPENGL, NO_ERROR)
@@ -543,6 +612,7 @@ test_XX_fwdcompat(gles3, OPENGL_ES3, ERROR_BAD_ATTRIBUTE)
test_glesXX(3, 30, NO_ERROR)
#endif
+#if 0
#ifdef WAFFLE_HAS_CGL
TEST(gl_basic, cgl_init)
{
@@ -619,71 +689,20 @@ testsuite_cgl(void)
TEST_RUN(gl_basic, gles20);
}
#endif // WAFFLE_HAS_CGL
+#endif // 0
#ifdef WAFFLE_HAS_GLX
-TEST(gl_basic, glx_init)
-{
- gl_basic_init(WAFFLE_PLATFORM_GLX);
-}
-static void
-testsuite_glx(void)
-{
- TEST_RUN(gl_basic, glx_init);
+#define unit_test_make(name) \
+ cmocka_unit_test_setup_teardown(name, setup_glx, gl_basic_fini)
- TEST_RUN(gl_basic, gl_rgb);
- TEST_RUN(gl_basic, gl_rgba);
- TEST_RUN(gl_basic, gl_fwdcompat);
- TEST_RUN(gl_basic, gl_debug);
+CREATE_TESTSUITE(WAFFLE_PLATFORM_GLX, glx)
- TEST_RUN(gl_basic, gl10);
- TEST_RUN(gl_basic, gl11);
- TEST_RUN(gl_basic, gl12);
- TEST_RUN(gl_basic, gl13);
- TEST_RUN(gl_basic, gl14);
- TEST_RUN(gl_basic, gl15);
- TEST_RUN(gl_basic, gl20);
- TEST_RUN(gl_basic, gl21);
- TEST_RUN(gl_basic, gl21_fwdcompat);
+#undef unit_test_make
- TEST_RUN(gl_basic, gl30);
- TEST_RUN(gl_basic, gl30_fwdcompat);
- TEST_RUN(gl_basic, gl31);
- TEST_RUN(gl_basic, gl31_fwdcompat);
-
- TEST_RUN(gl_basic, gl32_core);
- TEST_RUN(gl_basic, gl32_core_fwdcompat);
- TEST_RUN(gl_basic, gl33_core);
- TEST_RUN(gl_basic, gl40_core);
- TEST_RUN(gl_basic, gl41_core);
- TEST_RUN(gl_basic, gl42_core);
- TEST_RUN(gl_basic, gl43_core);
-
- TEST_RUN(gl_basic, gl32_compat);
- TEST_RUN(gl_basic, gl33_compat);
- TEST_RUN(gl_basic, gl40_compat);
- TEST_RUN(gl_basic, gl41_compat);
- TEST_RUN(gl_basic, gl42_compat);
- TEST_RUN(gl_basic, gl43_compat);
-
- TEST_RUN(gl_basic, gles1_rgb);
- TEST_RUN(gl_basic, gles1_rgba);
- TEST_RUN(gl_basic, gles1_fwdcompat);
- TEST_RUN(gl_basic, gles10);
- TEST_RUN(gl_basic, gles11);
-
- TEST_RUN(gl_basic, gles2_rgb);
- TEST_RUN(gl_basic, gles2_rgba);
- TEST_RUN(gl_basic, gles2_fwdcompat);
- TEST_RUN(gl_basic, gles20);
-
- TEST_RUN(gl_basic, gles3_rgb);
- TEST_RUN(gl_basic, gles3_rgba);
- TEST_RUN(gl_basic, gles3_fwdcompat);
- TEST_RUN(gl_basic, gles30);
-}
#endif // WAFFLE_HAS_GLX
+#if 0
#ifdef WAFFLE_HAS_WAYLAND
TEST(gl_basic, wayland_init)
{
@@ -1057,11 +1076,12 @@ main(int argc, char *argv[])
run_testsuite(testsuite_cgl);
break;
#endif
+#endif // 0
#ifdef WAFFLE_HAS_GLX
case WAFFLE_PLATFORM_GLX:
- run_testsuite(testsuite_glx);
- break;
+ return testsuite_glx();
#endif
+#if 0
#ifdef WAFFLE_HAS_WAYLAND
case WAFFLE_PLATFORM_WAYLAND:
run_testsuite(testsuite_wayland);
--
2.6.2
More information about the waffle
mailing list