ICryPakMock.h 5.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. /*
  2. * Copyright (c) Contributors to the Open 3D Engine Project.
  3. * For complete copyright and license terms please see the LICENSE at the root of this distribution.
  4. *
  5. * SPDX-License-Identifier: Apache-2.0 OR MIT
  6. *
  7. */
  8. #pragma once
  9. #include <AzTest/AzTest.h>
  10. #include <AzCore/IO/FileIO.h>
  11. #include <AzCore/IO/Path/Path.h>
  12. #include <AzFramework/Archive/ArchiveVars.h>
  13. #include <AzFramework/Archive/INestedArchive.h>
  14. #include <AzFramework/Archive/IArchive.h>
  15. #include <CryCommon/platform.h>
  16. struct CryPakMock
  17. : AZ::IO::IArchive
  18. {
  19. MOCK_METHOD5(AdjustFileName, const char*(AZStd::string_view src, char* dst, size_t dstSize, uint32_t nFlags, bool skipMods));
  20. MOCK_METHOD1(Init, bool(AZStd::string_view szBasePath));
  21. MOCK_METHOD0(Release, void());
  22. MOCK_METHOD4(OpenPack, bool(AZStd::string_view, AZStd::intrusive_ptr<AZ::IO::MemoryBlock>, AZ::IO::FixedMaxPathString*, bool));
  23. MOCK_METHOD5(OpenPack, bool(AZStd::string_view, AZStd::string_view, AZStd::intrusive_ptr<AZ::IO::MemoryBlock>, AZ::IO::FixedMaxPathString*, bool));
  24. MOCK_METHOD2(OpenPacks, bool(AZStd::string_view pWildcard, AZStd::vector<AZ::IO::FixedMaxPathString>* pFullPaths));
  25. MOCK_METHOD3(OpenPacks, bool(AZStd::string_view pBindingRoot, AZStd::string_view pWildcard, AZStd::vector<AZ::IO::FixedMaxPathString>* pFullPaths));
  26. MOCK_METHOD1(ClosePack, bool(AZStd::string_view pName));
  27. MOCK_METHOD1(ClosePacks, bool(AZStd::string_view pWildcard));
  28. MOCK_METHOD1(FindPacks, bool(AZStd::string_view pWildcardIn));
  29. MOCK_METHOD2(SetPacksAccessible, bool(bool bAccessible, AZStd::string_view pWildcard));
  30. MOCK_METHOD2(SetPackAccessible, bool(bool bAccessible, AZStd::string_view pName));
  31. MOCK_METHOD1(SetLocalizationFolder, void(AZStd::string_view sLocalizationFolder));
  32. MOCK_CONST_METHOD0(GetLocalizationFolder, const char*());
  33. MOCK_CONST_METHOD0(GetLocalizationRoot, const char*());
  34. MOCK_METHOD2(FOpen, AZ::IO::HandleType(AZStd::string_view pName, const char* mode));
  35. MOCK_METHOD2(FGetCachedFileData, void*(AZ::IO::HandleType handle, size_t& nFileSize));
  36. MOCK_METHOD3(FRead, size_t(void* data, size_t bytesToRead, AZ::IO::HandleType handle));
  37. MOCK_METHOD3(FWrite, size_t(const void* data, size_t bytesToWrite, AZ::IO::HandleType handle));
  38. MOCK_METHOD1(FGetSize, size_t(AZ::IO::HandleType f));
  39. MOCK_METHOD2(FGetSize, size_t(AZStd::string_view pName, bool bAllowUseFileSystem));
  40. MOCK_METHOD1(IsInPak, bool(AZ::IO::HandleType handle));
  41. MOCK_METHOD1(RemoveFile, bool(AZStd::string_view pName));
  42. MOCK_METHOD1(RemoveDir, bool(AZStd::string_view pName));
  43. MOCK_METHOD1(IsAbsPath, bool(AZStd::string_view pPath));
  44. MOCK_METHOD3(FSeek, size_t(AZ::IO::HandleType handle, uint64_t seek, int mode));
  45. MOCK_METHOD1(FTell, uint64_t(AZ::IO::HandleType handle));
  46. MOCK_METHOD1(FClose, int(AZ::IO::HandleType handle));
  47. MOCK_METHOD1(FEof, int(AZ::IO::HandleType handle));
  48. MOCK_METHOD1(FFlush, int(AZ::IO::HandleType handle));
  49. MOCK_METHOD1(PoolMalloc, void*(size_t size));
  50. MOCK_METHOD1(PoolFree, void(void* p));
  51. MOCK_METHOD2(FindFirst, AZ::IO::ArchiveFileIterator(AZStd::string_view pDir, AZ::IO::FileSearchLocation));
  52. MOCK_METHOD1(FindNext, AZ::IO::ArchiveFileIterator(AZ::IO::ArchiveFileIterator handle));
  53. MOCK_METHOD1(FindClose, bool(AZ::IO::ArchiveFileIterator));
  54. MOCK_METHOD1(GetModificationTime, AZ::IO::IArchive::FileTime(AZ::IO::HandleType f));
  55. MOCK_METHOD2(IsFileExist, bool(AZStd::string_view sFilename, AZ::IO::FileSearchLocation));
  56. MOCK_METHOD1(IsFolder, bool(AZStd::string_view sPath));
  57. MOCK_METHOD1(GetFileSizeOnDisk, AZ::IO::IArchive::SignedFileSize(AZStd::string_view filename));
  58. MOCK_METHOD4(OpenArchive, AZStd::intrusive_ptr<AZ::IO::INestedArchive> (AZStd::string_view szPath, AZStd::string_view bindRoot, uint32_t nFlags, AZStd::intrusive_ptr<AZ::IO::MemoryBlock> pData));
  59. MOCK_METHOD1(GetFileArchivePath, AZ::IO::PathView (AZ::IO::HandleType f));
  60. MOCK_METHOD5(RawCompress, int(const void* pUncompressed, size_t* pDestSize, void* pCompressed, size_t nSrcSize, int nLevel));
  61. MOCK_METHOD4(RawUncompress, int(void* pUncompressed, size_t* pDestSize, const void* pCompressed, size_t nSrcSize));
  62. MOCK_METHOD1(RecordFileOpen, void(ERecordFileOpenList eList));
  63. MOCK_METHOD2(RecordFile, void(AZ::IO::HandleType in, AZStd::string_view szFilename));
  64. MOCK_METHOD1(GetResourceList, AZ::IO::IResourceList * (ERecordFileOpenList eList));
  65. MOCK_METHOD2(SetResourceList, void(ERecordFileOpenList eList, AZ::IO::IResourceList * pResourceList));
  66. MOCK_METHOD0(GetRecordFileOpenList, AZ::IO::IArchive::ERecordFileOpenList());
  67. MOCK_METHOD1(RegisterFileAccessSink, void(AZ::IO::IArchiveFileAccessSink * pSink));
  68. MOCK_METHOD1(UnregisterFileAccessSink, void(AZ::IO::IArchiveFileAccessSink * pSink));
  69. MOCK_METHOD1(DisableRuntimeFileAccess, void(bool status));
  70. MOCK_METHOD2(DisableRuntimeFileAccess, bool(bool status, AZStd::thread_id threadId));
  71. MOCK_CONST_METHOD0(GetPakPriority, AZ::IO::FileSearchPriority());
  72. MOCK_CONST_METHOD1(GetFileOffsetOnMedia, uint64_t(AZStd::string_view szName));
  73. MOCK_CONST_METHOD1(GetFileMediaType, EStreamSourceMediaType(AZStd::string_view szName));
  74. MOCK_METHOD0(GetLevelPackOpenEvent, LevelPackOpenEvent*());
  75. MOCK_METHOD0(GetLevelPackCloseEvent, LevelPackCloseEvent*());
  76. };