-
Notifications
You must be signed in to change notification settings - Fork 123
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Added MockServiceBinding and Add mock functions under MockUefiBootSer…
…vicesTableLib, MockUefiLib and MockUefiDevicePathLib Signed-off-by: TsunFeng <v-tshuang@microsoft.com>
- Loading branch information
Showing
8 changed files
with
279 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
45 changes: 45 additions & 0 deletions
45
MdePkg/Test/Mock/Include/GoogleTest/Protocol/MockServiceBinding.h
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
/** @file MockServiceBinding.h | ||
This file declares a mock of Service Binding Protocol. | ||
Copyright (c) Microsoft Corporation. | ||
SPDX-License-Identifier: BSD-2-Clause-Patent | ||
**/ | ||
|
||
#ifndef MOCK_SERVICE_BINDING_H | ||
#define MOCK_SERVICE_BINDING_H | ||
|
||
#include <Library/GoogleTestLib.h> | ||
#include <Library/FunctionMockLib.h> | ||
|
||
extern "C" { | ||
#include <Uefi.h> | ||
#include <Protocol/ServiceBinding.h> | ||
} | ||
|
||
struct MockServiceBinding { | ||
MOCK_INTERFACE_DECLARATION (MockServiceBinding); | ||
|
||
MOCK_FUNCTION_DECLARATION ( | ||
EFI_STATUS, | ||
CreateChild, | ||
( | ||
IN EFI_SERVICE_BINDING_PROTOCOL *This, | ||
IN OUT EFI_HANDLE *ChildHandle | ||
) | ||
); | ||
|
||
MOCK_FUNCTION_DECLARATION ( | ||
EFI_STATUS, | ||
DestroyChild, | ||
( | ||
IN EFI_SERVICE_BINDING_PROTOCOL *This, | ||
IN EFI_HANDLE ChildHandle | ||
) | ||
); | ||
}; | ||
|
||
extern "C" { | ||
extern EFI_SERVICE_BINDING_PROTOCOL *gServiceBindingProtocol; | ||
} | ||
|
||
#endif // MOCK_SERVICE_BINDING_H |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
21 changes: 21 additions & 0 deletions
21
MdePkg/Test/Mock/Library/GoogleTest/Protocol/MockServiceBinding.cpp
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
/** @file MockServiceBinding.cpp | ||
Google Test mock for Service Binding Protocol. | ||
Copyright (c) Microsoft Corporation. | ||
SPDX-License-Identifier: BSD-2-Clause-Patent | ||
**/ | ||
|
||
#include <GoogleTest/Protocol/MockServiceBinding.h> | ||
|
||
MOCK_INTERFACE_DEFINITION (MockServiceBinding); | ||
MOCK_FUNCTION_DEFINITION (MockServiceBinding, CreateChild, 2, EFIAPI); | ||
MOCK_FUNCTION_DEFINITION (MockServiceBinding, DestroyChild, 2, EFIAPI); | ||
|
||
EFI_SERVICE_BINDING_PROTOCOL SERVICE_BINDING_PROTOCOL_INSTANCE = { | ||
CreateChild, // EFI_SERVICE_BINDING_CREATE_CHILD | ||
DestroyChild, // EFI_SERVICE_BINDING_DESTROY_CHILD | ||
}; | ||
|
||
extern "C" { | ||
EFI_SERVICE_BINDING_PROTOCOL *gServiceBindingProtocol = &SERVICE_BINDING_PROTOCOL_INSTANCE; | ||
} |