treewide: Completely remove global refresh
We no longer need any of the global refresh code as we can dynamically
receive all of the updates to network configuration.
Change-Id: Ia8cb3af827c599c17d5df9fdddaf6cdc6546050d
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/test/global_network_objects.cpp b/test/global_network_objects.cpp
index 0f6550f..9442546 100644
--- a/test/global_network_objects.cpp
+++ b/test/global_network_objects.cpp
@@ -1,8 +1,6 @@
#include "mock_network_manager.hpp"
#include "types.hpp"
-#include <sdeventplus/event.hpp>
-
namespace phosphor
{
@@ -10,23 +8,7 @@
{
std::unique_ptr<MockManager> manager = nullptr;
-std::unique_ptr<Timer> refreshObjectTimer = nullptr;
std::unique_ptr<Timer> reloadTimer = nullptr;
-/** @brief refresh the network objects. */
-void refreshObjects()
-{
- if (manager)
- {
- manager->createChildObjects();
- }
-}
-
-void initializeTimers()
-{
- refreshObjectTimer = std::make_unique<Timer>(
- sdeventplus::Event::get_default(), std::bind(refreshObjects));
-}
-
} // namespace network
} // namespace phosphor
diff --git a/test/meson.build b/test/meson.build
index 1b96586..0e580fd 100644
--- a/test/meson.build
+++ b/test/meson.build
@@ -49,7 +49,6 @@
'netlink',
'network_manager',
'rtnetlink',
- 'system_queries',
'types',
'util',
]
diff --git a/test/mock_ethernet_interface.hpp b/test/mock_ethernet_interface.hpp
index 1f72486..ff1b324 100644
--- a/test/mock_ethernet_interface.hpp
+++ b/test/mock_ethernet_interface.hpp
@@ -17,8 +17,8 @@
{
}
+ MOCK_METHOD((ServerList), getNTPServerFromTimeSyncd, (), (override));
MOCK_METHOD((ServerList), getNameServerFromResolvd, (), (override));
- friend class TestEthernetInterface;
};
} // namespace network
} // namespace phosphor
diff --git a/test/mock_network_manager.hpp b/test/mock_network_manager.hpp
index fd344bf..87214d4 100644
--- a/test/mock_network_manager.hpp
+++ b/test/mock_network_manager.hpp
@@ -1,8 +1,5 @@
#pragma once
-#include "config_parser.hpp"
-#include "mock_ethernet_interface.hpp"
#include "network_manager.hpp"
-#include "system_queries.hpp"
#include <gmock/gmock.h>
@@ -11,9 +8,6 @@
namespace network
{
-void initializeTimers();
-void refreshObjects();
-
class MockManager : public Manager
{
public:
@@ -23,25 +17,9 @@
{
}
- void createInterfaces() override
- {
- interfaces.clear();
- for (auto& interface : system::getInterfaces())
- {
- config::Parser config(
- config::pathForIntfConf(confDir, *interface.name));
- auto intf = std::make_unique<MockEthernetInterface>(
- bus, *this, interface, objectPath, config);
- intf->createIPAddressObjects();
- intf->createStaticNeighborObjects();
- intf->loadNameServers(config);
- this->interfaces.emplace(
- std::make_pair(std::move(*interface.name), std::move(intf)));
- }
- }
-
MOCK_METHOD(void, reloadConfigs, (), (override));
- MOCK_METHOD(void, reloadConfigsNoRefresh, (), (override));
+
+ using Manager::handleAdminState;
};
} // namespace network
diff --git a/test/test_ethernet_interface.cpp b/test/test_ethernet_interface.cpp
index a7b3c69..dd1a10d 100644
--- a/test/test_ethernet_interface.cpp
+++ b/test/test_ethernet_interface.cpp
@@ -1,23 +1,15 @@
#include "config_parser.hpp"
#include "ipaddress.hpp"
+#include "mock_ethernet_interface.hpp"
#include "mock_network_manager.hpp"
-#include "mock_syscall.hpp"
-#include "system_queries.hpp"
-#include "util.hpp"
-#include <arpa/inet.h>
#include <net/if.h>
-#include <netinet/in.h>
-#include <stdlib.h>
-#include <charconv>
-#include <exception>
#include <sdbusplus/bus.hpp>
#include <stdplus/gtest/tmp.hpp>
#include <string_view>
#include <xyz/openbmc_project/Common/error.hpp>
-#include <gmock/gmock.h>
#include <gtest/gtest.h>
namespace phosphor
@@ -33,7 +25,7 @@
{
public:
sdbusplus::bus_t bus;
- std::string confDir;
+ std::filesystem::path confDir;
MockManager manager;
MockEthernetInterface interface;
TestEthernetInterface() :
@@ -47,9 +39,7 @@
static MockEthernetInterface makeInterface(sdbusplus::bus_t& bus,
MockManager& manager)
{
- system::mock_clear();
InterfaceInfo info{.idx = 1, .flags = 0, .name = "test0"};
- system::mock_addIF(info);
return {bus, manager, info, "/xyz/openbmc_test/network"sv,
config::Parser()};
}
@@ -86,7 +76,6 @@
.name = "test1",
.mac = mac,
.mtu = mtu};
- system::mock_addIF(info);
MockEthernetInterface intf(bus, manager, info,
"/xyz/openbmc_test/network"sv, config::Parser());
@@ -136,11 +125,9 @@
TEST_F(TestEthernetInterface, addStaticNameServers)
{
ServerList servers = {"9.1.1.1", "9.2.2.2", "9.3.3.3"};
- EXPECT_CALL(manager, reloadConfigsNoRefresh());
+ EXPECT_CALL(manager, reloadConfigs());
interface.staticNameServers(servers);
- fs::path filePath = confDir;
- filePath /= "00-bmc-test0.network";
- config::Parser parser(filePath.string());
+ config::Parser parser((confDir / "00-bmc-test0.network").native());
EXPECT_EQ(servers, parser.map.getValueStrings("Network", "DNS"));
}
@@ -155,11 +142,9 @@
TEST_F(TestEthernetInterface, addStaticNTPServers)
{
ServerList servers = {"10.1.1.1", "10.2.2.2", "10.3.3.3"};
- EXPECT_CALL(manager, reloadConfigsNoRefresh());
+ EXPECT_CALL(manager, reloadConfigs());
interface.staticNTPServers(servers);
- fs::path filePath = confDir;
- filePath /= "00-bmc-test0.network";
- config::Parser parser(filePath.string());
+ config::Parser parser((confDir / "00-bmc-test0.network").native());
EXPECT_EQ(servers, parser.map.getValueStrings("Network", "NTP"));
}
diff --git a/test/test_network_manager.cpp b/test/test_network_manager.cpp
index 7e3e211..ffffb44 100644
--- a/test/test_network_manager.cpp
+++ b/test/test_network_manager.cpp
@@ -1,11 +1,5 @@
#include "config_parser.hpp"
#include "mock_network_manager.hpp"
-#include "mock_syscall.hpp"
-
-#include <arpa/inet.h>
-#include <net/if.h>
-#include <netinet/in.h>
-#include <stdlib.h>
#include <filesystem>
#include <sdbusplus/bus.hpp>
@@ -30,12 +24,6 @@
bus(sdbusplus::bus::new_default()),
manager(bus, "/xyz/openbmc_test/abc", CaseTmpDir())
{
- system::mock_clear();
- }
-
- void createInterfaces()
- {
- manager.createInterfaces();
}
void deleteVLAN(std::string_view ifname)
@@ -44,31 +32,29 @@
}
};
-// getifaddrs will not return any interface
TEST_F(TestNetworkManager, NoInterface)
{
- createInterfaces();
EXPECT_TRUE(manager.interfaces.empty());
}
-// getifaddrs returns single interface.
+
TEST_F(TestNetworkManager, WithSingleInterface)
{
- // Adds the following ip in the getifaddrs list.
- system::mock_addIF({.idx = 2, .flags = 0, .name = "igb1"});
+ manager.addInterface({.idx = 2, .flags = 0, .name = "igb1"});
+ manager.handleAdminState("managed", 2);
// Now create the interfaces which will call the mocked getifaddrs
// which returns the above interface detail.
- createInterfaces();
EXPECT_THAT(manager.interfaces, UnorderedElementsAre(Key("igb1")));
}
// getifaddrs returns two interfaces.
TEST_F(TestNetworkManager, WithMultipleInterfaces)
{
- system::mock_addIF({.idx = 1, .flags = 0, .name = "igb0"});
- system::mock_addIF({.idx = 2, .flags = 0, .name = "igb1"});
+ manager.addInterface({.idx = 1, .flags = 0, .name = "igb0"});
+ manager.handleAdminState("managed", 1);
+ manager.handleAdminState("unmanaged", 2);
+ manager.addInterface({.idx = 2, .flags = 0, .name = "igb1"});
- createInterfaces();
EXPECT_THAT(manager.interfaces,
UnorderedElementsAre(Key("igb0"), Key("igb1")));
}
@@ -79,8 +65,8 @@
EXPECT_THROW(manager.vlan("", 0), std::exception);
EXPECT_THROW(manager.vlan("eth0", 2), std::exception);
- system::mock_addIF({.idx = 1, .flags = 0, .name = "eth0"});
- manager.createInterfaces();
+ manager.addInterface({.idx = 1, .flags = 0, .name = "eth0"});
+ manager.handleAdminState("managed", 1);
EXPECT_NO_THROW(manager.vlan("eth0", 2));
EXPECT_NO_THROW(manager.vlan("eth0", 4094));
EXPECT_THAT(
diff --git a/test/test_system_queries.cpp b/test/test_system_queries.cpp
deleted file mode 100644
index e88c64b..0000000
--- a/test/test_system_queries.cpp
+++ /dev/null
@@ -1,33 +0,0 @@
-#include "system_queries.hpp"
-
-#include <gtest/gtest.h>
-
-namespace phosphor::network::system
-{
-namespace detail
-{
-
-TEST(ValidateNewAddr, Filtering)
-{
- AddressInfo info = {};
- EXPECT_TRUE(validateNewAddr(info, {}));
-
- info.ifidx = 2;
- EXPECT_TRUE(validateNewAddr(info, {}));
- EXPECT_TRUE(validateNewAddr(info, {.ifidx = 2}));
- EXPECT_FALSE(validateNewAddr(info, {.ifidx = 3}));
-}
-
-TEST(ValidateNewNeigh, Filtering)
-{
- NeighborInfo info = {};
- EXPECT_TRUE(validateNewNeigh(info, {}));
-
- info.ifidx = 2;
- EXPECT_TRUE(validateNewNeigh(info, {}));
- EXPECT_TRUE(validateNewNeigh(info, {.ifidx = 2}));
- EXPECT_FALSE(validateNewNeigh(info, {.ifidx = 3}));
-}
-
-} // namespace detail
-} // namespace phosphor::network::system