summaryrefslogtreecommitdiff
path: root/plugin/business/pangu-http/src/test_pattern_replace.cpp
diff options
context:
space:
mode:
authorfengweihao <[email protected]>2019-06-03 15:12:59 +0800
committerfengweihao <[email protected]>2019-06-03 15:12:59 +0800
commitd27208756565b67fa2f071b9dd88b9c8c523adf7 (patch)
tree3bb71b25c9e52d41090b72b6d9dacaf38ebeec19 /plugin/business/pangu-http/src/test_pattern_replace.cpp
parent044d512184002cfaeaf12bd568e33d76beb99172 (diff)
1.修改hjack读取profile文件方式
2.命中query替换规则后,http2适配http修改 3.添加URI测试用例
Diffstat (limited to 'plugin/business/pangu-http/src/test_pattern_replace.cpp')
-rw-r--r--plugin/business/pangu-http/src/test_pattern_replace.cpp39
1 files changed, 38 insertions, 1 deletions
diff --git a/plugin/business/pangu-http/src/test_pattern_replace.cpp b/plugin/business/pangu-http/src/test_pattern_replace.cpp
index 5017ee5..23638a9 100644
--- a/plugin/business/pangu-http/src/test_pattern_replace.cpp
+++ b/plugin/business/pangu-http/src/test_pattern_replace.cpp
@@ -152,7 +152,44 @@ TEST(PatternReplace, CaseInsensitiveRussian)
EXPECT_TRUE(output_sz>0);
EXPECT_TRUE(NULL==strstr(output, find));
EXPECT_TRUE(NULL!=strstr(output, replacement));
-
+
+ free(output);
+ return;
+}
+
+TEST(PatternReplace, QueryAdd)
+{
+ const char * find = "(?<=\\?|^|&)q=([^&|^#]*)(?=&|$)";
+ const char* replacement="q=find";
+ const char* input="https://cn.bing.com/search?ei=pQnxXPS-LPSGr7wP3u6usAY&q=test&oq=test&gs_l=psy-ab.3..0i131i67j0l8j0i131.26791.27227..27885...0.0..0.235.683.0j3j1......0....1..gws-wiz.......0i71j0i67.klHdqBPS88k";
+ char* output=NULL;
+ size_t output_sz=0;
+
+ simple_replace(find, replacement, input, strlen(input),&output, &output_sz);
+ EXPECT_TRUE(output_sz>0);
+ EXPECT_TRUE(NULL==strstr(output, find));
+ EXPECT_TRUE(NULL!=strstr(output, replacement));
+
+ printf("%s\n", output);
+ free(output);
+ return;
+}
+
+TEST(PatternReplace, QueryDel)
+{
+ const char * find = "(?<=\\?|^|&)sk=([^&|^#]*)(&|$)";
+ const char* replacement="";
+ const char* input="https://cn.bing.com/&search?q=find&qs=n&form=QBLH&sp=-1&pq=find&sk=";
+
+ char* output=NULL;
+ size_t output_sz=0;
+
+ simple_replace(find, replacement, input, strlen(input),&output, &output_sz);
+ EXPECT_TRUE(output_sz>0);
+ EXPECT_TRUE(NULL==strstr(output, find));
+ EXPECT_TRUE(NULL!=strstr(output, replacement));
+
+ printf("%s\n", output);
free(output);
return;
}