tests/vulkan: allow instance creation failures
authorMatthew Waters <matthew@centricular.com>
Tue, 21 May 2019 04:04:07 +0000 (14:04 +1000)
committerMatthew Waters <matthew@centricular.com>
Tue, 4 Jun 2019 09:03:44 +0000 (09:03 +0000)
Usually means that there is no vulkan implementation available.

We skip tests in that case

tests/check/libs/vkmemory.c

index f019cb1..0822f28 100644 (file)
@@ -88,17 +88,25 @@ GST_START_TEST (test_buffer_mem_allocate)
 GST_END_TEST;
 
 static Suite *
-insert_bin_suite (void)
+vkmemory_suite (void)
 {
   Suite *s = suite_create ("vkmemory");
   TCase *tc_basic = tcase_create ("general");
+  gboolean have_instance;
 
   suite_add_tcase (s, tc_basic);
   tcase_add_checked_fixture (tc_basic, setup, teardown);
-  tcase_add_test (tc_basic, test_buffer_mem_allocate);
+
+  /* FIXME: CI doesn't have a software vulkan renderer (and none exists currently) */
+  instance = gst_vulkan_instance_new ();
+  have_instance = gst_vulkan_instance_open (instance, NULL);
+  gst_object_unref (instance);
+  if (have_instance) {
+    tcase_add_test (tc_basic, test_buffer_mem_allocate);
+  }
 
   return s;
 }
 
 
-GST_CHECK_MAIN (insert_bin);
+GST_CHECK_MAIN (vkmemory);