Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BoardModulePkg: Added Mock library for BiosIdLib #195

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions Platform/Intel/BoardModulePkg/BoardModulePkg.dec
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@

[Includes]
Include
Test/Mock/Include

[LibraryClasses]
## @libraryclass Provide services to access CMOS area.
Expand Down
32 changes: 32 additions & 0 deletions Platform/Intel/BoardModulePkg/Test/BoardModulePkgHostTest.dsc
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
## @file BoardModulePkgHostTest.dsc
#
# BoardModulePkg DSC file used to build host-based unit tests.
#
# Copyright (c) Microsoft Corporation.
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
##

[Defines]
PLATFORM_NAME = BoardModulePkgHostTest
PLATFORM_GUID = 67275336-A324-4F69-BD38-70A4C7898F06
PLATFORM_VERSION = 0.1
DSC_SPECIFICATION = 0x00010005
OUTPUT_DIRECTORY = Build/BoardModulePkg/HostTest
SUPPORTED_ARCHITECTURES = IA32|X64
BUILD_TARGETS = NOOPT
SKUID_IDENTIFIER = DEFAULT

!include UnitTestFrameworkPkg/UnitTestFrameworkPkgHost.dsc.inc

[LibraryClasses]

[Components]
#
# Build HOST_APPLICATIONs that test the BoardModulePkg
#

#
# Build HOST_APPLICATION Libraries With GoogleTest
#
BoardModulePkg/Test/Mock/Library/GoogleTest/MockBiosIdLib/MockBiosIdLib.inf
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
/** @file MockBiosIdLib.h
Google Test mocks for BiosIdLib
Copyright (c) Microsoft Corporation.
SPDX-License-Identifier: BSD-2-Clause-Patent
**/

#ifndef MOCK_BIOS_ID_LIB_H_
#define MOCK_BIOS_ID_LIB_H_

#include <Library/GoogleTestLib.h>
#include <Library/FunctionMockLib.h>
extern "C" {
#include <Uefi.h>
#include <Pi/PiBootMode.h>
#include <Library/BiosIdLib.h>
}

struct MockBiosIdLib {
MOCK_INTERFACE_DECLARATION (MockBiosIdLib);

MOCK_FUNCTION_DECLARATION (
EFI_STATUS,
GetBiosId,
(
OUT BIOS_ID_IMAGE *BiosIdImage OPTIONAL
)
);

MOCK_FUNCTION_DECLARATION (
EFI_STATUS,
GetBiosVersionDateTime,
(
OUT CHAR16 *BiosVersion, OPTIONAL
OUT CHAR16 *BiosReleaseDate, OPTIONAL
OUT CHAR16 *BiosReleaseTime OPTIONAL
)
);
};

#endif
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
/** @file MockBiosIdLib.cpp
Google Test mocks for BiosIdLib

Copyright (c) Microsoft Corporation.
SPDX-License-Identifier: BSD-2-Clause-Patent
**/

#include <GoogleTest/Library/MockBiosIdLib.h>

MOCK_INTERFACE_DEFINITION (MockBiosIdLib);
MOCK_FUNCTION_DEFINITION (MockBiosIdLib, GetBiosId, 1, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockBiosIdLib, GetBiosVersionDateTime, 3, EFIAPI);
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
## @file MockBiosIdLib.inf
# Google Test mock for BiosIdLib
#
# Copyright (c) Microsoft Corporation.
# SPDX-License-Identifier: BSD-2-Clause-Patent
##

[Defines]
INF_VERSION = 0x00010005
BASE_NAME = MockBiosIdLib
FILE_GUID = FD03FA6D-7447-499C-B3AF-D89450F7739A
MODULE_TYPE = HOST_APPLICATION
VERSION_STRING = 1.0
LIBRARY_CLASS = BiosIdLib
PI_SPECIFICATION_VERSION = 0x0001000A

#
# VALID_ARCHITECTURES = IA32 X64
#

[Sources]
MockBiosIdLib.cpp

[Packages]
MdePkg/MdePkg.dec
UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec
BoardModulePkg/BoardModulePkg.dec

[LibraryClasses]
GoogleTestLib

[BuildOptions]
MSFT:*_*_*_CC_FLAGS = /EHsc
Loading