Files
compute-runtime/shared/test/common/test_macros/mock_method_macros.h
Mateusz Jablonski c20ec6c148 Remove gmock from mock_module
Related-To: NEO-4914
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-11-10 15:26:23 +01:00

41 lines
2.0 KiB
C

/*
* 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_CONST_NOBASE(funcName, retType, defaultReturn, funcParams) \
retType funcName##Result = defaultReturn; \
retType funcName funcParams const override { \
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; \
}