/* * Copyright (c) Contributors to the Open 3D Engine Project. * For complete copyright and license terms please see the LICENSE at the root of this distribution. * * SPDX-License-Identifier: Apache-2.0 OR MIT * */ #pragma once #include #include namespace O3DE::ProjectManager { class MockPythonBindings : public PythonBindings { public: // Python MOCK_METHOD0(PythonStarted, bool()); MOCK_METHOD0(StopPython, bool()); // Engine MOCK_METHOD0(GetEngineInfo, AZ::Outcome()); MOCK_METHOD1(GetEngineInfo, AZ::Outcome(const QString&)); MOCK_METHOD2(SetEngineInfo, DetailedOutcome(const EngineInfo&, bool force)); // Gem MOCK_METHOD3(CreateGem, AZ::Outcome(const QString&, const GemInfo&, bool)); MOCK_METHOD2(GetGemInfo, AZ::Outcome(const QString&, const QString&)); MOCK_METHOD1(GetAllGemInfos, AZ::Outcome, AZStd::string>(const QString&)); MOCK_CONST_METHOD2(GetEnabledGems, AZ::Outcome, AZStd::string>(const QString&, bool includeDependencies)); MOCK_METHOD2(RegisterGem, AZ::Outcome(const QString&, const QString&)); MOCK_METHOD2(UnregisterGem, AZ::Outcome(const QString&, const QString&)); // Project MOCK_METHOD3(CreateProject, AZ::Outcome(const QString&, const ProjectInfo&, bool)); MOCK_METHOD1(GetProject, AZ::Outcome(const QString&)); MOCK_METHOD0(GetProjects, AZ::Outcome>()); MOCK_METHOD2(AddProject, DetailedOutcome(const QString&, bool)); MOCK_METHOD1(RemoveProject, DetailedOutcome(const QString&)); MOCK_METHOD1(UpdateProject, AZ::Outcome(const ProjectInfo&)); MOCK_METHOD3(GetIncompatibleProjectGems, AZ::Outcome(const QStringList&, const QStringList&, const QString&)); MOCK_METHOD2(GetProjectEngineIncompatibleObjects, AZ::Outcome(const QString&, const QString&)); MOCK_METHOD4(AddGemsToProject, DetailedOutcome(const QStringList&, const QStringList&, const QString&, bool)); MOCK_METHOD2(RemoveGemFromProject, AZ::Outcome(const QString&, const QString&)); MOCK_METHOD0(RemoveInvalidProjects, bool()); // ProjectTemplate MOCK_METHOD0(GetProjectTemplates, AZ::Outcome>()); MOCK_CONST_METHOD1(GetProjectTemplatesForAllRepos, AZ::Outcome>(bool)); MOCK_METHOD0(GetGemTemplates, AZ::Outcome>()); // Gem Repos MOCK_METHOD2(RefreshGemRepo, AZ::Outcome(const QString&, bool)); MOCK_METHOD1(RefreshAllGemRepos, bool(bool)); MOCK_METHOD1(AddGemRepo, DetailedOutcome(const QString&)); MOCK_METHOD1(RemoveGemRepo, bool(const QString&)); MOCK_METHOD0(GetAllGemRepoInfos, AZ::Outcome, AZStd::string>()); MOCK_METHOD2(GetGemInfosForRepo, AZ::Outcome, AZStd::string>(const QString&, bool)); MOCK_METHOD2(GetGemInfosForAllRepos, AZ::Outcome, AZStd::string>(const QString&, bool)); MOCK_METHOD4(DownloadGem, DetailedOutcome(const QString&, const QString&, std::function, bool)); MOCK_METHOD0(CancelDownload, void()); MOCK_METHOD2(IsGemUpdateAvaliable, bool(const QString&, const QString&)); // Errors MOCK_METHOD1(AddErrorString, void(AZStd::string)); }; } // namespace UnitTest