40 lines
1.0 KiB
C++
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();
|
|
} |