TSG-13500 tsg-service-chaining-engine扫描策略

This commit is contained in:
luwenpeng
2023-02-06 10:34:23 +08:00
parent 72ba473aa5
commit 450d9ab0f2
23 changed files with 2253 additions and 11 deletions

View File

@@ -22,6 +22,14 @@ add_executable(gtest_raw_packet gtest_raw_packet.cpp)
target_include_directories(gtest_raw_packet PUBLIC ${CMAKE_SOURCE_DIR}/common/include)
target_link_libraries(gtest_raw_packet common gtest)
###############################################################################
# gtest_utils
###############################################################################
add_executable(gtest_utils gtest_utils.cpp)
target_include_directories(gtest_utils PUBLIC ${CMAKE_SOURCE_DIR}/common/include)
target_link_libraries(gtest_utils common gtest)
###############################################################################
# gtest_discover_tests
###############################################################################
@@ -29,4 +37,5 @@ target_link_libraries(gtest_raw_packet common gtest)
include(GoogleTest)
gtest_discover_tests(gtest_addr_tuple4)
gtest_discover_tests(gtest_session_table)
gtest_discover_tests(gtest_raw_packet)
gtest_discover_tests(gtest_raw_packet)
gtest_discover_tests(gtest_utils)

View File

@@ -1371,6 +1371,27 @@ TEST(RAW_PACKET, ETH_MPLS_MPLS_PWETHCW_ETH_ARP)
raw_packet_parser_destory(handler);
}
TEST(RAW_PACKET, GET_HASH_VALUE)
{
struct raw_pkt_parser *handler = raw_packet_parser_create(LAYER_TYPE_ALL, 8);
EXPECT_TRUE(handler != nullptr);
const void *payload = raw_packet_parser_parse(handler, (const void *)data4, sizeof(data4));
EXPECT_TRUE(payload != nullptr);
EXPECT_TRUE((char *)payload - (char *)&data4 == 106);
// inner_addr_str: "2001:da8:200:900e:200:5efe:d24d:58a3 0 2600:140e:6::1702:1058 0"
// outer_addr_str: "210.77.88.163 0 59.66.4.50 0"
EXPECT_TRUE(raw_packet_parser_get_hash_value(handler, LDBC_METHOD_HASH_INT_IP, 1) == raw_packet_parser_get_hash_value(handler, LDBC_METHOD_HASH_EXT_IP, 0));
EXPECT_TRUE(raw_packet_parser_get_hash_value(handler, LDBC_METHOD_HASH_EXT_IP, 1) == raw_packet_parser_get_hash_value(handler, LDBC_METHOD_HASH_INT_IP, 0));
EXPECT_TRUE(raw_packet_parser_get_hash_value(handler, LDBC_METHOD_HASH_INT_IP_AND_EXT_IP, 1) == raw_packet_parser_get_hash_value(handler, LDBC_METHOD_HASH_INT_IP_AND_EXT_IP, 0));
EXPECT_TRUE(raw_packet_parser_get_hash_value(handler, LDBC_METHOD_HASH_INNERMOST_INT_IP, 1) == raw_packet_parser_get_hash_value(handler, LDBC_METHOD_HASH_INNERMOST_EXT_IP, 0));
raw_packet_parser_destory(handler);
}
int main(int argc, char **argv)
{
::testing::InitGoogleTest(&argc, argv);

View File

@@ -0,0 +1,43 @@
#include <gtest/gtest.h>
#include "utils.h"
TEST(UTILS, FIXED_NUM_ARRAY)
{
struct fixed_num_array array;
fixed_num_array_init(&array);
fixed_num_array_add_elem(&array, 1);
fixed_num_array_add_elem(&array, 2);
fixed_num_array_add_elem(&array, 3);
fixed_num_array_add_elem(&array, 1);
fixed_num_array_add_elem(&array, 2);
EXPECT_TRUE(fixed_num_array_count_elem(&array) == 5);
EXPECT_TRUE(fixed_num_array_index_elem(&array, 0) == 1);
EXPECT_TRUE(fixed_num_array_index_elem(&array, 1) == 2);
EXPECT_TRUE(fixed_num_array_index_elem(&array, 2) == 3);
EXPECT_TRUE(fixed_num_array_index_elem(&array, 3) == 1);
EXPECT_TRUE(fixed_num_array_index_elem(&array, 4) == 2);
fixed_num_array_del_elem(&array, 3); // 1,2,1,2
EXPECT_TRUE(fixed_num_array_count_elem(&array) == 4);
EXPECT_TRUE(fixed_num_array_index_elem(&array, 0) == 1);
EXPECT_TRUE(fixed_num_array_index_elem(&array, 1) == 2);
EXPECT_TRUE(fixed_num_array_index_elem(&array, 2) == 1);
EXPECT_TRUE(fixed_num_array_index_elem(&array, 3) == 2);
fixed_num_array_del_elem(&array, 2); // 1,1
EXPECT_TRUE(fixed_num_array_count_elem(&array) == 2);
EXPECT_TRUE(fixed_num_array_index_elem(&array, 0) == 1);
EXPECT_TRUE(fixed_num_array_index_elem(&array, 1) == 1);
fixed_num_array_del_elem(&array, 1);
EXPECT_TRUE(fixed_num_array_count_elem(&array) == 0);
}
int main(int argc, char **argv)
{
::testing::InitGoogleTest(&argc, argv);
return RUN_ALL_TESTS();
}