Skip to content
Snippets Groups Projects
Commit 1b011d0b authored by René Paris's avatar René Paris
Browse files

Add const for EntityRepository::Get(Entity)

parent eb770778
No related branches found
No related tags found
1 merge request!72Bugfix/propagate constness
......@@ -38,7 +38,9 @@ public:
virtual IVehicle& GetHost() = 0;
virtual std::optional<std::reference_wrapper<IEntity>> Get(const std::string& name) = 0;
virtual std::optional<std::reference_wrapper<const IEntity>> Get(const std::string& name) const = 0;
virtual std::optional<std::reference_wrapper<IEntity>> Get(UniqueId id) = 0;
virtual std::optional<std::reference_wrapper<const IEntity>> Get(UniqueId id) const = 0;
virtual bool Contains(UniqueId id) const = 0;
virtual void Delete(const std::string& name) = 0;
......
......@@ -318,6 +318,12 @@ public:
(const std::string& name),
());
MOCK_METHOD(mantle_api::IEntity*,
GetImpl,
(const std::string& name),
(const));
std::optional<std::reference_wrapper<IEntity>> Get(const std::string& name) override
{
if (auto* entity = GetImpl(name))
......@@ -327,12 +333,27 @@ public:
return test_vehicle_;
}
std::optional<std::reference_wrapper<const IEntity>> Get(const std::string& name) const override
{
if (auto* entity = GetImpl(name))
{
return *entity;
}
return test_vehicle_;
}
std::optional<std::reference_wrapper<IEntity>> Get(mantle_api::UniqueId id) override
{
std::ignore = id;
return test_vehicle_;
}
std::optional<std::reference_wrapper<const IEntity>> Get(mantle_api::UniqueId id) const override
{
std::ignore = id;
return test_vehicle_;
}
mantle_api::IVehicle& GetHost() override { return test_vehicle_; }
const std::vector<std::unique_ptr<mantle_api::IEntity>>& GetEntities() const override { return entities_; }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment