19
19
#include < numeric>
20
20
#include < tuple>
21
21
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
+
22
28
class MemoryAccessor {
23
29
public:
24
30
virtual void fill (void *ptr, size_t size, const void *pattern,
@@ -163,7 +169,7 @@ TEST_P(umfIpcTest, GetIPCHandleInvalidArgs) {
163
169
EXPECT_EQ (ret, UMF_RESULT_ERROR_INVALID_ARGUMENT);
164
170
165
171
ret = umfFree (ptr);
166
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
172
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
167
173
}
168
174
169
175
TEST_P (umfIpcTest, BasicFlow) {
@@ -218,7 +224,7 @@ TEST_P(umfIpcTest, BasicFlow) {
218
224
EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
219
225
220
226
ret = umfPoolFree (pool.get (), ptr);
221
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
227
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
222
228
223
229
void *ptr1 = umfPoolMalloc (pool.get (), SIZE);
224
230
EXPECT_NE (ptr1, nullptr );
@@ -230,10 +236,10 @@ TEST_P(umfIpcTest, BasicFlow) {
230
236
memAccessor->copy (ptr1, ptr2, SIZE);
231
237
232
238
ret = umfPoolFree (pool.get (), ptr1);
233
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
239
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
234
240
235
241
ret = umfPoolFree (pool.get (), ptr2);
236
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
242
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
237
243
238
244
pool.reset (nullptr );
239
245
EXPECT_EQ (stat.getCount , 1 );
@@ -297,7 +303,7 @@ TEST_P(umfIpcTest, GetPoolByOpenedHandle) {
297
303
298
304
for (size_t i = 0 ; i < NUM_ALLOCS; ++i) {
299
305
umf_result_t ret = umfFree (ptrs[i]);
300
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
306
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
301
307
}
302
308
}
303
309
@@ -323,7 +329,7 @@ TEST_P(umfIpcTest, AllocFreeAllocTest) {
323
329
EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
324
330
325
331
ret = umfPoolFree (pool.get (), ptr);
326
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
332
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
327
333
328
334
ptr = umfPoolMalloc (pool.get (), SIZE);
329
335
ASSERT_NE (ptr, nullptr );
@@ -341,7 +347,7 @@ TEST_P(umfIpcTest, AllocFreeAllocTest) {
341
347
EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
342
348
343
349
ret = umfPoolFree (pool.get (), ptr);
344
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
350
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
345
351
346
352
void *ptr1 = umfPoolMalloc (pool.get (), SIZE);
347
353
ASSERT_NE (ptr1, nullptr );
@@ -353,10 +359,10 @@ TEST_P(umfIpcTest, AllocFreeAllocTest) {
353
359
memAccessor->copy (ptr1, ptr2, SIZE);
354
360
355
361
ret = umfPoolFree (pool.get (), ptr1);
356
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
362
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
357
363
358
364
ret = umfPoolFree (pool.get (), ptr2);
359
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
365
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
360
366
361
367
pool.reset (nullptr );
362
368
EXPECT_EQ (stat.getCount , stat.putCount );
@@ -407,7 +413,7 @@ TEST_P(umfIpcTest, openInTwoPools) {
407
413
EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
408
414
409
415
ret = umfPoolFree (pool1.get (), ptr);
410
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
416
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
411
417
412
418
pool1.reset (nullptr );
413
419
pool2.reset (nullptr );
@@ -458,7 +464,7 @@ TEST_P(umfIpcTest, ConcurrentGetPutHandles) {
458
464
459
465
for (void *ptr : ptrs) {
460
466
umf_result_t ret = umfPoolFree (pool.get (), ptr);
461
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
467
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
462
468
}
463
469
464
470
pool.reset (nullptr );
@@ -520,7 +526,7 @@ TEST_P(umfIpcTest, ConcurrentOpenCloseHandles) {
520
526
521
527
for (void *ptr : ptrs) {
522
528
umf_result_t ret = umfPoolFree (pool.get (), ptr);
523
- EXPECT_EQ (ret, UMF_RESULT_SUCCESS);
529
+ EXPECT_EQ (ret, get_umf_result_of_free ( UMF_RESULT_SUCCESS) );
524
530
}
525
531
526
532
pool.reset (nullptr );
0 commit comments