From 1bb7e50d4991414f9271fc59a7520b098523f33c Mon Sep 17 00:00:00 2001 From: Mateusz Jablonski Date: Tue, 9 Nov 2021 16:59:53 +0000 Subject: [PATCH] Move mock method macros to separated header Signed-off-by: Mateusz Jablonski --- .../core/test/unit_tests/mocks/mock_cmdlist.h | 30 ++-------------- .../unit_tests/mocks/mock_driver_handle.h | 30 ++++------------ .../common/test_macros/mock_method_macros.h | 34 +++++++++++++++++++ 3 files changed, 42 insertions(+), 52 deletions(-) create mode 100644 shared/test/common/test_macros/mock_method_macros.h diff --git a/level_zero/core/test/unit_tests/mocks/mock_cmdlist.h b/level_zero/core/test/unit_tests/mocks/mock_cmdlist.h index c86a956ff6..11dbd6556c 100644 --- a/level_zero/core/test/unit_tests/mocks/mock_cmdlist.h +++ b/level_zero/core/test/unit_tests/mocks/mock_cmdlist.h @@ -6,6 +6,8 @@ */ #pragma once +#include "shared/test/common/test_macros/mock_method_macros.h" + #include "level_zero/core/source/cmdlist/cmdlist_hw.h" #include "level_zero/core/source/cmdlist/cmdlist_hw_immediate.h" #include "level_zero/core/test/unit_tests/mock.h" @@ -92,32 +94,6 @@ struct WhiteBox<::L0::CommandList> : public ::L0::CommandListImp { using CommandList = WhiteBox<::L0::CommandList>; -#define ADDMETHOD_NOBASE(funcName, retType, defaultReturn, funcParams) \ - retType funcName##Result = defaultReturn; \ - uint32_t funcName##Called = 0u; \ - retType funcName funcParams override { \ - funcName##Called++; \ - return funcName##Result; \ - } - -#define ADDMETHOD_NOBASE_VOIDRETURN(funcName, funcParams) \ - uint32_t funcName##Called = 0u; \ - void funcName funcParams override { \ - funcName##Called++; \ - } - -#define ADDMETHOD(funcName, retType, callBase, defaultReturn, funcParams, invokeParams) \ - retType funcName##Result = defaultReturn; \ - bool funcName##CallBase = callBase; \ - uint32_t funcName##Called = 0u; \ - retType funcName funcParams override { \ - funcName##Called++; \ - if (funcName##CallBase) { \ - return BaseClass::funcName invokeParams; \ - } \ - return funcName##Result; \ - } - struct MockCommandList : public CommandList { using BaseClass = CommandList; @@ -355,7 +331,5 @@ struct MockCommandList : public CommandList { uint8_t *batchBuffer = nullptr; NEO::GraphicsAllocation *mockAllocation = nullptr; }; -#undef ADDMETHOD -#undef ADDMETHOD_NOBASE } // namespace ult } // namespace L0 diff --git a/level_zero/core/test/unit_tests/mocks/mock_driver_handle.h b/level_zero/core/test/unit_tests/mocks/mock_driver_handle.h index 318f21a1ec..4e518ec0f9 100644 --- a/level_zero/core/test/unit_tests/mocks/mock_driver_handle.h +++ b/level_zero/core/test/unit_tests/mocks/mock_driver_handle.h @@ -6,6 +6,8 @@ */ #pragma once +#include "shared/test/common/test_macros/mock_method_macros.h" + #include "level_zero/core/source/driver/driver_handle_imp.h" #include "level_zero/core/test/unit_tests/mock.h" #include "level_zero/core/test/unit_tests/mocks/mock_device.h" @@ -21,14 +23,6 @@ struct WhiteBox<::L0::DriverHandle> : public ::L0::DriverHandleImp { }; using DriverHandle = WhiteBox<::L0::DriverHandle>; -#define ADDMETHOD_NOBASE(funcName, retType, defaultReturn, funcParams) \ - retType funcName##Result = defaultReturn; \ - uint32_t funcName##Called = 0u; \ - retType funcName funcParams override { \ - funcName##Called++; \ - return funcName##Result; \ - } - template <> struct Mock : public DriverHandleImp { Mock(); @@ -37,6 +31,10 @@ struct Mock : public DriverHandleImp { ADDMETHOD_NOBASE(getProperties, ze_result_t, ZE_RESULT_SUCCESS, (ze_driver_properties_t * properties)) ADDMETHOD_NOBASE(getApiVersion, ze_result_t, ZE_RESULT_SUCCESS, (ze_api_version_t * version)) ADDMETHOD_NOBASE(getIPCProperties, ze_result_t, ZE_RESULT_SUCCESS, (ze_driver_ipc_properties_t * pIPCProperties)) + ADDMETHOD_NOBASE(importExternalPointer, ze_result_t, ZE_RESULT_ERROR_UNSUPPORTED_FEATURE, (void *ptr, size_t size)) + ADDMETHOD_NOBASE(releaseImportedPointer, ze_result_t, ZE_RESULT_ERROR_UNSUPPORTED_FEATURE, (void *ptr)) + ADDMETHOD_NOBASE(getHostPointerBaseAddress, ze_result_t, ZE_RESULT_ERROR_UNSUPPORTED_FEATURE, (void *ptr, void **baseAddress)) + ADDMETHOD_NOBASE(findHostPointerAllocation, NEO::GraphicsAllocation *, nullptr, (void *ptr, size_t size, uint32_t rootDeviceIndex)) uint32_t num_devices = 1; Mock device; @@ -54,21 +52,6 @@ struct Mock : public DriverHandleImp { size_t alignment, void **ptr); - ze_result_t importExternalPointer(void *ptr, size_t size) override { - return ZE_RESULT_ERROR_UNSUPPORTED_FEATURE; - } - - ze_result_t releaseImportedPointer(void *ptr) override { - return ZE_RESULT_ERROR_UNSUPPORTED_FEATURE; - } - - ze_result_t getHostPointerBaseAddress(void *ptr, void **baseAddress) override { - return ZE_RESULT_ERROR_UNSUPPORTED_FEATURE; - } - - NEO::GraphicsAllocation *findHostPointerAllocation(void *ptr, size_t size, uint32_t rootDeviceIndex) override { - return nullptr; - } NEO::GraphicsAllocation *getDriverSystemMemoryAllocation(void *ptr, size_t size, uint32_t rootDeviceIndex, @@ -83,6 +66,5 @@ struct Mock : public DriverHandleImp { return nullptr; } }; -#undef ADDMETHOD_NOBASE } // namespace ult } // namespace L0 diff --git a/shared/test/common/test_macros/mock_method_macros.h b/shared/test/common/test_macros/mock_method_macros.h new file mode 100644 index 0000000000..18bf6718c9 --- /dev/null +++ b/shared/test/common/test_macros/mock_method_macros.h @@ -0,0 +1,34 @@ +/* + * Copyright (C) 2021 Intel Corporation + * + * SPDX-License-Identifier: MIT + * + */ + +#pragma once + +#define ADDMETHOD_NOBASE(funcName, retType, defaultReturn, funcParams) \ + retType funcName##Result = defaultReturn; \ + uint32_t funcName##Called = 0u; \ + retType funcName funcParams override { \ + funcName##Called++; \ + return funcName##Result; \ + } + +#define ADDMETHOD_NOBASE_VOIDRETURN(funcName, funcParams) \ + uint32_t funcName##Called = 0u; \ + void funcName funcParams override { \ + funcName##Called++; \ + } + +#define ADDMETHOD(funcName, retType, callBase, defaultReturn, funcParams, invokeParams) \ + retType funcName##Result = defaultReturn; \ + bool funcName##CallBase = callBase; \ + uint32_t funcName##Called = 0u; \ + retType funcName funcParams override { \ + funcName##Called++; \ + if (funcName##CallBase) { \ + return BaseClass::funcName invokeParams; \ + } \ + return funcName##Result; \ + }