From fe4d670752d91288ddc8c2176721e08657f028f5 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Wed, 4 Feb 2015 15:53:58 +1000 Subject: [PATCH] tests: reorg init tests into one with a standard init sequence --- tests/test_virgl_init.c | 119 +++++++--------------------------------- 1 file changed, 20 insertions(+), 99 deletions(-) diff --git a/tests/test_virgl_init.c b/tests/test_virgl_init.c index aac7244..1292488 100644 --- a/tests/test_virgl_init.c +++ b/tests/test_virgl_init.c @@ -98,6 +98,7 @@ END_TEST START_TEST(virgl_init_egl_create_ctx_0) { int ret; + test_cbs.version = 1; ret = virgl_renderer_init(&mystruct, VIRGL_RENDERER_USE_EGL, &test_cbs); ck_assert_int_eq(ret, 0); @@ -122,12 +123,7 @@ END_TEST START_TEST(virgl_init_egl_create_ctx_leak) { - int ret; - test_cbs.version = 1; - ret = virgl_renderer_init(&mystruct, VIRGL_RENDERER_USE_EGL, &test_cbs); - ck_assert_int_eq(ret, 0); - ret = virgl_renderer_context_create(1, strlen("test1"), "test1"); - ck_assert_int_eq(ret, 0); + testvirgl_init_single_ctx(); /* don't destroy the context - leak it make sure cleanup catches it */ /*virgl_renderer_context_destroy(1);*/ @@ -140,12 +136,6 @@ START_TEST(virgl_init_egl_create_ctx_create_bind_res) int ret; struct virgl_renderer_resource_create_args res; - test_cbs.version = 1; - ret = virgl_renderer_init(&mystruct, VIRGL_RENDERER_USE_EGL, &test_cbs); - ck_assert_int_eq(ret, 0); - ret = virgl_renderer_context_create(1, strlen("test1"), "test1"); - ck_assert_int_eq(ret, 0); - testvirgl_init_simple_1d_resource(&res, 1); ret = virgl_renderer_resource_create(&res, NULL, 0); @@ -156,8 +146,6 @@ START_TEST(virgl_init_egl_create_ctx_create_bind_res) virgl_renderer_ctx_detach_resource(1, res.handle); virgl_renderer_resource_unref(1); - virgl_renderer_context_destroy(1); - virgl_renderer_cleanup(&mystruct); } END_TEST @@ -165,13 +153,7 @@ START_TEST(virgl_init_egl_create_ctx_create_bind_res_illegal_ctx) { int ret; struct virgl_renderer_resource_create_args res; - - test_cbs.version = 1; - ret = virgl_renderer_init(&mystruct, VIRGL_RENDERER_USE_EGL, &test_cbs); - ck_assert_int_eq(ret, 0); - ret = virgl_renderer_context_create(1, strlen("test1"), "test1"); - ck_assert_int_eq(ret, 0); - + testvirgl_init_simple_1d_resource(&res, 1); ret = virgl_renderer_resource_create(&res, NULL, 0); @@ -180,8 +162,6 @@ START_TEST(virgl_init_egl_create_ctx_create_bind_res_illegal_ctx) virgl_renderer_ctx_attach_resource(2, res.handle); virgl_renderer_resource_unref(1); - virgl_renderer_context_destroy(1); - virgl_renderer_cleanup(&mystruct); } END_TEST @@ -191,12 +171,6 @@ START_TEST(virgl_init_egl_create_ctx_create_bind_res_illegal_res) int ret; struct virgl_renderer_resource_create_args res; - test_cbs.version = 1; - ret = virgl_renderer_init(&mystruct, VIRGL_RENDERER_USE_EGL, &test_cbs); - ck_assert_int_eq(ret, 0); - ret = virgl_renderer_context_create(1, strlen("test1"), "test1"); - ck_assert_int_eq(ret, 0); - testvirgl_init_simple_1d_resource(&res, 1); ret = virgl_renderer_resource_create(&res, NULL, 0); @@ -205,8 +179,6 @@ START_TEST(virgl_init_egl_create_ctx_create_bind_res_illegal_res) virgl_renderer_ctx_attach_resource(1, 2); virgl_renderer_resource_unref(1); - virgl_renderer_context_destroy(1); - virgl_renderer_cleanup(&mystruct); } END_TEST @@ -215,12 +187,6 @@ START_TEST(virgl_init_egl_create_ctx_create_unbind_no_bind) int ret; struct virgl_renderer_resource_create_args res; - test_cbs.version = 1; - ret = virgl_renderer_init(&mystruct, VIRGL_RENDERER_USE_EGL, &test_cbs); - ck_assert_int_eq(ret, 0); - ret = virgl_renderer_context_create(1, strlen("test1"), "test1"); - ck_assert_int_eq(ret, 0); - testvirgl_init_simple_1d_resource(&res, 1); ret = virgl_renderer_resource_create(&res, NULL, 0); @@ -229,8 +195,6 @@ START_TEST(virgl_init_egl_create_ctx_create_unbind_no_bind) virgl_renderer_ctx_detach_resource(1, res.handle); virgl_renderer_resource_unref(1); - virgl_renderer_context_destroy(1); - virgl_renderer_cleanup(&mystruct); } END_TEST @@ -239,12 +203,6 @@ START_TEST(virgl_init_egl_create_ctx_create_unbind_illegal_ctx) int ret; struct virgl_renderer_resource_create_args res; - test_cbs.version = 1; - ret = virgl_renderer_init(&mystruct, VIRGL_RENDERER_USE_EGL, &test_cbs); - ck_assert_int_eq(ret, 0); - ret = virgl_renderer_context_create(1, strlen("test1"), "test1"); - ck_assert_int_eq(ret, 0); - testvirgl_init_simple_1d_resource(&res, 1); ret = virgl_renderer_resource_create(&res, NULL, 0); @@ -253,8 +211,6 @@ START_TEST(virgl_init_egl_create_ctx_create_unbind_illegal_ctx) virgl_renderer_ctx_detach_resource(2, res.handle); virgl_renderer_resource_unref(1); - virgl_renderer_context_destroy(1); - virgl_renderer_cleanup(&mystruct); } END_TEST @@ -264,11 +220,7 @@ START_TEST(virgl_init_egl_create_ctx_create_bind_res_leak) int ret; struct virgl_renderer_resource_create_args res; - test_cbs.version = 1; - ret = virgl_renderer_init(&mystruct, VIRGL_RENDERER_USE_EGL, &test_cbs); - ck_assert_int_eq(ret, 0); - ret = virgl_renderer_context_create(1, strlen("test1"), "test1"); - ck_assert_int_eq(ret, 0); + testvirgl_init_single_ctx_nr(); testvirgl_init_simple_1d_resource(&res, 1); @@ -281,18 +233,15 @@ START_TEST(virgl_init_egl_create_ctx_create_bind_res_leak) /*virgl_renderer_resource_unref(1);*/ /* don't detach or destroy resource - it should still get cleanedup */ - virgl_renderer_context_destroy(1); - virgl_renderer_cleanup(&mystruct); + testvirgl_fini_single_ctx(); } END_TEST START_TEST(virgl_init_egl_create_ctx_reset) { int ret; - test_cbs.version = 1; - ret = virgl_renderer_init(&mystruct, VIRGL_RENDERER_USE_EGL, &test_cbs); - ck_assert_int_eq(ret, 0); - ret = virgl_renderer_context_create(1, strlen("test1"), "test1"); + + ret = testvirgl_init_single_ctx(); ck_assert_int_eq(ret, 0); virgl_renderer_reset(); @@ -369,11 +318,6 @@ START_TEST(virgl_test_get_resource_info) int ret; struct virgl_renderer_resource_create_args res; struct virgl_renderer_resource_info info; - test_cbs.version = 1; - ret = virgl_renderer_init(&mystruct, VIRGL_RENDERER_USE_EGL, &test_cbs); - ck_assert_int_eq(ret, 0); - ret = virgl_renderer_context_create(1, strlen("test1"), "test1"); - ck_assert_int_eq(ret, 0); testvirgl_init_simple_2d_resource(&res, 1); res.format = VIRGL_FORMAT_B8G8R8X8_UNORM; @@ -393,8 +337,6 @@ START_TEST(virgl_test_get_resource_info) virgl_renderer_ctx_detach_resource(1, res.handle); virgl_renderer_resource_unref(1); - virgl_renderer_context_destroy(1); - virgl_renderer_cleanup(&mystruct); } END_TEST @@ -402,11 +344,6 @@ START_TEST(virgl_test_get_resource_info_no_info) { int ret; struct virgl_renderer_resource_create_args res; - test_cbs.version = 1; - ret = virgl_renderer_init(&mystruct, VIRGL_RENDERER_USE_EGL, &test_cbs); - ck_assert_int_eq(ret, 0); - ret = virgl_renderer_context_create(1, strlen("test1"), "test1"); - ck_assert_int_eq(ret, 0); testvirgl_init_simple_1d_resource(&res, 1); @@ -420,8 +357,6 @@ START_TEST(virgl_test_get_resource_info_no_info) virgl_renderer_ctx_detach_resource(1, res.handle); virgl_renderer_resource_unref(1); - virgl_renderer_context_destroy(1); - virgl_renderer_cleanup(&mystruct); } END_TEST @@ -430,18 +365,11 @@ START_TEST(virgl_test_get_resource_info_no_res) { int ret; struct virgl_renderer_resource_info info; - test_cbs.version = 1; - ret = virgl_renderer_init(&mystruct, VIRGL_RENDERER_USE_EGL, &test_cbs); - ck_assert_int_eq(ret, 0); - ret = virgl_renderer_context_create(1, strlen("test1"), "test1"); - ck_assert_int_eq(ret, 0); ret = virgl_renderer_resource_get_info(1, &info); ck_assert_int_eq(ret, EINVAL); virgl_renderer_resource_unref(1); - virgl_renderer_context_destroy(1); - virgl_renderer_cleanup(&mystruct); } END_TEST @@ -452,11 +380,6 @@ START_TEST(virgl_init_egl_create_ctx_create_attach_res) struct iovec iovs[1]; struct iovec *iovs_r; int num_r; - test_cbs.version = 1; - ret = virgl_renderer_init(&mystruct, VIRGL_RENDERER_USE_EGL, &test_cbs); - ck_assert_int_eq(ret, 0); - ret = virgl_renderer_context_create(1, strlen("test1"), "test1"); - ck_assert_int_eq(ret, 0); testvirgl_init_simple_1d_resource(&res, 1); @@ -473,8 +396,6 @@ START_TEST(virgl_init_egl_create_ctx_create_attach_res) free(iovs[0].iov_base); virgl_renderer_resource_unref(1); - virgl_renderer_context_destroy(1); - virgl_renderer_cleanup(&mystruct); } END_TEST @@ -484,11 +405,6 @@ START_TEST(virgl_init_egl_create_ctx_create_attach_res_detach_no_iovs) struct virgl_renderer_resource_create_args res; struct iovec iovs[1]; int num_r; - test_cbs.version = 1; - ret = virgl_renderer_init(&mystruct, VIRGL_RENDERER_USE_EGL, &test_cbs); - ck_assert_int_eq(ret, 0); - ret = virgl_renderer_context_create(1, strlen("test1"), "test1"); - ck_assert_int_eq(ret, 0); testvirgl_init_simple_1d_resource(&res, 1); @@ -505,8 +421,6 @@ START_TEST(virgl_init_egl_create_ctx_create_attach_res_detach_no_iovs) free(iovs[0].iov_base); virgl_renderer_resource_unref(1); - virgl_renderer_context_destroy(1); - virgl_renderer_cleanup(&mystruct); } END_TEST @@ -544,22 +458,29 @@ Suite *virgl_init_suite(void) tcase_add_test(tc_core, virgl_init_egl_create_ctx_0); tcase_add_test(tc_core, virgl_init_egl_destroy_ctx_illegal); tcase_add_test(tc_core, virgl_init_egl_create_ctx_leak); + tcase_add_test(tc_core, virgl_init_egl_create_ctx_reset); + tcase_add_test(tc_core, virgl_init_get_caps_set0); + tcase_add_test(tc_core, virgl_init_get_caps_set1); + tcase_add_test(tc_core, virgl_init_get_caps_null); + tcase_add_test(tc_core, virgl_init_egl_create_ctx_create_attach_res_illegal_res); + tcase_add_test(tc_core, virgl_init_egl_create_ctx_create_bind_res_leak); + + suite_add_tcase(s, tc_core); + + tc_core = tcase_create("init_std"); + tcase_add_unchecked_fixture(tc_core, testvirgl_init_single_ctx_nr, testvirgl_fini_single_ctx); tcase_add_test(tc_core, virgl_init_egl_create_ctx_create_bind_res); tcase_add_test(tc_core, virgl_init_egl_create_ctx_create_bind_res_illegal_ctx); tcase_add_test(tc_core, virgl_init_egl_create_ctx_create_bind_res_illegal_res); tcase_add_test(tc_core, virgl_init_egl_create_ctx_create_unbind_no_bind); tcase_add_test(tc_core, virgl_init_egl_create_ctx_create_unbind_illegal_ctx); - tcase_add_test(tc_core, virgl_init_egl_create_ctx_create_bind_res_leak); - tcase_add_test(tc_core, virgl_init_egl_create_ctx_reset); - tcase_add_test(tc_core, virgl_init_get_caps_set0); - tcase_add_test(tc_core, virgl_init_get_caps_set1); - tcase_add_test(tc_core, virgl_init_get_caps_null); + tcase_add_test(tc_core, virgl_test_get_resource_info); tcase_add_test(tc_core, virgl_test_get_resource_info_no_info); tcase_add_test(tc_core, virgl_test_get_resource_info_no_res); tcase_add_test(tc_core, virgl_init_egl_create_ctx_create_attach_res); tcase_add_test(tc_core, virgl_init_egl_create_ctx_create_attach_res_detach_no_iovs); - tcase_add_test(tc_core, virgl_init_egl_create_ctx_create_attach_res_illegal_res); + suite_add_tcase(s, tc_core); return s;