|
5 | 5 | #include "base.hpp"
|
6 | 6 |
|
7 | 7 | #include "cpp_helpers.hpp"
|
| 8 | +#include "ipcFixtures.hpp" |
8 | 9 |
|
9 | 10 | #include <umf/memory_provider.h>
|
| 11 | +#include <umf/pools/pool_disjoint.h> |
10 | 12 | #include <umf/providers/provider_os_memory.h>
|
11 | 13 |
|
12 | 14 | using umf_test::test;
|
@@ -326,3 +328,34 @@ TEST_P(umfProviderTest, purge_force_INVALID_POINTER) {
|
326 | 328 | verify_last_native_error(provider.get(),
|
327 | 329 | UMF_OS_RESULT_ERROR_PURGE_FORCE_FAILED);
|
328 | 330 | }
|
| 331 | + |
| 332 | +GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(umfIpcTest); |
| 333 | + |
| 334 | +umf_os_memory_provider_params_t osMemoryProviderParamsShared() { |
| 335 | + auto params = umfOsMemoryProviderParamsDefault(); |
| 336 | + params.visibility = UMF_MEM_MAP_SHARED; |
| 337 | + return params; |
| 338 | +} |
| 339 | +auto os_params = osMemoryProviderParamsShared(); |
| 340 | + |
| 341 | +HostMemoryAccessor hostAccessor; |
| 342 | + |
| 343 | +umf_disjoint_pool_params_t disjointPoolParams() { |
| 344 | + umf_disjoint_pool_params_t params = umfDisjointPoolParamsDefault(); |
| 345 | + params.SlabMinSize = 4096; |
| 346 | + params.MaxPoolableSize = 4096; |
| 347 | + params.Capacity = 4; |
| 348 | + params.MinBucketSize = 64; |
| 349 | + return params; |
| 350 | +} |
| 351 | +umf_disjoint_pool_params_t disjointParams = disjointPoolParams(); |
| 352 | + |
| 353 | +static std::vector<ipcTestParams> ipcTestParamsList = { |
| 354 | +#if (defined UMF_POOL_DISJOINT_ENABLED) |
| 355 | + {umfDisjointPoolOps(), &disjointParams, umfOsMemoryProviderOps(), |
| 356 | + &os_params, &hostAccessor}, |
| 357 | +#endif |
| 358 | +}; |
| 359 | + |
| 360 | +INSTANTIATE_TEST_SUITE_P(osProviderTest, umfIpcTest, |
| 361 | + ::testing::ValuesIn(ipcTestParamsList)); |
0 commit comments