#pragma once #include #include #include #include namespace UnitTest { using namespace SimulationInterfaces; class SimulationEntityManagerMockedHandler : public SimulationInterfaces::SimulationEntityManagerRequestBus::Handler { public: SimulationEntityManagerMockedHandler() { SimulationInterfaces::SimulationEntityManagerRequestBus::Handler::BusConnect(); } ~SimulationEntityManagerMockedHandler() { SimulationInterfaces::SimulationEntityManagerRequestBus::Handler::BusDisconnect(); } MOCK_METHOD1(GetEntities, AZ::Outcome(const EntityFilters& filter)); MOCK_METHOD1(GetEntityState, AZ::Outcome(const AZStd::string& name)); MOCK_METHOD1(GetEntitiesStates, AZ::Outcome(const EntityFilters& filter)); MOCK_METHOD2(SetEntityState, AZ::Outcome(const AZStd::string& name, const EntityState& state)); MOCK_METHOD2(DeleteEntity, void(const AZStd::string& name, DeletionCompletedCb completedCb)); MOCK_METHOD1(DeleteAllEntities, void(DeletionCompletedCb completedCb)); MOCK_METHOD0(GetSpawnables, AZ::Outcome()); MOCK_METHOD0(ResetAllEntitiesToInitialState, AZ::Outcome()); MOCK_METHOD7( SpawnEntity, void( const AZStd::string& name, const AZStd::string& uri, const AZStd::string& entityNamespace, const AZ::Transform& initialPose, const bool allowRename, PreInsertionCb preinsertionCb, SpawnCompletedCb completedCb)); MOCK_METHOD2( RegisterNewSimulatedBody, AZ::Outcome(const AZStd::string& proposedName, const AZ::EntityId& entityId)); MOCK_METHOD1(UnregisterSimulatedBody, AZ::Outcome(const AZStd::string& name)); MOCK_METHOD2(SetEntityInfo, AZ::Outcome(const AZStd::string& name, const EntityInfo& info)); MOCK_METHOD1(GetEntityInfo, AZ::Outcome(const AZStd::string& name)); MOCK_METHOD1(GetEntityBounds, AZ::Outcome(const AZStd::string& name)); MOCK_METHOD1(GetEntityId, AZ::Outcome(const AZStd::string& name)); MOCK_METHOD1(GetEntityRoot, AZ::Outcome(const AZStd::string& name)); }; } // namespace UnitTest