#pragma once #include "AssetLoading/IAssetLoadingManager.h" #include #include class MockAssetLoadingManager final : public IAssetLoadingManager { Zone* m_zone; std::unique_ptr m_mock_gdt; std::unique_ptr m_context; std::map> m_added_assets; std::multimap> m_available_dependencies; public: MockAssetLoadingManager(Zone* zone, ISearchPath* searchPath); _NODISCARD AssetLoadingContext* GetAssetLoadingContext() const override; XAssetInfoGeneric* AddAsset(asset_type_t assetType, const std::string& assetName, void* asset, std::vector dependencies, std::vector usedScriptStrings) override; XAssetInfoGeneric* LoadDependency(asset_type_t assetType, const std::string& assetName) override; void MockAddAvailableDependency(asset_type_t assetType, std::string assetName, void* asset); XAssetInfoGeneric* MockGetAddedAsset(const std::string& assetName); };