From d8a0164440b870622636184076a73e679ce52d3d Mon Sep 17 00:00:00 2001 From: Vsevolod Stakhov Date: Wed, 4 Nov 2020 13:18:43 +0000 Subject: [PATCH] [Test] Fighting with windmills in robot --- src/libserver/composites.c | 19 +++++++++++++------ test/functional/cases/109_composites.robot | 11 ++++++++++- test/functional/configs/composites.conf | 6 +++++- 3 files changed, 28 insertions(+), 8 deletions(-) diff --git a/src/libserver/composites.c b/src/libserver/composites.c index 9f7f548ab..f3c25d1bc 100644 --- a/src/libserver/composites.c +++ b/src/libserver/composites.c @@ -460,12 +460,19 @@ rspamd_composite_process_single_symbol (struct composites_data *cd, if (!found) { - msg_debug_composites ("symbol %s in composite %s misses required option %s", - sym, - cd->composite->sym, - (cur_opt->type == RSPAMD_COMPOSITE_OPTION_PLAIN ? - cur_opt->data.match : - rspamd_regexp_get_pattern (cur_opt->data.re))); + if (cur_opt->type == RSPAMD_COMPOSITE_OPTION_PLAIN) { + msg_debug_composites ("symbol %s in composite %s misses required option %s", + sym, + cd->composite->sym, + cur_opt->data.match); + } + else { + msg_debug_composites ("symbol %s in composite %s failed to match regexp %s", + sym, + cd->composite->sym, + rspamd_regexp_get_pattern (cur_opt->data.re)); + } + ms = NULL; break; diff --git a/test/functional/cases/109_composites.robot b/test/functional/cases/109_composites.robot index 8da18fe97..4fb3aee3d 100644 --- a/test/functional/cases/109_composites.robot +++ b/test/functional/cases/109_composites.robot @@ -51,13 +51,22 @@ Composites - Opts RE Miss one Scan File ${MESSAGE} opts=sym1,foo1 Expect Symbol With Score SYMOPTS1 5.00 Do Not Expect Symbol SYMOPTS2 + Do Not Expect Symbol SYMOPTS3 Composites - Opts RE Miss both Scan File ${MESSAGE} opts=sym2 Do Not Expect Symbol SYMOPTS1 Do Not Expect Symbol SYMOPTS2 + Do Not Expect Symbol SYMOPTS3 Composites - Opts RE Hit - Scan File ${MESSAGE} opts=sym2,foo1 + Scan File ${MESSAGE} opts=foo1,sym2 Expect Symbol With Score SYMOPTS2 6.00 Do Not Expect Symbol SYMOPTS1 + Do Not Expect Symbol SYMOPTS3 + +Composites - Opts RE Hit 2 + Scan File ${MESSAGE} opts=foo/,sym2 + Expect Symbol With Score SYMOPTS3 6.00 + Do Not Expect Symbol SYMOPTS2 + Do Not Expect Symbol SYMOPTS1 diff --git a/test/functional/configs/composites.conf b/test/functional/configs/composites.conf index 932b25fc1..d57e09818 100644 --- a/test/functional/configs/composites.conf +++ b/test/functional/configs/composites.conf @@ -73,7 +73,11 @@ composites { } SYMOPTS2 { - expression = "OPTS[/foo.*/,sym2]"; + expression = 'OPTS[/foo[0-9]/,sym2]'; + score = 6.0; + } + SYMOPTS3 { + expression = 'OPTS[sym2,/FoO\\//i]'; score = 6.0; } } -- 2.39.5