1919#include < numeric>
2020#include < tuple>
2121
22+ #ifdef UMF_TEST_PROVIDER_FREE_NOT_SUPPORTED
23+ #define get_umf_result_of_free (expected_result ) UMF_RESULT_ERROR_NOT_SUPPORTED
24+ #else
25+ #define get_umf_result_of_free (expected_result ) (expected_result)
26+ #endif
27+
2228class MemoryAccessor {
2329 public:
2430 virtual void fill (void *ptr, size_t size, const void *pattern,
@@ -163,7 +169,7 @@ TEST_P(umfIpcTest, GetIPCHandleInvalidArgs) {
163169 EXPECT_EQ (ret, UMF_RESULT_ERROR_INVALID_ARGUMENT);
164170
165171 ret = umfFree (ptr);
166- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
172+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
167173}
168174
169175TEST_P (umfIpcTest, BasicFlow) {
@@ -218,7 +224,7 @@ TEST_P(umfIpcTest, BasicFlow) {
218224 EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
219225
220226 ret = umfPoolFree (pool.get (), ptr);
221- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
227+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
222228
223229 pool.reset (nullptr );
224230 EXPECT_EQ (stat.getCount , 1 );
@@ -282,7 +288,7 @@ TEST_P(umfIpcTest, GetPoolByOpenedHandle) {
282288
283289 for (size_t i = 0 ; i < NUM_ALLOCS; ++i) {
284290 umf_result_t ret = umfFree (ptrs[i]);
285- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
291+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
286292 }
287293}
288294
@@ -308,7 +314,7 @@ TEST_P(umfIpcTest, AllocFreeAllocTest) {
308314 EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
309315
310316 ret = umfPoolFree (pool.get (), ptr);
311- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
317+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
312318
313319 ptr = umfPoolMalloc (pool.get (), SIZE);
314320 ASSERT_NE (ptr, nullptr );
@@ -330,7 +336,7 @@ TEST_P(umfIpcTest, AllocFreeAllocTest) {
330336 EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
331337
332338 ret = umfPoolFree (pool.get (), ptr);
333- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
339+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
334340
335341 pool.reset (nullptr );
336342 EXPECT_EQ (stat.allocCount , stat.getCount );
@@ -382,7 +388,7 @@ TEST_P(umfIpcTest, openInTwoPools) {
382388 EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
383389
384390 ret = umfPoolFree (pool1.get (), ptr);
385- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
391+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
386392
387393 pool1.reset (nullptr );
388394 pool2.reset (nullptr );
@@ -433,7 +439,7 @@ TEST_P(umfIpcTest, ConcurrentGetPutHandles) {
433439
434440 for (void *ptr : ptrs) {
435441 umf_result_t ret = umfPoolFree (pool.get (), ptr);
436- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
442+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
437443 }
438444
439445 pool.reset (nullptr );
@@ -495,7 +501,7 @@ TEST_P(umfIpcTest, ConcurrentOpenCloseHandles) {
495501
496502 for (void *ptr : ptrs) {
497503 umf_result_t ret = umfPoolFree (pool.get (), ptr);
498- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
504+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
499505 }
500506
501507 pool.reset (nullptr );
0 commit comments