summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorliuxueli <[email protected]>2024-06-20 02:33:35 +0000
committerliuxueli <[email protected]>2024-06-20 02:33:35 +0000
commit5496804914e7adee6a64e9267f34040865611dc2 (patch)
tree37ac9f57e8a728d58d86bbb1949af5ef383d438c /test
parentcae0281c2fbd77c27e12cbd6e497e44ab1f37f94 (diff)
Feature: performance test case
Diffstat (limited to 'test')
-rw-r--r--test/CMakeLists.txt4
-rw-r--r--test/case/cernet1/cernet1_result.json12
-rw-r--r--test/case/cernet2/cernet2_result.json4
-rw-r--r--test/case/https/https_result.json1
-rw-r--r--test/case/multi_pkt_trans_2bytes/multi_pkt_trans_2bytes_result.json1
-rw-r--r--test/case/query/query_result.json3
-rw-r--r--test/case/srv/srv_result.json1
-rw-r--r--test/dns_decoder_perf_main.cpp11
-rw-r--r--test/dns_decoder_test.cpp41
9 files changed, 8 insertions, 70 deletions
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index b878303..0d66ba6 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -21,7 +21,9 @@ set(TEST_MAIN ${TEST_RUN_DIR}/plugin_test_main)
# copy perf main
-add_test(NAME COPY_PERF_TEST_MAIN COMMAND sh -c "cp ${CMAKE_BINARY_DIR}/test/dns_decoder_perf_test ${TEST_RUN_DIR}/dns_decoder_perf_test")
+add_test(NAME MKDIR_PERF COMMAND sh -c "mkdir -p ${CMAKE_CURRENT_BINARY_DIR}/perf/ ${CMAKE_CURRENT_BINARY_DIR}/perf/etc/dns/")
+add_test(NAME COPY_PERF_TEST_MAIN COMMAND sh -c "cp ${CMAKE_BINARY_DIR}/test/dns_decoder_perf_test ${CMAKE_CURRENT_BINARY_DIR}/perf")
+add_test(NAME COPY_PERF_TEST_CONF COMMAND sh -c "cp ${PROJECT_SOURCE_DIR}/bin/${PROJECT_NAME}.toml ${CMAKE_CURRENT_BINARY_DIR}/etc/dns/${PROJECT_NAME}.toml")
# assemble test env
add_test(NAME INSTALL_TEST_MAIN COMMAND sh -c "rpm -i ${CMAKE_CURRENT_SOURCE_DIR}/env/sapp-4.3.57.16ea514-1.el8.x86_64.rpm --prefix=${CMAKE_CURRENT_BINARY_DIR}/sapp --force --nodeps")
diff --git a/test/case/cernet1/cernet1_result.json b/test/case/cernet1/cernet1_result.json
index 6f3d0d2..a5ea365 100644
--- a/test/case/cernet1/cernet1_result.json
+++ b/test/case/cernet1/cernet1_result.json
@@ -841,7 +841,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
- "rr": {},
"name": "DNS_RESULT_19"
},
{
@@ -1222,7 +1221,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
- "rr": {},
"name": "DNS_RESULT_26"
},
{
@@ -1363,7 +1361,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
- "rr": {},
"name": "DNS_RESULT_32"
},
{
@@ -2187,7 +2184,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
- "rr": {},
"name": "DNS_RESULT_55"
},
{
@@ -2325,7 +2321,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
- "rr": {},
"name": "DNS_RESULT_61"
},
{
@@ -2613,7 +2608,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
- "rr": {},
"name": "DNS_RESULT_72"
},
{
@@ -2699,7 +2693,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
- "rr": {},
"name": "DNS_RESULT_76"
},
{
@@ -2937,7 +2930,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
- "rr": {},
"name": "DNS_RESULT_84"
},
{
@@ -3139,7 +3131,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
- "rr": {},
"name": "DNS_RESULT_90"
},
{
@@ -3150,7 +3141,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
- "rr": {},
"name": "DNS_RESULT_91"
},
{
@@ -3161,7 +3151,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
- "rr": {},
"name": "DNS_RESULT_92"
},
{
@@ -3380,7 +3369,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
- "rr": {},
"name": "DNS_RESULT_101"
},
{
diff --git a/test/case/cernet2/cernet2_result.json b/test/case/cernet2/cernet2_result.json
index eb50633..8c97e60 100644
--- a/test/case/cernet2/cernet2_result.json
+++ b/test/case/cernet2/cernet2_result.json
@@ -342,7 +342,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
- "rr": {},
"name": "DNS_RESULT_4"
},
{
@@ -2581,7 +2580,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
- "rr": {},
"name": "DNS_RESULT_66"
},
{
@@ -2592,7 +2590,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
- "rr": {},
"name": "DNS_RESULT_67"
},
{
@@ -3403,7 +3400,6 @@
"dns_qr": 1,
"dns_opcode": 0,
"dns_rd": 1,
- "rr": {},
"name": "DNS_RESULT_87"
}
] \ No newline at end of file
diff --git a/test/case/https/https_result.json b/test/case/https/https_result.json
index 41ce0b4..8c43d46 100644
--- a/test/case/https/https_result.json
+++ b/test/case/https/https_result.json
@@ -69,7 +69,6 @@
"dns_qr": 0,
"dns_opcode": 0,
"dns_rd": 1,
- "rr": {},
"name": "DNS_RESULT_3"
},
{
diff --git a/test/case/multi_pkt_trans_2bytes/multi_pkt_trans_2bytes_result.json b/test/case/multi_pkt_trans_2bytes/multi_pkt_trans_2bytes_result.json
index 420ef7f..41fdf57 100644
--- a/test/case/multi_pkt_trans_2bytes/multi_pkt_trans_2bytes_result.json
+++ b/test/case/multi_pkt_trans_2bytes/multi_pkt_trans_2bytes_result.json
@@ -7,7 +7,6 @@
"dns_qr": 0,
"dns_opcode": 0,
"dns_rd": 1,
- "rr": {},
"name": "DNS_RESULT_1"
},
{
diff --git a/test/case/query/query_result.json b/test/case/query/query_result.json
index 6666fb8..362892c 100644
--- a/test/case/query/query_result.json
+++ b/test/case/query/query_result.json
@@ -30,7 +30,6 @@
"dns_qr": 0,
"dns_opcode": 0,
"dns_rd": 0,
- "rr": {},
"name": "DNS_RESULT_2"
},
{
@@ -64,7 +63,6 @@
"dns_qr": 0,
"dns_opcode": 0,
"dns_rd": 0,
- "rr": {},
"name": "DNS_RESULT_4"
},
{
@@ -121,7 +119,6 @@
"dns_qr": 0,
"dns_opcode": 0,
"dns_rd": 0,
- "rr": {},
"name": "DNS_RESULT_7"
},
{
diff --git a/test/case/srv/srv_result.json b/test/case/srv/srv_result.json
index c520cfc..25a97da 100644
--- a/test/case/srv/srv_result.json
+++ b/test/case/srv/srv_result.json
@@ -7,7 +7,6 @@
"dns_qr": 0,
"dns_opcode": 0,
"dns_rd": 1,
- "rr": {},
"name": "DNS_RESULT_1"
}
] \ No newline at end of file
diff --git a/test/dns_decoder_perf_main.cpp b/test/dns_decoder_perf_main.cpp
index 078e560..3e81287 100644
--- a/test/dns_decoder_perf_main.cpp
+++ b/test/dns_decoder_perf_main.cpp
@@ -103,16 +103,7 @@ extern "C" int commit_test_result_json(cJSON *node, const char *name)
void perf_resource_record_decode(struct dns_message *dns_msg)
{
TIME_START();
- uint16_t n_answer_rr=0;
- uint16_t n_additional_rr=0;
- uint16_t n_authority_rr=0;
- struct dns_resource_record *answer_rr=NULL;
- struct dns_resource_record *additional_rr=NULL;
- struct dns_resource_record *authority_rr=NULL;
-
- dns_message_answer_resource_record_get0(dns_msg, &answer_rr, &n_answer_rr);
- dns_message_authority_resource_record_get0(dns_msg, &authority_rr, &n_authority_rr);
- dns_message_additional_resource_record_get0(dns_msg, &additional_rr, &n_additional_rr);
+
TIME_DIFF();
//fieldstat_easy_histogram_record(main_env->fse.handle, tid, main_env->fse.id[PERF_TAG_QUESTION], &(main_env->fse.tag[PERF_TAG_QUESTION]), 1, time_diff_ns)
}
diff --git a/test/dns_decoder_test.cpp b/test/dns_decoder_test.cpp
index 44931e5..0472ad5 100644
--- a/test/dns_decoder_test.cpp
+++ b/test/dns_decoder_test.cpp
@@ -85,46 +85,13 @@ void dns_decoder_test_message_cb(struct session *ss, int topic_id, const void *m
cJSON_AddNumberToObject(real_result, "dns_rd", (double)(flag->rd));
}
- uint16_t n_answer_rr=0;
- struct dns_resource_record *answer_rr=NULL;
- dns_message_answer_resource_record_get0(dns_msg, &answer_rr, &n_answer_rr);
-
- uint16_t n_authority_rr=0;
- struct dns_resource_record *authority_rr=NULL;
- dns_message_authority_resource_record_get0(dns_msg, &authority_rr, &n_authority_rr);
-
- uint16_t n_additional_rr=0;
- struct dns_resource_record *additional_rr=NULL;
- dns_message_additional_resource_record_get0(dns_msg, &additional_rr, &n_additional_rr);
-
- const char *answer=dns_resource_record_json_exporter(answer_rr, n_answer_rr);
- const char *authority=dns_resource_record_json_exporter(authority_rr, n_authority_rr);
- const char *additional=dns_resource_record_json_exporter(additional_rr, n_additional_rr);
-
- cJSON *rr_array=cJSON_CreateObject();
- if(answer!=NULL)
+ const char *resource_record_str=dns_message_resource_record_json_exporter(dns_msg);
+ if(resource_record_str!=NULL)
{
- cJSON *rr_object=cJSON_Parse(answer);
- cJSON_AddItemToObject(rr_array, "answer", rr_object);
- free((void *)answer);
+ cJSON *rr_array=cJSON_Parse(resource_record_str);
+ cJSON_AddItemToObject(real_result, "rr", rr_array);
}
- if(authority!=NULL)
- {
- cJSON *rr_object=cJSON_Parse(authority);
- cJSON_AddItemToObject(rr_array, "authority", rr_object);
- free((void *)authority);
- }
-
- if(additional!=NULL)
- {
- cJSON *rr_object=cJSON_Parse(additional);
- cJSON_AddItemToObject(rr_array, "additional", rr_object);
- free((void *)additional);
- }
-
- cJSON_AddItemToObject(real_result, "rr", rr_array);
-
if(plugin_env->write_result_enable==1)
{
char *real_result_str=cJSON_Print(real_result);