| #pragma once |
| #include "mock_ethernet_interface.hpp" |
| #include "network_manager.hpp" |
| #include "util.hpp" |
| |
| #include <gmock/gmock.h> |
| |
| namespace phosphor |
| { |
| namespace network |
| { |
| |
| void initializeTimers(); |
| void refreshObjects(); |
| |
| class MockManager : public phosphor::network::Manager |
| { |
| public: |
| MockManager(sdbusplus::bus_t& bus, const char* path, |
| const std::string& dir) : |
| phosphor::network::Manager(bus, path, dir) |
| { |
| } |
| |
| void createInterfaces() override |
| { |
| // clear all the interfaces first |
| interfaces.clear(); |
| auto interfaceStrList = getInterfaces(); |
| for (auto& interface : interfaceStrList) |
| { |
| fs::path objPath = objectPath; |
| // normal ethernet interface |
| objPath /= interface; |
| config::Parser config(config::pathForIntfConf(confDir, interface)); |
| auto intf = |
| std::make_shared<phosphor::network::MockEthernetInterface>( |
| bus, objPath.string(), config, *this, true); |
| intf->createIPAddressObjects(); |
| intf->createStaticNeighborObjects(); |
| intf->loadNameServers(config); |
| this->interfaces.emplace( |
| std::make_pair(std::move(interface), std::move(intf))); |
| } |
| } |
| |
| MOCK_METHOD(void, reloadConfigs, (), (override)); |
| }; |
| |
| } // namespace network |
| } // namespace phosphor |