MockPythonBindings.h 3.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  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 <PythonBindings.h>
  10. #include <gmock/gmock.h>
  11. namespace O3DE::ProjectManager
  12. {
  13. class MockPythonBindings : public PythonBindings
  14. {
  15. public:
  16. // Python
  17. MOCK_METHOD0(PythonStarted, bool());
  18. MOCK_METHOD0(StopPython, bool());
  19. // Engine
  20. MOCK_METHOD0(GetEngineInfo, AZ::Outcome<EngineInfo>());
  21. MOCK_METHOD1(GetEngineInfo, AZ::Outcome<EngineInfo>(const QString&));
  22. MOCK_METHOD2(SetEngineInfo, DetailedOutcome(const EngineInfo&, bool force));
  23. // Gem
  24. MOCK_METHOD3(CreateGem, AZ::Outcome<GemInfo>(const QString&, const GemInfo&, bool));
  25. MOCK_METHOD2(GetGemInfo, AZ::Outcome<GemInfo>(const QString&, const QString&));
  26. MOCK_METHOD0(GetEngineGemInfos, AZ::Outcome<QVector<GemInfo>, AZStd::string>());
  27. MOCK_METHOD1(GetAllGemInfos, AZ::Outcome<QVector<GemInfo>, AZStd::string>(const QString&));
  28. MOCK_CONST_METHOD2(GetEnabledGems, AZ::Outcome<QHash<QString, QString>, AZStd::string>(const QString&, bool includeDependencies));
  29. MOCK_METHOD2(RegisterGem, AZ::Outcome<void, AZStd::string>(const QString&, const QString&));
  30. MOCK_METHOD2(UnregisterGem, AZ::Outcome<void, AZStd::string>(const QString&, const QString&));
  31. // Project
  32. MOCK_METHOD3(CreateProject, AZ::Outcome<ProjectInfo>(const QString&, const ProjectInfo&, bool));
  33. MOCK_METHOD1(GetProject, AZ::Outcome<ProjectInfo>(const QString&));
  34. MOCK_METHOD0(GetProjects, AZ::Outcome<QVector<ProjectInfo>>());
  35. MOCK_METHOD1(AddProject, DetailedOutcome(const QString&));
  36. MOCK_METHOD1(RemoveProject, DetailedOutcome(const QString&));
  37. MOCK_METHOD1(UpdateProject, AZ::Outcome<void, AZStd::string>(const ProjectInfo&));
  38. MOCK_METHOD2(AddGemToProject, AZ::Outcome<void, AZStd::string>(const QString&, const QString&));
  39. MOCK_METHOD2(RemoveGemFromProject, AZ::Outcome<void, AZStd::string>(const QString&, const QString&));
  40. MOCK_METHOD0(RemoveInvalidProjects, bool());
  41. // ProjectTemplate
  42. MOCK_METHOD0(GetProjectTemplates, AZ::Outcome<QVector<ProjectTemplateInfo>>());
  43. MOCK_CONST_METHOD0(GetProjectTemplatesForAllRepos, AZ::Outcome<QVector<ProjectTemplateInfo>>());
  44. MOCK_METHOD0(GetGemTemplates, AZ::Outcome<QVector<TemplateInfo>>());
  45. // Gem Repos
  46. MOCK_METHOD1(RefreshGemRepo, AZ::Outcome<void, AZStd::string>(const QString&));
  47. MOCK_METHOD0(RefreshAllGemRepos, bool());
  48. MOCK_METHOD1(AddGemRepo, DetailedOutcome(const QString&));
  49. MOCK_METHOD1(RemoveGemRepo, bool(const QString&));
  50. MOCK_METHOD0(GetAllGemRepoInfos, AZ::Outcome<QVector<GemRepoInfo>, AZStd::string>());
  51. MOCK_METHOD1(GetGemInfosForRepo, AZ::Outcome<QVector<GemInfo>, AZStd::string>(const QString&));
  52. MOCK_METHOD0(GetGemInfosForAllRepos, AZ::Outcome<QVector<GemInfo>, AZStd::string>());
  53. MOCK_METHOD4(DownloadGem, DetailedOutcome(const QString&, const QString&, std::function<void(int, int)>, bool));
  54. MOCK_METHOD0(CancelDownload, void());
  55. MOCK_METHOD2(IsGemUpdateAvaliable, bool(const QString&, const QString&));
  56. // Errors
  57. MOCK_METHOD1(AddErrorString, void(AZStd::string));
  58. };
  59. } // namespace UnitTest