blob: a2237342727b7a93b67a033c498e20ccddcb7b50 [file] [log] [blame]
Krzysztof Grobelnyc8e3a642020-10-23 12:29:16 +02001#pragma once
2
3#include "interfaces/metric.hpp"
4
5#include <gmock/gmock.h>
6
7class MetricMock : public interfaces::Metric
8{
9 public:
10 MetricMock()
11 {
12 using namespace testing;
13
Krzysztof Grobelnydcc4e192021-03-08 09:09:34 +000014 ON_CALL(*this, getReadings())
Krzysztof Grobelny80697712021-03-04 09:49:27 +000015 .WillByDefault(Return(std::vector<MetricValue>()));
Krzysztof Grobelnyf7ea2992022-01-27 11:04:58 +010016 ON_CALL(*this, sensorCount).WillByDefault(InvokeWithoutArgs([this] {
17 return getReadings().size();
18 }));
Krzysztof Grobelnyc8e3a642020-10-23 12:29:16 +020019 }
20
Krzysztof Grobelny6ccfcbf2020-11-04 09:31:36 +010021 MOCK_METHOD(void, initialize, (), (override));
Lukasz Kazmierczak7e098e92021-09-16 15:59:56 +020022 MOCK_METHOD(void, deinitialize, (), (override));
Krzysztof Grobelny80697712021-03-04 09:49:27 +000023 MOCK_METHOD(std::vector<MetricValue>, getReadings, (), (const, override));
Krzysztof Grobelnyd2238192020-12-02 09:27:28 +000024 MOCK_METHOD(LabeledMetricParameters, dumpConfiguration, (),
25 (const, override));
Krzysztof Grobelnyf7ea2992022-01-27 11:04:58 +010026 MOCK_METHOD(uint64_t, sensorCount, (), (const, override));
27 MOCK_METHOD(void, registerForUpdates, (interfaces::MetricListener&),
28 (override));
29 MOCK_METHOD(void, unregisterFromUpdates, (interfaces::MetricListener&),
30 (override));
31 MOCK_METHOD(void, updateReadings, (Milliseconds), (override));
32 MOCK_METHOD(bool, isTimerRequired, (), (const, override));
Krzysztof Grobelnyc8e3a642020-10-23 12:29:16 +020033};