1 #pragma once 2 3 #include "pid/zone_interface.hpp" 4 5 #include <string> 6 #include <vector> 7 8 #include <gmock/gmock.h> 9 10 namespace pid_control 11 { 12 13 class ZoneMock : public ZoneInterface 14 { 15 public: 16 virtual ~ZoneMock() = default; 17 18 MOCK_METHOD0(updateFanTelemetry, void()); 19 MOCK_METHOD0(updateSensors, void()); 20 MOCK_METHOD0(initializeCache, void()); 21 MOCK_METHOD1(getCachedValue, double(const std::string&)); 22 23 // Compatibility interface for getCachedValues getCachedValues(const std::string & s)24 ValueCacheEntry getCachedValues(const std::string& s) 25 { 26 auto v = getCachedValue(s); 27 return {v, v}; 28 } 29 30 MOCK_CONST_METHOD0(getRedundantWrite, bool(void)); 31 MOCK_METHOD2(addSetPoint, void(double, const std::string&)); 32 MOCK_METHOD2(setOutputCache, 33 void(std::string_view name, const ValueCacheEntry& values)); 34 MOCK_METHOD0(clearSetPoints, void()); 35 MOCK_METHOD1(addRPMCeiling, void(double)); 36 MOCK_METHOD0(clearRPMCeilings, void()); 37 MOCK_METHOD0(determineMaxSetPointRequest, void()); 38 MOCK_CONST_METHOD0(getMaxSetPointRequest, double()); 39 40 MOCK_METHOD0(processFans, void()); 41 MOCK_METHOD0(processThermals, void()); 42 43 MOCK_CONST_METHOD0(getManualMode, bool()); 44 MOCK_CONST_METHOD0(getFailSafeMode, bool()); 45 MOCK_METHOD0(getFailSafePercent, double()); 46 MOCK_CONST_METHOD0( 47 getFailSafeSensors, 48 std::map<std::string, std::pair<std::string, double>>(void)); 49 MOCK_CONST_METHOD0(getZoneID, int64_t()); 50 51 MOCK_CONST_METHOD0(getCycleIntervalTime, uint64_t()); 52 MOCK_CONST_METHOD0(getUpdateThermalsCycle, uint64_t()); 53 MOCK_CONST_METHOD0(getAccSetPoint, bool()); 54 55 MOCK_METHOD1(getSensor, Sensor*(const std::string&)); 56 MOCK_METHOD0(getSensorNames, std::vector<std::string>()); 57 58 MOCK_METHOD0(initializeLog, void()); 59 MOCK_METHOD1(writeLog, void(const std::string&)); 60 61 MOCK_METHOD4(updateThermalPowerDebugInterface, 62 void(std::string pidName, std::string leader, double input, 63 double output)); 64 }; 65 66 } // namespace pid_control 67