Skip to content

Commit 5defa30

Browse files
Add MockIpmiBootOptionLib for GoogleTest (#369)
1 parent 6442205 commit 5defa30

4 files changed

Lines changed: 84 additions & 0 deletions

File tree

IpmiFeaturePkg/Test/IpmiFeaturePkgHostTest.dsc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,3 +67,4 @@
6767
IpmiFeaturePkg/Test/Mock/Library/GoogleTest/MockIpmiSelLib/MockIpmiSelLib.inf
6868
IpmiFeaturePkg/Test/Mock/Library/GoogleTest/MockIpmiCommandLib/MockIpmiCommandLib.inf
6969
IpmiFeaturePkg/Test/Mock/Library/GoogleTest/MockIpmiBaseLib/MockIpmiBaseLib.inf
70+
IpmiFeaturePkg/Test/Mock/Library/GoogleTest/MockIpmiBootOptionLib/MockIpmiBootOptionLib.inf
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
/** @file MockIpmiBootOptionLib.h
2+
Google Test mocks for IpmiBootOptionLib
3+
4+
Copyright (c) Microsoft Corporation
5+
SPDX-License-Identifier: BSD-2-Clause-Patent
6+
**/
7+
8+
#ifndef MOCK_IPMI_BOOT_OPTION_LIB_H_
9+
#define MOCK_IPMI_BOOT_OPTION_LIB_H_
10+
11+
#include <Library/GoogleTestLib.h>
12+
#include <Library/FunctionMockLib.h>
13+
extern "C" {
14+
#include <Uefi.h>
15+
#include <Library/IpmiBootOptionLib.h>
16+
}
17+
18+
struct MockIpmiBootOptionLib {
19+
MOCK_INTERFACE_DECLARATION (MockIpmiBootOptionLib);
20+
21+
MOCK_FUNCTION_DECLARATION (
22+
EFI_STATUS,
23+
IpmiGetBootDevice,
24+
(
25+
OUT IPMI_BOOT_OPTION_SELECTOR *Selector
26+
)
27+
);
28+
29+
MOCK_FUNCTION_DECLARATION (
30+
EFI_STATUS,
31+
IpmiGetCmosClearOption,
32+
(
33+
OUT BOOLEAN *ClearCmos
34+
)
35+
);
36+
};
37+
38+
#endif
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
/** @file MockIpmiBootOptionLib.cpp
2+
Google Test mocks for IpmiBootOptionLib
3+
4+
Copyright (c) Microsoft Corporation
5+
SPDX-License-Identifier: BSD-2-Clause-Patent
6+
**/
7+
8+
#include <GoogleTest/Library/MockIpmiBootOptionLib.h>
9+
10+
MOCK_INTERFACE_DEFINITION (MockIpmiBootOptionLib);
11+
MOCK_FUNCTION_DEFINITION (MockIpmiBootOptionLib, IpmiGetBootDevice, 1, EFIAPI);
12+
MOCK_FUNCTION_DEFINITION (MockIpmiBootOptionLib, IpmiGetCmosClearOption, 1, EFIAPI);
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
## @file MockIpmiBootOptionLib.inf
2+
# Google Test mocks for IpmiBootOptionLib
3+
#
4+
# Copyright (c) Microsoft Corporation
5+
# SPDX-License-Identifier: BSD-2-Clause-Patent
6+
##
7+
8+
[Defines]
9+
INF_VERSION = 0x00010005
10+
BASE_NAME = MockIpmiBootOptionLib
11+
FILE_GUID = 5D6E7F8A-9B0C-1D2E-3F4A-5B6C7D8E9F0A
12+
MODULE_TYPE = HOST_APPLICATION
13+
VERSION_STRING = 1.0
14+
LIBRARY_CLASS = IpmiBootOptionLib
15+
PI_SPECIFICATION_VERSION = 0x0001000A
16+
17+
#
18+
# VALID_ARCHITECTURES = IA32 X64
19+
#
20+
21+
[Sources]
22+
MockIpmiBootOptionLib.cpp
23+
24+
[Packages]
25+
MdePkg/MdePkg.dec
26+
UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec
27+
IpmiFeaturePkg/IpmiFeaturePkg.dec
28+
29+
[LibraryClasses]
30+
GoogleTestLib
31+
32+
[BuildOptions]
33+
MSFT:*_*_*_CC_FLAGS = /EHsc

0 commit comments

Comments
 (0)