From 142ecbb6d97f8a763e472f4271fae901a65f719f Mon Sep 17 00:00:00 2001 From: wwbmmm Date: Fri, 14 Nov 2025 11:19:25 +0800 Subject: [PATCH] Fix naming service unittest fail --- test/brpc_naming_service_unittest.cpp | 47 ++++++++++++++++----------- 1 file changed, 28 insertions(+), 19 deletions(-) diff --git a/test/brpc_naming_service_unittest.cpp b/test/brpc_naming_service_unittest.cpp index 43ac9f474a..0ba2be6692 100644 --- a/test/brpc_naming_service_unittest.cpp +++ b/test/brpc_naming_service_unittest.cpp @@ -77,33 +77,42 @@ TEST(NamingServiceTest, sanity) { ASSERT_EQ(0, bns.GetServers("qa-pbrpc.SAT.tjyx", &servers)); #endif + auto collect_ips = [&servers]() { + std::set ret; + for (auto& server : servers) { + ret.insert(server.addr.ip); + } + return ret; + }; brpc::policy::DomainNamingService dns; ASSERT_EQ(0, dns.GetServers("baidu.com:1234", &servers)); - ASSERT_EQ(2u, servers.size()); - ASSERT_EQ(1234, servers[0].addr.port); - ASSERT_EQ(1234, servers[1].addr.port); - const std::set expected_ips{servers[0].addr.ip, servers[1].addr.ip}; + size_t server_size = servers.size(); + ASSERT_GE(server_size, 1); + for (size_t i = 0; i < servers.size(); ++i) { + ASSERT_EQ(1234, servers[i].addr.port); + } + const auto expected_ips = collect_ips(); ASSERT_EQ(0, dns.GetServers("baidu.com", &servers)); - ASSERT_EQ(2u, servers.size()); - const std::set ip_list1{servers[0].addr.ip, servers[1].addr.ip}; - ASSERT_TRUE(IsIPListEqual(expected_ips, ip_list1)); - ASSERT_EQ(80, servers[0].addr.port); - ASSERT_EQ(80, servers[1].addr.port); + ASSERT_EQ(server_size, servers.size()); + ASSERT_TRUE(IsIPListEqual(expected_ips, collect_ips())); + for (size_t i = 0; i < servers.size(); ++i) { + ASSERT_EQ(80, servers[i].addr.port); + } ASSERT_EQ(0, dns.GetServers("baidu.com:1234/useless1/useless2", &servers)); - ASSERT_EQ(2u, servers.size()); - const std::set ip_list2{servers[0].addr.ip, servers[1].addr.ip}; - ASSERT_TRUE(IsIPListEqual(expected_ips, ip_list2)); - ASSERT_EQ(1234, servers[0].addr.port); - ASSERT_EQ(1234, servers[1].addr.port); + ASSERT_EQ(server_size, servers.size()); + ASSERT_TRUE(IsIPListEqual(expected_ips, collect_ips())); + for (size_t i = 0; i < servers.size(); ++i) { + ASSERT_EQ(1234, servers[i].addr.port); + } ASSERT_EQ(0, dns.GetServers("baidu.com/useless1/useless2", &servers)); - ASSERT_EQ(2u, servers.size()); - const std::set ip_list3{servers[0].addr.ip, servers[1].addr.ip}; - ASSERT_TRUE(IsIPListEqual(expected_ips, ip_list3)); - ASSERT_EQ(80, servers[0].addr.port); - ASSERT_EQ(80, servers[1].addr.port); + ASSERT_EQ(server_size, servers.size()); + ASSERT_TRUE(IsIPListEqual(expected_ips, collect_ips())); + for (size_t i = 0; i < servers.size(); ++i) { + ASSERT_EQ(80, servers[i].addr.port); + } const char *address_list[] = { "10.127.0.1:1234",