/** @file MockPcdLib.cpp
  Google Test mocks for PcdLib

  Copyright (c) 2024, Intel Corporation. All rights reserved.
  Copyright (c) Microsoft Corporation.
  SPDX-License-Identifier: BSD-2-Clause-Patent
**/

#include <GoogleTest/Library/MockPcdLib.h>

//
// Global Variables that are not const
//

MOCK_INTERFACE_DEFINITION (MockPcdLib);

MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdSetSku, 1, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdGet8, 1, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdGet16, 1, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdGet32, 1, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdGet64, 1, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdGetPtr, 1, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdGetBool, 1, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdGetSize, 1, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdGetEx8, 2, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdGetEx16, 2, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdGetEx32, 2, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdGetEx64, 2, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdGetExPtr, 2, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdGetExBool, 2, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdGetExSize, 2, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdSet8S, 2, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdSet16S, 2, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdSet32S, 2, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdSet64S, 2, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdSetPtrS, 3, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdSetBoolS, 2, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdSetEx8S, 3, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdSetEx16S, 3, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdSetEx32S, 3, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdSetEx64S, 3, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdSetExPtrS, 4, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdSetExBoolS, 3, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdCallbackOnSet, 3, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdCancelCallback, 3, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdGetNextToken, 2, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdGetNextTokenSpace, 1, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPatchPcdSetPtr, 4, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPatchPcdSetPtrS, 4, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPatchPcdSetPtrAndSize, 5, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPatchPcdSetPtrAndSizeS, 5, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdGetInfo, 2, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdGetInfoEx, 3, EFIAPI);
MOCK_FUNCTION_DEFINITION (MockPcdLib, LibPcdGetSku, 0, EFIAPI);
