176c14c3bSShawn McCarney /** 276c14c3bSShawn McCarney * Copyright © 2020 IBM Corporation 376c14c3bSShawn McCarney * 476c14c3bSShawn McCarney * Licensed under the Apache License, Version 2.0 (the "License"); 576c14c3bSShawn McCarney * you may not use this file except in compliance with the License. 676c14c3bSShawn McCarney * You may obtain a copy of the License at 776c14c3bSShawn McCarney * 876c14c3bSShawn McCarney * http://www.apache.org/licenses/LICENSE-2.0 976c14c3bSShawn McCarney * 1076c14c3bSShawn McCarney * Unless required by applicable law or agreed to in writing, software 1176c14c3bSShawn McCarney * distributed under the License is distributed on an "AS IS" BASIS, 1276c14c3bSShawn McCarney * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1376c14c3bSShawn McCarney * See the License for the specific language governing permissions and 1476c14c3bSShawn McCarney * limitations under the License. 1576c14c3bSShawn McCarney */ 1676c14c3bSShawn McCarney #pragma once 1776c14c3bSShawn McCarney 1876c14c3bSShawn McCarney #include "error_logging.hpp" 19*5dab5d3dSShawn McCarney #include "phase_fault.hpp" 2076c14c3bSShawn McCarney 2176c14c3bSShawn McCarney #include <gmock/gmock.h> 2276c14c3bSShawn McCarney 2376c14c3bSShawn McCarney namespace phosphor::power::regulators 2476c14c3bSShawn McCarney { 2576c14c3bSShawn McCarney 2676c14c3bSShawn McCarney /** 2776c14c3bSShawn McCarney * @class MockErrorLogging 2876c14c3bSShawn McCarney * 2976c14c3bSShawn McCarney * Mock implementation of the ErrorLogging interface. 3076c14c3bSShawn McCarney */ 3176c14c3bSShawn McCarney class MockErrorLogging : public ErrorLogging 3276c14c3bSShawn McCarney { 3376c14c3bSShawn McCarney public: 3476c14c3bSShawn McCarney // Specify which compiler-generated methods we want 3576c14c3bSShawn McCarney MockErrorLogging() = default; 3676c14c3bSShawn McCarney MockErrorLogging(const MockErrorLogging&) = delete; 3776c14c3bSShawn McCarney MockErrorLogging(MockErrorLogging&&) = delete; 3876c14c3bSShawn McCarney MockErrorLogging& operator=(const MockErrorLogging&) = delete; 3976c14c3bSShawn McCarney MockErrorLogging& operator=(MockErrorLogging&&) = delete; 4076c14c3bSShawn McCarney virtual ~MockErrorLogging() = default; 4176c14c3bSShawn McCarney 421df5954cSShawn McCarney MOCK_METHOD(void, logConfigFileError, 431df5954cSShawn McCarney (Entry::Level severity, Journal& journal), (override)); 441df5954cSShawn McCarney 451df5954cSShawn McCarney MOCK_METHOD(void, logDBusError, (Entry::Level severity, Journal& journal), 461df5954cSShawn McCarney (override)); 471df5954cSShawn McCarney 481df5954cSShawn McCarney MOCK_METHOD(void, logI2CError, 491df5954cSShawn McCarney (Entry::Level severity, Journal& journal, 501df5954cSShawn McCarney const std::string& bus, uint8_t addr, int errorNumber), 511df5954cSShawn McCarney (override)); 521df5954cSShawn McCarney 531df5954cSShawn McCarney MOCK_METHOD(void, logInternalError, 541df5954cSShawn McCarney (Entry::Level severity, Journal& journal), (override)); 551df5954cSShawn McCarney 56*5dab5d3dSShawn McCarney MOCK_METHOD(void, logPhaseFault, 57*5dab5d3dSShawn McCarney (Entry::Level severity, Journal& journal, PhaseFaultType type, 58*5dab5d3dSShawn McCarney const std::string& inventoryPath, 59*5dab5d3dSShawn McCarney (std::map<std::string, std::string> additionalData)), 60*5dab5d3dSShawn McCarney (override)); 61*5dab5d3dSShawn McCarney 621df5954cSShawn McCarney MOCK_METHOD(void, logPMBusError, 631df5954cSShawn McCarney (Entry::Level severity, Journal& journal, 641df5954cSShawn McCarney const std::string& inventoryPath), 651df5954cSShawn McCarney (override)); 661df5954cSShawn McCarney 671df5954cSShawn McCarney MOCK_METHOD(void, logWriteVerificationError, 681df5954cSShawn McCarney (Entry::Level severity, Journal& journal, 691df5954cSShawn McCarney const std::string& inventoryPath), 701df5954cSShawn McCarney (override)); 7176c14c3bSShawn McCarney }; 7276c14c3bSShawn McCarney 7376c14c3bSShawn McCarney } // namespace phosphor::power::regulators 74