Skip to content

Commit 877b82a

Browse files
Add tests for AdapterBDF/FileDescriptor passed to gmm
Related-To: NEO-4168 Change-Id: Ic68ac8a6d8eb0c33cb51fc7ff10e85510d470241 Signed-off-by: Mateusz Jablonski <[email protected]>
1 parent e50039b commit 877b82a

File tree

6 files changed

+91
-13
lines changed

6 files changed

+91
-13
lines changed
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
#
2+
# Copyright (C) 2020 Intel Corporation
3+
#
4+
# SPDX-License-Identifier: MIT
5+
#
6+
7+
set(NEO_CORE_OS_INTERFACE_TESTS_LINUX
8+
${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt
9+
${CMAKE_CURRENT_SOURCE_DIR}/gmm_helper_tests_linux.cpp
10+
)
11+
set_property(GLOBAL PROPERTY NEO_CORE_OS_INTERFACE_TESTS_LINUX ${NEO_CORE_OS_INTERFACE_TESTS_LINUX})
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
/*
2+
* Copyright (C) 2020 Intel Corporation
3+
*
4+
* SPDX-License-Identifier: MIT
5+
*
6+
*/
7+
8+
#include "core/gmm_helper/gmm_helper.h"
9+
#include "core/helpers/options.h"
10+
#include "unit_tests/helpers/variable_backup.h"
11+
12+
#include "gtest/gtest.h"
13+
14+
namespace NEO {
15+
16+
extern GMM_INIT_IN_ARGS passedInputArgs;
17+
extern bool copyInputArgs;
18+
19+
TEST(GmmHelperTest, whenCreateGmmHelperWithoutOsInterfaceThenPassedFileDescriptorIsZeroed) {
20+
std::unique_ptr<GmmHelper> gmmHelper;
21+
VariableBackup<decltype(passedInputArgs)> passedInputArgsBackup(&passedInputArgs);
22+
VariableBackup<decltype(copyInputArgs)> copyInputArgsBackup(&copyInputArgs, true);
23+
24+
uint32_t expectedFileDescriptor = 0u;
25+
26+
gmmHelper.reset(new GmmHelper(nullptr, platformDevices[0]));
27+
EXPECT_EQ(expectedFileDescriptor, passedInputArgs.FileDescriptor);
28+
}
29+
30+
} // namespace NEO

core/unit_tests/os_interface/windows/CMakeLists.txt

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,11 @@
44
# SPDX-License-Identifier: MIT
55
#
66

7-
if(WIN32)
8-
set(NEO_CORE_tests_os_interface_windows
9-
${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt
10-
${CMAKE_CURRENT_SOURCE_DIR}/gdi_interface_tests.cpp
11-
${CMAKE_CURRENT_SOURCE_DIR}/mock_gdi_interface.h
12-
${CMAKE_CURRENT_SOURCE_DIR}/wddm_preemption_tests.cpp
13-
)
14-
set_property(GLOBAL PROPERTY NEO_CORE_tests_os_interface_windows ${NEO_CORE_tests_os_interface_windows})
15-
endif()
7+
set(NEO_CORE_OS_INTERFACE_TESTS_WINDOWS
8+
${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt
9+
${CMAKE_CURRENT_SOURCE_DIR}/gdi_interface_tests.cpp
10+
${CMAKE_CURRENT_SOURCE_DIR}/gmm_helper_tests_win.cpp
11+
${CMAKE_CURRENT_SOURCE_DIR}/mock_gdi_interface.h
12+
${CMAKE_CURRENT_SOURCE_DIR}/wddm_preemption_tests.cpp
13+
)
14+
set_property(GLOBAL PROPERTY NEO_CORE_OS_INTERFACE_TESTS_WINDOWS ${NEO_CORE_OS_INTERFACE_TESTS_WINDOWS})
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
/*
2+
* Copyright (C) 2020 Intel Corporation
3+
*
4+
* SPDX-License-Identifier: MIT
5+
*
6+
*/
7+
8+
#include "core/gmm_helper/gmm_helper.h"
9+
#include "core/helpers/options.h"
10+
#include "unit_tests/helpers/variable_backup.h"
11+
12+
#include "gtest/gtest.h"
13+
14+
namespace NEO {
15+
16+
extern GMM_INIT_IN_ARGS passedInputArgs;
17+
extern bool copyInputArgs;
18+
19+
TEST(GmmHelperTest, whenCreateGmmHelperWithoutOsInterfaceThenPassedAdapterBDFIsZeroed) {
20+
std::unique_ptr<GmmHelper> gmmHelper;
21+
VariableBackup<decltype(passedInputArgs)> passedInputArgsBackup(&passedInputArgs);
22+
VariableBackup<decltype(copyInputArgs)> copyInputArgsBackup(&copyInputArgs, true);
23+
24+
ADAPTER_BDF expectedAdapterBDF{};
25+
26+
gmmHelper.reset(new GmmHelper(nullptr, platformDevices[0]));
27+
EXPECT_EQ(0, memcmp(&expectedAdapterBDF, &passedInputArgs.stAdapterBDF, sizeof(ADAPTER_BDF)));
28+
}
29+
30+
} // namespace NEO

unit_tests/core_unit_tests_files.cmake

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#
2-
# Copyright (C) 2019 Intel Corporation
2+
# Copyright (C) 2019-2020 Intel Corporation
33
#
44
# SPDX-License-Identifier: MIT
55
#
@@ -12,6 +12,17 @@ append_sources_from_properties(NEO_CORE_UNIT_TESTS_SOURCES
1212
NEO_CORE_INDIRECT_HEAP_TESTS
1313
)
1414

15+
if(WIN32)
16+
append_sources_from_properties(NEO_CORE_UNIT_TESTS_SOURCES
17+
NEO_CORE_OS_INTERFACE_TESTS_WINDOWS
18+
)
19+
else()
20+
append_sources_from_properties(NEO_CORE_UNIT_TESTS_SOURCES
21+
NEO_CORE_OS_INTERFACE_TESTS_LINUX
22+
)
23+
24+
endif()
25+
1526
set_property(GLOBAL PROPERTY NEO_CORE_UNIT_TESTS_SOURCES ${NEO_CORE_UNIT_TESTS_SOURCES})
1627

1728
target_sources(igdrcl_tests PRIVATE ${NEO_CORE_UNIT_TESTS_SOURCES})

unit_tests/os_interface/windows/CMakeLists.txt

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,6 @@ set(IGDRCL_SRCS_tests_os_interface_windows
4343
${CMAKE_CURRENT_SOURCE_DIR}/mock_registry_reader.cpp
4444
)
4545
if(WIN32)
46-
get_property(NEO_CORE_tests_os_interface_windows GLOBAL PROPERTY NEO_CORE_tests_os_interface_windows)
47-
list(APPEND IGDRCL_SRCS_tests_os_interface_windows ${NEO_CORE_tests_os_interface_windows})
48-
4946
file(GLOB IGDRCL_SRC_tests_wddm_interface "${CMAKE_CURRENT_SOURCE_DIR}/wddm2[0-9]_tests\.cpp")
5047
target_sources(igdrcl_tests PRIVATE
5148
${IGDRCL_SRCS_tests_os_interface_windows}

0 commit comments

Comments
 (0)