fix unittest: test_election_base

This commit is contained in:
xy0
2022-03-16 10:57:48 +08:00
committed by LINxiansheng
parent a1f0486503
commit a3b83dcf73

View File

@ -41,15 +41,25 @@ TEST_F(TestObElectionBase, get_self_addr)
EXPECT_EQ(OB_INVALID_ARGUMENT, get_self_addr(addr, NULL, 0)); EXPECT_EQ(OB_INVALID_ARGUMENT, get_self_addr(addr, NULL, 0));
{ {
const char* dev = "null"; const char *dev = "null";
EXPECT_EQ(OB_INVALID_ARGUMENT, get_self_addr(addr, dev, port)); EXPECT_EQ(OB_INVALID_ARGUMENT, get_self_addr(addr, dev, port));
} }
{ {
const char* dev = "bond0"; struct ifaddrs *ifaddr, *ifa;
EXPECT_EQ(OB_SUCCESS, get_self_addr(addr, dev, port)); char host[NI_MAXHOST];
uint32_t ip = obsys::CNetUtil::getLocalAddr(dev); EXPECT_EQ(getifaddrs(&ifaddr), 0);
EXPECT_EQ(ip, addr.get_ipv4()); for (ifa = ifaddr; ifa != NULL; ifa = ifa->ifa_next) {
EXPECT_EQ(port, addr.get_port()); if (ifa->ifa_addr == NULL)
continue;
getnameinfo(ifa->ifa_addr, sizeof(struct sockaddr_in), host, NI_MAXHOST, NULL, 0, NI_NUMERICHOST);
if (ifa->ifa_addr->sa_family == AF_INET) {
const char *dev = ifa->ifa_name;
EXPECT_EQ(OB_SUCCESS, get_self_addr(addr, dev, port));
uint32_t ip = obsys::CNetUtil::getLocalAddr(dev);
EXPECT_EQ(ip, addr.get_ipv4());
EXPECT_EQ(port, addr.get_port());
}
}
} }
} }
@ -78,7 +88,7 @@ TEST_F(TestObElectionBase, election_stage_name)
} // namespace unittest } // namespace unittest
} // namespace oceanbase } // namespace oceanbase
int main(int argc, char** argv) int main(int argc, char **argv)
{ {
int ret = -1; int ret = -1;