From 7d5ccf76c6eb13addb07b8bdd63e8ebc173ac2a7 Mon Sep 17 00:00:00 2001 From: Bhavani Subramanian Date: Fri, 3 Jan 2025 09:04:17 -0800 Subject: [PATCH] Added MockIpmiBaseLib --- .../Test/IpmiFeaturePkgHostTest.dsc | 1 + .../GoogleTest/Library/MockIpmiBaseLib.h | 44 +++++++++++++++++++ .../MockIpmiBaseLib/MockIpmiBaseLib.cpp | 12 +++++ .../MockIpmiBaseLib/MockIpmiBaseLib.inf | 33 ++++++++++++++ 4 files changed, 90 insertions(+) create mode 100644 IpmiFeaturePkg/Test/Mock/Include/GoogleTest/Library/MockIpmiBaseLib.h create mode 100644 IpmiFeaturePkg/Test/Mock/Library/GoogleTest/MockIpmiBaseLib/MockIpmiBaseLib.cpp create mode 100644 IpmiFeaturePkg/Test/Mock/Library/GoogleTest/MockIpmiBaseLib/MockIpmiBaseLib.inf diff --git a/IpmiFeaturePkg/Test/IpmiFeaturePkgHostTest.dsc b/IpmiFeaturePkg/Test/IpmiFeaturePkgHostTest.dsc index 885e4d6..cf5eb4a 100644 --- a/IpmiFeaturePkg/Test/IpmiFeaturePkgHostTest.dsc +++ b/IpmiFeaturePkg/Test/IpmiFeaturePkgHostTest.dsc @@ -66,3 +66,4 @@ # IpmiFeaturePkg/Test/Mock/Library/GoogleTest/MockIpmiSelLib/MockIpmiSelLib.inf IpmiFeaturePkg/Test/Mock/Library/GoogleTest/MockIpmiCommandLib/MockIpmiCommandLib.inf + IpmiFeaturePkg/Test/Mock/Library/GoogleTest/MockIpmiBaseLib/MockIpmiBaseLib.inf diff --git a/IpmiFeaturePkg/Test/Mock/Include/GoogleTest/Library/MockIpmiBaseLib.h b/IpmiFeaturePkg/Test/Mock/Include/GoogleTest/Library/MockIpmiBaseLib.h new file mode 100644 index 0000000..c3c45c4 --- /dev/null +++ b/IpmiFeaturePkg/Test/Mock/Include/GoogleTest/Library/MockIpmiBaseLib.h @@ -0,0 +1,44 @@ +/** @file MockIpmiBaseLib.h + Google Test mocks for IpmiBaseLib + + Copyright (c) Microsoft Corporation + SPDX-License-Identifier: BSD-2-Clause-Patent +**/ + +#ifndef MOCK_IPMI_BASE_LIB_H_ +#define MOCK_IPMI_BASE_LIB_H_ + +#include +#include +extern "C" { + #include + #include +} + +struct MockIpmiBaseLib { + MOCK_INTERFACE_DECLARATION (MockIpmiBaseLib); + + MOCK_FUNCTION_DECLARATION ( + EFI_STATUS, + IpmiSubmitCommand, + ( + IN UINT8 NetFunction, + IN UINT8 Command, + IN UINT8 *CommandData, + IN UINT32 CommandDataSize, + OUT UINT8 *ResponseData, + IN OUT UINT32 *ResponseDataSize + ) + ); + + MOCK_FUNCTION_DECLARATION ( + EFI_STATUS, + GetBmcStatus, + ( + OUT BMC_STATUS *BmcStatus, + OUT SM_COM_ADDRESS *ComAddress + ) + ); +}; + +#endif diff --git a/IpmiFeaturePkg/Test/Mock/Library/GoogleTest/MockIpmiBaseLib/MockIpmiBaseLib.cpp b/IpmiFeaturePkg/Test/Mock/Library/GoogleTest/MockIpmiBaseLib/MockIpmiBaseLib.cpp new file mode 100644 index 0000000..94c7add --- /dev/null +++ b/IpmiFeaturePkg/Test/Mock/Library/GoogleTest/MockIpmiBaseLib/MockIpmiBaseLib.cpp @@ -0,0 +1,12 @@ +/** @file MockIpmiBaseLib.cpp + Google Test mocks for IpmiBaseLib + + Copyright (c) Microsoft Corporation + SPDX-License-Identifier: BSD-2-Clause-Patent +**/ + +#include + +MOCK_INTERFACE_DEFINITION (MockIpmiBaseLib); +MOCK_FUNCTION_DEFINITION (MockIpmiBaseLib, IpmiSubmitCommand, 6, EFIAPI); +MOCK_FUNCTION_DEFINITION (MockIpmiBaseLib, GetBmcStatus, 2, EFIAPI); diff --git a/IpmiFeaturePkg/Test/Mock/Library/GoogleTest/MockIpmiBaseLib/MockIpmiBaseLib.inf b/IpmiFeaturePkg/Test/Mock/Library/GoogleTest/MockIpmiBaseLib/MockIpmiBaseLib.inf new file mode 100644 index 0000000..96c6b11 --- /dev/null +++ b/IpmiFeaturePkg/Test/Mock/Library/GoogleTest/MockIpmiBaseLib/MockIpmiBaseLib.inf @@ -0,0 +1,33 @@ +## @file MockIpmiBaseLib.inf +# Google Test mocks for IpmiBaseLib +# +# Copyright (c) Microsoft Corporation +# SPDX-License-Identifier: BSD-2-Clause-Patent +## + +[Defines] + INF_VERSION = 0x00010005 + BASE_NAME = MockIpmiBaseLib + FILE_GUID = DF7383B2-18E4-4822-B88D-6D0EC5922BBC + MODULE_TYPE = HOST_APPLICATION + VERSION_STRING = 1.0 + LIBRARY_CLASS = IpmiBaseLib + PI_SPECIFICATION_VERSION = 0x0001000A + +# +# VALID_ARCHITECTURES = IA32 X64 +# + +[Sources] + MockIpmiBaseLib.cpp + +[Packages] + MdePkg/MdePkg.dec + UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec + IpmiFeaturePkg/IpmiFeaturePkg.dec + +[LibraryClasses] + GoogleTestLib + +[BuildOptions] + MSFT:*_*_*_CC_FLAGS = /EHsc