xref: /openbmc/telemetry/tests/src/mocks/report_mock.hpp (revision e6d4887453f0b23b46c012da7cb26f2beb38ef0e)
12f9f9b87SWludzik, Jozef #pragma once
22f9f9b87SWludzik, Jozef 
32f9f9b87SWludzik, Jozef #include "interfaces/report.hpp"
42f9f9b87SWludzik, Jozef 
52f9f9b87SWludzik, Jozef #include <gmock/gmock.h>
62f9f9b87SWludzik, Jozef 
72f9f9b87SWludzik, Jozef class ReportMock : public interfaces::Report
82f9f9b87SWludzik, Jozef {
92f9f9b87SWludzik, Jozef   public:
ReportMock(const std::string & id)10fbeb5bf4SKrzysztof Grobelny     explicit ReportMock(const std::string& id)
112f9f9b87SWludzik, Jozef     {
122f9f9b87SWludzik, Jozef         using namespace testing;
132f9f9b87SWludzik, Jozef 
14b8cc78ddSKrzysztof Grobelny         ON_CALL(*this, getId).WillByDefault([id] { return id; });
15b8cc78ddSKrzysztof Grobelny         ON_CALL(*this, getPath).WillByDefault([id] { return "/" + id; });
162f9f9b87SWludzik, Jozef         EXPECT_CALL(*this, Die).Times(AnyNumber());
172f9f9b87SWludzik, Jozef     }
182f9f9b87SWludzik, Jozef 
~ReportMock()192f9f9b87SWludzik, Jozef     virtual ~ReportMock()
202f9f9b87SWludzik, Jozef     {
212f9f9b87SWludzik, Jozef         Die();
222f9f9b87SWludzik, Jozef     }
232f9f9b87SWludzik, Jozef 
24b8cc78ddSKrzysztof Grobelny     MOCK_METHOD(std::string, getId, (), (override, const));
252f9f9b87SWludzik, Jozef     MOCK_METHOD(std::string, getPath, (), (override, const));
26*b4ef22e4SSzymon Dompke 
272f9f9b87SWludzik, Jozef     MOCK_METHOD(void, Die, ());
282f9f9b87SWludzik, Jozef };
29