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));
+};