| /** @file MockShellCommandLib.h | |
| Google Test mocks for ShellCommandLib | |
| Copyright (c) Microsoft Corporation. | |
| SPDX-License-Identifier: BSD-2-Clause-Patent | |
| **/ | |
| #ifndef MOCK_SHELL_COMMAND_LIB_H_ | |
| #define MOCK_SHELL_COMMAND_LIB_H_ | |
| #include <Library/GoogleTestLib.h> | |
| #include <Library/FunctionMockLib.h> | |
| extern "C" { | |
| #include <Uefi.h> | |
| #include <Library/ShellCommandLib.h> | |
| } | |
| struct MockShellCommandLib { | |
| MOCK_INTERFACE_DECLARATION (MockShellCommandLib); | |
| MOCK_FUNCTION_DECLARATION ( | |
| RETURN_STATUS, | |
| ShellCommandRegisterCommandName, | |
| (IN CONST CHAR16 *CommandString, | |
| IN SHELL_RUN_COMMAND CommandHandler, | |
| IN SHELL_GET_MAN_FILENAME GetManFileName, | |
| IN UINT32 ShellMinSupportLevel, | |
| IN CONST CHAR16 *ProfileName, | |
| IN CONST BOOLEAN CanAffectLE, | |
| IN CONST EFI_HII_HANDLE HiiHandle, | |
| IN CONST EFI_STRING_ID ManFormatHelp) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| RETURN_STATUS, | |
| ShellCommandRunCommandHandler, | |
| (IN CONST CHAR16 *CommandString, | |
| IN OUT SHELL_STATUS *RetVal, | |
| IN OUT BOOLEAN *CanAffectLE OPTIONAL) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| CONST CHAR16 *, | |
| ShellCommandGetManFileNameHandler, | |
| (IN CONST CHAR16 *CommandString) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| CONST COMMAND_LIST *, | |
| ShellCommandGetCommandList, | |
| (IN CONST BOOLEAN Sort) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| RETURN_STATUS, | |
| ShellCommandRegisterAlias, | |
| (IN CONST CHAR16 *Command, | |
| IN CONST CHAR16 *Alias) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| CONST ALIAS_LIST *, | |
| ShellCommandGetInitAliasList, | |
| () | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| BOOLEAN, | |
| ShellCommandIsOnAliasList, | |
| (IN CONST CHAR16 *Alias) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| BOOLEAN, | |
| ShellCommandIsCommandOnList, | |
| (IN CONST CHAR16 *CommandString) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| CHAR16 *, | |
| ShellCommandGetCommandHelp, | |
| (IN CONST CHAR16 *CommandString) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| EFI_STATUS, | |
| CommandInit, | |
| () | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| BOOLEAN, | |
| ShellCommandGetEchoState, | |
| () | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| VOID, | |
| ShellCommandSetEchoState, | |
| (IN BOOLEAN State) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| VOID, | |
| ShellCommandRegisterExit, | |
| (IN BOOLEAN ScriptOnly, | |
| IN CONST UINT64 ErrorCode) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| UINT64, | |
| ShellCommandGetExitCode, | |
| () | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| BOOLEAN, | |
| ShellCommandGetExit, | |
| () | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| BOOLEAN, | |
| ShellCommandGetScriptExit, | |
| () | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| SCRIPT_FILE *, | |
| ShellCommandGetCurrentScriptFile, | |
| () | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| SCRIPT_FILE *, | |
| ShellCommandSetNewScript, | |
| (IN SCRIPT_FILE *Script OPTIONAL) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| VOID, | |
| DeleteScriptFileStruct, | |
| (IN SCRIPT_FILE *Script) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| CONST CHAR16 *, | |
| ShellCommandGetProfileList, | |
| () | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| CHAR16 *, | |
| ShellCommandCreateNewMappingName, | |
| (IN CONST SHELL_MAPPING_TYPE Type) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| EFI_STATUS, | |
| ShellCommandConsistMappingInitialize, | |
| (EFI_DEVICE_PATH_PROTOCOL ***Table) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| EFI_STATUS, | |
| ShellCommandConsistMappingUnInitialize, | |
| (EFI_DEVICE_PATH_PROTOCOL **Table) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| CHAR16 *, | |
| ShellCommandConsistMappingGenMappingName, | |
| (IN EFI_DEVICE_PATH_PROTOCOL *DevicePath, | |
| IN EFI_DEVICE_PATH_PROTOCOL **Table) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| SHELL_MAP_LIST *, | |
| ShellCommandFindMapItem, | |
| (IN CONST CHAR16 *MapKey) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| EFI_STATUS, | |
| ShellCommandAddMapItemAndUpdatePath, | |
| (IN CONST CHAR16 *Name, | |
| IN CONST EFI_DEVICE_PATH_PROTOCOL *DevicePath, | |
| IN CONST UINT64 Flags, | |
| IN CONST BOOLEAN Path) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| EFI_STATUS, | |
| ShellCommandCreateInitialMappingsAndPaths, | |
| () | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| EFI_STATUS, | |
| ShellCommandUpdateMapping, | |
| () | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| EFI_FILE_PROTOCOL *, | |
| ConvertShellHandleToEfiFileProtocol, | |
| (IN CONST SHELL_FILE_HANDLE Handle) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| BOOLEAN, | |
| ShellFileHandleRemove, | |
| (IN CONST SHELL_FILE_HANDLE Handle) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| SHELL_FILE_HANDLE, | |
| ConvertEfiFileProtocolToShellHandle, | |
| (IN CONST EFI_FILE_PROTOCOL *Handle, | |
| IN CONST CHAR16 *Path) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| CONST CHAR16 *, | |
| ShellFileHandleGetPath, | |
| (IN CONST SHELL_FILE_HANDLE Handle) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| BOOLEAN, | |
| ShellFileHandleEof, | |
| (IN SHELL_FILE_HANDLE Handle) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| VOID, | |
| FreeBufferList, | |
| (IN BUFFER_LIST *List) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| VOID, | |
| DumpHex, | |
| (IN UINTN Indent, | |
| IN UINTN Offset, | |
| IN UINTN DataSize, | |
| IN VOID *UserData) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| CHAR16 *, | |
| CatSDumpHex, | |
| (IN CHAR16 *Buffer, | |
| IN UINTN Indent, | |
| IN UINTN Offset, | |
| IN UINTN DataSize, | |
| IN VOID *UserData) | |
| ); | |
| MOCK_FUNCTION_DECLARATION ( | |
| EFI_STATUS, | |
| ShellSortFileList, | |
| (IN OUT EFI_SHELL_FILE_INFO **FileList, | |
| OUT EFI_SHELL_FILE_INFO **Duplicates OPTIONAL, | |
| IN SHELL_SORT_FILE_LIST Order) | |
| ); | |
| }; | |
| #endif |