test: pid: zone
Add unit-tests for the PID zone module.
Add zone_mock.
Tested: Ran on quanta-q71l board and it behaved as expected.
Change-Id: I51185b2d2daacea6ffb687e8f38c4fe2b2a1bed3
Signed-off-by: Patrick Venture <venture@google.com>
diff --git a/test/zone_mock.hpp b/test/zone_mock.hpp
new file mode 100644
index 0000000..f08c68f
--- /dev/null
+++ b/test/zone_mock.hpp
@@ -0,0 +1,19 @@
+#pragma once
+
+#include <gmock/gmock.h>
+#include <string>
+
+#include "pid/zone.hpp"
+
+class ZoneMock : public ZoneInterface
+{
+ public:
+ virtual ~ZoneMock() = default;
+
+ MOCK_METHOD1(getCachedValue, double(const std::string&));
+ MOCK_METHOD1(addRPMSetPoint, void(float));
+ MOCK_CONST_METHOD0(getMaxRPMRequest, float());
+ MOCK_CONST_METHOD0(getFailSafeMode, bool());
+ MOCK_CONST_METHOD0(getFailSafePercent, float());
+ MOCK_METHOD1(getSensor, Sensor*(std::string));
+};