20
20
#include < numeric>
21
21
#include < tuple>
22
22
23
+ #ifdef UMF_TEST_PROVIDER_FREE_NOT_SUPPORTED
24
+ #define get_umf_result_of_free (expected_result ) UMF_RESULT_ERROR_NOT_SUPPORTED
25
+ #else
26
+ #define get_umf_result_of_free (expected_result ) (expected_result)
27
+ #endif
28
+
23
29
class MemoryAccessor {
24
30
public:
25
31
virtual void fill (void *ptr, size_t size, const void *pattern,
@@ -172,7 +178,7 @@ TEST_P(umfIpcTest, GetIPCHandleInvalidArgs) {
172
178
EXPECT_EQ (ret, UMF_RESULT_ERROR_INVALID_ARGUMENT);
173
179
174
180
ret = umfFree (ptr);
175
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
181
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
176
182
}
177
183
178
184
TEST_P (umfIpcTest, BasicFlow) {
@@ -227,7 +233,7 @@ TEST_P(umfIpcTest, BasicFlow) {
227
233
EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
228
234
229
235
ret = umfPoolFree (pool.get (), ptr);
230
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
236
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
231
237
232
238
pool.reset (nullptr );
233
239
EXPECT_EQ (stat.getCount , 1 );
@@ -291,7 +297,7 @@ TEST_P(umfIpcTest, GetPoolByOpenedHandle) {
291
297
292
298
for (size_t i = 0 ; i < NUM_ALLOCS; ++i) {
293
299
umf_result_t ret = umfFree (ptrs[i]);
294
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
300
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
295
301
}
296
302
}
297
303
@@ -317,7 +323,7 @@ TEST_P(umfIpcTest, AllocFreeAllocTest) {
317
323
EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
318
324
319
325
ret = umfPoolFree (pool.get (), ptr);
320
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
326
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
321
327
322
328
ptr = umfPoolMalloc (pool.get (), SIZE);
323
329
ASSERT_NE (ptr, nullptr );
@@ -339,7 +345,7 @@ TEST_P(umfIpcTest, AllocFreeAllocTest) {
339
345
EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
340
346
341
347
ret = umfPoolFree (pool.get (), ptr);
342
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
348
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
343
349
344
350
pool.reset (nullptr );
345
351
EXPECT_EQ (stat.allocCount , stat.getCount );
@@ -391,7 +397,7 @@ TEST_P(umfIpcTest, openInTwoPools) {
391
397
EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
392
398
393
399
ret = umfPoolFree (pool1.get (), ptr);
394
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
400
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
395
401
396
402
pool1.reset (nullptr );
397
403
pool2.reset (nullptr );
@@ -442,7 +448,7 @@ TEST_P(umfIpcTest, ConcurrentGetPutHandles) {
442
448
443
449
for (void *ptr : ptrs) {
444
450
umf_result_t ret = umfPoolFree (pool.get (), ptr);
445
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
451
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
446
452
}
447
453
448
454
pool.reset (nullptr );
@@ -504,7 +510,7 @@ TEST_P(umfIpcTest, ConcurrentOpenCloseHandles) {
504
510
505
511
for (void *ptr : ptrs) {
506
512
umf_result_t ret = umfPoolFree (pool.get (), ptr);
507
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
513
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
508
514
}
509
515
510
516
pool.reset (nullptr );
0 commit comments