Skip to content

Commit 340bfb1

Browse files
committed
windows next fix attempt
1 parent 822f278 commit 340bfb1

File tree

6 files changed

+30
-13
lines changed

6 files changed

+30
-13
lines changed

test/common/level_zero_mocks.cpp

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,9 @@
88
*/
99

1010
#include "level_zero_mocks.h"
11+
1112
#include "umf/providers/provider_level_zero.h"
13+
#include "utils_load_library.h"
1214
#include <cstdlib>
1315

1416
using namespace ::testing;
@@ -92,9 +94,22 @@ TestCreateMemoryAllocationProperties(uint32_t modifier) {
9294

9395
void MockedLevelZeroTestEnvironment::SetUp() {
9496
#ifdef _WIN32
95-
_putenv_s("UMF_ZE_LOADER_LIB_NAME", "umf_ze_loopback.dll");
97+
const char *lib_name = "umf_ze_loopback.dll";
98+
_putenv_s("UMF_ZE_LOADER_LIB_NAME", lib_name);
9699
#else
97-
setenv("UMF_ZE_LOADER_LIB_NAME", "libumf_ze_loopback.so", 1);
100+
const char *lib_name = "libumf_ze_loopback.so";
101+
setenv("UMF_ZE_LOADER_LIB_NAME", lib_name, 1);
98102
#endif
103+
104+
void *lib_handle =
105+
utils_open_library(lib_name, UMF_UTIL_OPEN_LIBRARY_NO_LOAD);
106+
ASSERT_NE(lib_handle, nullptr);
107+
108+
l0interface = static_cast<LevelZero **>(
109+
utils_get_symbol_addr(lib_handle, "level_zero_mock", lib_name));
110+
ASSERT_NE(l0interface, nullptr);
111+
ASSERT_EQ(*l0interface, nullptr);
99112
}
100113
void MockedLevelZeroTestEnvironment::TearDown() {}
114+
115+
LevelZero **MockedLevelZeroTestEnvironment::l0interface;

test/common/level_zero_mocks.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,8 @@ class LevelZeroMock : public LevelZero {
8080
// important, makes UMF load ze_loopback instead of regular l0
8181
class MockedLevelZeroTestEnvironment : public ::testing::Environment {
8282
public:
83+
static LevelZero **l0interface;
84+
8385
void SetUp() override;
8486
void TearDown() override;
8587
};

test/common/ze_loopback.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212
#include <cstdlib>
1313
#include <iostream>
1414

15+
LevelZero *level_zero_mock = nullptr;
16+
1517
static void check_mock_present() {
1618
if (level_zero_mock == nullptr) {
1719
std::cerr << "level_zero_mock was not set\n";

test/common/ze_loopback.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,4 @@ class LevelZero {
3030
virtual ze_result_t zeMemFree(ze_context_handle_t hContext, void *ptr) = 0;
3131
};
3232

33-
extern LevelZero *level_zero_mock;
34-
3533
#endif //UMF_TEST_ZE_LOOPBACK_H

test/pools/pool_residency.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,16 +11,16 @@
1111

1212
using namespace testing;
1313

14-
LevelZero *level_zero_mock = nullptr;
15-
1614
class PoolResidencyTestFixture : public Test {
1715
protected:
18-
StrictMock<LevelZeroMock> l0mock;
1916
umf_memory_pool_handle_t pool = nullptr;
2017
const ze_device_handle_t OUR_DEVICE;
18+
StrictMock<LevelZeroMock> l0mock;
2119

2220
PoolResidencyTestFixture()
23-
: OUR_DEVICE(TestCreatePointer<ze_device_handle_t>(777)) {}
21+
: OUR_DEVICE(TestCreatePointer<ze_device_handle_t>(777)) {
22+
*MockedLevelZeroTestEnvironment::l0interface = &l0mock;
23+
}
2424

2525
void initializeMemoryPool(umf_memory_provider_handle_t provider) {
2626

@@ -34,7 +34,7 @@ class PoolResidencyTestFixture : public Test {
3434
umf_test::defaultDisjointPoolConfigDestroy(params);
3535
}
3636

37-
void SetUp() override { level_zero_mock = &l0mock; }
37+
void SetUp() override {}
3838
void TearDown() override {
3939
if (pool != nullptr) {
4040
EXPECT_CALL(l0mock, zeMemFree(CONTEXT, _))

test/providers/provider_level_zero_residency.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,6 @@
88

99
#include "gtest/gtest.h"
1010

11-
LevelZero *level_zero_mock = nullptr;
12-
1311
using namespace testing;
1412

1513
class LevelZeroResidencyTestFixture : public Test {
@@ -19,9 +17,11 @@ class LevelZeroResidencyTestFixture : public Test {
1917
const ze_device_handle_t OUR_DEVICE;
2018

2119
LevelZeroResidencyTestFixture()
22-
: OUR_DEVICE(TestCreatePointer<ze_device_handle_t>(777)) {}
20+
: OUR_DEVICE(TestCreatePointer<ze_device_handle_t>(777)) {
21+
*MockedLevelZeroTestEnvironment::l0interface = &l0mock;
22+
}
2323

24-
void SetUp() override { level_zero_mock = &l0mock; }
24+
void SetUp() override {}
2525
void TearDown() override {
2626
Mock::VerifyAndClearExpectations(&l0mock);
2727
umfMemoryProviderDestroy(provider);

0 commit comments

Comments
 (0)