From 9e91bc09730b864b04c2c13e7f38fa4249c73d09 Mon Sep 17 00:00:00 2001 From: zhengchao Date: Wed, 20 Oct 2021 10:54:55 +0300 Subject: [PATCH] =?UTF-8?q?Expr=5Fplus=E8=A1=A8=E5=A2=9E=E5=8A=A0=E4=B8=AD?= =?UTF-8?q?=E8=8B=B1=E6=96=87=E6=B7=B7=E5=90=88district=E7=9A=84=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E7=94=A8=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- test/maat_json.json | 29 ++++++++++++++++++++++++++++- test/test_maatframe.cpp | 24 +++++++++++++++++++----- 2 files changed, 47 insertions(+), 6 deletions(-) diff --git a/test/maat_json.json b/test/maat_json.json index 19d086b..6ae6632 100644 --- a/test/maat_json.json +++ b/test/maat_json.json @@ -366,7 +366,7 @@ "action": 1, "do_blacklist": 1, "do_log": 1, - "user_region": "anything", + "user_region": "StringScan.ExprPlus", "is_valid": "yes", "groups": [ { @@ -2290,6 +2290,33 @@ "group_name": "Untitled" } ] + }, + { + "compile_id": 190, + "service": 1, + "action": 1, + "do_blacklist": 1, + "do_log": 1, + "user_region": "StringScan.ExprPlus", + "is_valid": "yes", + "groups": [ + { + "group_name": "Untitled", + "regions": [ + { + "table_name": "HTTP_SIGNATURE", + "table_type": "expr_plus", + "table_content": { + "district": "我的DistrIct", + "keywords": "addis&sapphire", + "expr_type": "and", + "match_method": "sub", + "format": "uncase plain" + } + } + ] + } + ] } ], "plugin_table": [ diff --git a/test/test_maatframe.cpp b/test/test_maatframe.cpp index 336500c..3210c24 100644 --- a/test/test_maatframe.cpp +++ b/test/test_maatframe.cpp @@ -569,25 +569,39 @@ TEST(StringScan, ExprPlus) int table_id=0; struct Maat_rule_t result[4]; int found_pos[4]; - const char* region_name="HTTP URL"; - const char* scan_data="http://www.cyberessays.com/search_results.php?action=search&query=abckkk,1234567"; + const char* region_name1="HTTP URL"; + const char* region_name2="我的diStricT"; + const char* scan_data1="http://www.cyberessays.com/search_results.php?action=search&query=abckkk,1234567"; + const char* scan_data2="Addis Sapphire Hotel"; table_id=Maat_table_register(g_feather, "HTTP_SIGNATURE"); ASSERT_GT(table_id, 0); scan_status_t mid=NULL; - ret=Maat_full_scan_string(g_feather, table_id, CHARSET_GBK, scan_data, strlen(scan_data), + ret=Maat_full_scan_string(g_feather, table_id, CHARSET_GBK, scan_data1, strlen(scan_data1), result, found_pos, 4, &mid, 0); EXPECT_EQ(ret, -1);//Should return error for district not setting. - ret=Maat_set_scan_status(g_feather, &mid, MAAT_SET_SCAN_DISTRICT, region_name, strlen(region_name)); + ret=Maat_set_scan_status(g_feather, &mid, MAAT_SET_SCAN_DISTRICT, region_name1, strlen(region_name1)); ASSERT_EQ(ret, 0); - ret=Maat_full_scan_string(g_feather, table_id, CHARSET_GBK, scan_data, strlen(scan_data), + ret=Maat_full_scan_string(g_feather, table_id, CHARSET_GBK, scan_data1, strlen(scan_data1), result, found_pos, 4, &mid, 0); EXPECT_EQ(ret, 1); EXPECT_EQ(result[0].config_id, 128); Maat_clean_status(&mid); + + ret=Maat_set_scan_status(g_feather, &mid, MAAT_SET_SCAN_DISTRICT, region_name2, strlen(region_name2)); + ASSERT_EQ(ret, 0); + ret=Maat_full_scan_string(g_feather, table_id, CHARSET_GBK, scan_data2, strlen(scan_data2), + result, found_pos, 4, + &mid, 0); + EXPECT_EQ(ret, 1); + EXPECT_EQ(result[0].config_id, 190); + + Maat_clean_status(&mid); + + return; }