diff options
| author | liuxueli <[email protected]> | 2024-06-20 02:33:35 +0000 |
|---|---|---|
| committer | liuxueli <[email protected]> | 2024-06-20 02:33:35 +0000 |
| commit | 5496804914e7adee6a64e9267f34040865611dc2 (patch) | |
| tree | 37ac9f57e8a728d58d86bbb1949af5ef383d438c /test | |
| parent | cae0281c2fbd77c27e12cbd6e497e44ab1f37f94 (diff) | |
Feature: performance test case
Diffstat (limited to 'test')
| -rw-r--r-- | test/CMakeLists.txt | 4 | ||||
| -rw-r--r-- | test/case/cernet1/cernet1_result.json | 12 | ||||
| -rw-r--r-- | test/case/cernet2/cernet2_result.json | 4 | ||||
| -rw-r--r-- | test/case/https/https_result.json | 1 | ||||
| -rw-r--r-- | test/case/multi_pkt_trans_2bytes/multi_pkt_trans_2bytes_result.json | 1 | ||||
| -rw-r--r-- | test/case/query/query_result.json | 3 | ||||
| -rw-r--r-- | test/case/srv/srv_result.json | 1 | ||||
| -rw-r--r-- | test/dns_decoder_perf_main.cpp | 11 | ||||
| -rw-r--r-- | test/dns_decoder_test.cpp | 41 |
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); |
