This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
tango-tsg-service-chaining-…/common/test/gtest_stream_addr.cpp
2023-01-10 16:30:42 +08:00

40 lines
1.0 KiB
C++

#include <gtest/gtest.h>
#include <arpa/inet.h>
#include "stream_addr.h"
TEST(STREAM_ADDR, IPV4)
{
struct stream_addr addr;
addr.addr_type = STREAM_ADDR_TYPE_V4;
addr.addr_v4.src_port = htons(12345);
addr.addr_v4.dst_port = htons(23456);
inet_pton(AF_INET, "1.2.3.4", &addr.addr_v4.src_addr);
inet_pton(AF_INET, "4.3.2.1", &addr.addr_v4.dst_addr);
char *ret_str = stream_addr_to_str(&addr);
EXPECT_TRUE(ret_str != nullptr);
EXPECT_STREQ(ret_str, "1.2.3.4 12345 4.3.2.1 23456");
free(ret_str);
}
TEST(STREAM_ADDR, IPV6)
{
struct stream_addr addr;
addr.addr_type = STREAM_ADDR_TYPE_V6;
addr.addr_v6.src_port = htons(12345);
addr.addr_v6.dst_port = htons(23456);
inet_pton(AF_INET6, "1:2::3", &addr.addr_v6.src_addr);
inet_pton(AF_INET6, "a:b::c", &addr.addr_v6.dst_addr);
char *ret_str = stream_addr_to_str(&addr);
EXPECT_TRUE(ret_str != nullptr);
EXPECT_STREQ(ret_str, "1:2::3 12345 a:b::c 23456");
free(ret_str);
}
int main(int argc, char **argv)
{
::testing::InitGoogleTest(&argc, argv);
return RUN_ALL_TESTS();
}