Move mock method macros to separated header

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
This commit is contained in:
Mateusz Jablonski
2021-11-09 16:59:53 +00:00
committed by Compute-Runtime-Automation
parent df6829f361
commit 1bb7e50d49
3 changed files with 42 additions and 52 deletions

View File

@@ -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; \
}