From 58c7ad6acebb5a3fe298b4173cc8bec6a0e44623 Mon Sep 17 00:00:00 2001 From: Caio Oliveira Date: Thu, 27 Jul 2023 14:54:02 -0700 Subject: [PATCH] hasvk/tests: Propagate failures to gtest Acked-by: Lionel Landwerlin Part-of: --- src/intel/vulkan_hasvk/tests/hasvk_tests.cpp | 6 ++++++ src/intel/vulkan_hasvk/tests/test_common.h | 26 +++++++++++++++++--------- 2 files changed, 23 insertions(+), 9 deletions(-) diff --git a/src/intel/vulkan_hasvk/tests/hasvk_tests.cpp b/src/intel/vulkan_hasvk/tests/hasvk_tests.cpp index 284f485..d397aa9 100644 --- a/src/intel/vulkan_hasvk/tests/hasvk_tests.cpp +++ b/src/intel/vulkan_hasvk/tests/hasvk_tests.cpp @@ -5,6 +5,8 @@ #include +#include "test_common.h" + #define HASVK_C_TEST(S, N, C) extern "C" void C(void); TEST(S, N) { C(); } HASVK_C_TEST(StatePool, Regular, state_pool_test); @@ -14,3 +16,7 @@ HASVK_C_TEST(StatePool, Padding, state_pool_padding_test); HASVK_C_TEST(BlockPool, NoFree, block_pool_no_free_test); HASVK_C_TEST(BlockPool, GrowFirst, block_pool_grow_first_test); + +extern "C" void FAIL_IN_GTEST(const char *file_path, unsigned line_number, const char *msg) { + GTEST_FAIL_AT(file_path, line_number) << msg; +} diff --git a/src/intel/vulkan_hasvk/tests/test_common.h b/src/intel/vulkan_hasvk/tests/test_common.h index 3f883e3..c92eab0 100644 --- a/src/intel/vulkan_hasvk/tests/test_common.h +++ b/src/intel/vulkan_hasvk/tests/test_common.h @@ -21,14 +21,22 @@ * IN THE SOFTWARE. */ -#include -#include +#include "dev/intel_device_info.h" -#define ASSERT(cond) \ - do { \ - if (!(cond)) { \ - fprintf(stderr, "%s:%d: Test assertion `%s` failed.\n", \ - __FILE__, __LINE__, # cond); \ - abort(); \ - } \ +#ifdef __cplusplus +extern "C" { +#endif + +#define ASSERT(cond) \ + do { \ + if (!(cond)) { \ + FAIL_IN_GTEST(__FILE__, __LINE__, "Test assertion `" # cond \ + "` failed."); \ + } \ } while (false) + +void FAIL_IN_GTEST(const char *file_path, unsigned line_number, const char *msg); + +#ifdef __cplusplus +} // extern "C" +#endif -- 2.7.4