/* * Copyright (c) 2023 Fancy Code. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #ifndef LED_CONTROL_MOCK_H #define LED_CONTROL_MOCK_H #include "HalTestTool.h" #include "IHalCpp.h" #include "LedControl.h" class LedControlTest : public LedControl, public VLedHal { public: LedControlTest(const std::string &ledName); virtual ~LedControlTest() = default; StatusCode SetLedState(const LedState &state) override; protected: virtual StatusCode SetLedStateTrace(const LedState &state); private: const std::string mLedName; }; class LedControlMock : public LedControlTest { public: LedControlMock(const std::string &ledName); virtual ~LedControlMock() = default; MOCK_METHOD1(SetLedStateTrace, StatusCode(const LedState &)); public: static void SetLedStateMock(std::shared_ptr &vMock, const LedState &state, const unsigned int &aliveTimeMs, const unsigned int &blinkTimeMs); }; #endif