aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2020-11-05 10:41:13 +0000
committerGitHub <noreply@github.com>2020-11-05 10:41:13 +0000
commit9eefa75fde25c5c438ff65f53d60618c1c42fa15 (patch)
tree6b9b812de47b4e5cfa4b1954d7cc149c70125586 /test
parent2a737f2c494caa6a99233a489818a1e276dd3476 (diff)
parent4bb5f20e1f6e2826664744f717d0d317cf97c444 (diff)
downloadrspamd-9eefa75fde25c5c438ff65f53d60618c1c42fa15.tar.gz
rspamd-9eefa75fde25c5c438ff65f53d60618c1c42fa15.zip
Merge pull request #3538 from fatalbanana/conditions_test
[Test] Multiple conditions
Diffstat (limited to 'test')
-rw-r--r--test/functional/cases/101_lua.robot8
-rw-r--r--test/functional/lua/conditions.lua22
2 files changed, 30 insertions, 0 deletions
diff --git a/test/functional/cases/101_lua.robot b/test/functional/cases/101_lua.robot
index 6e40c7300..215ecd086 100644
--- a/test/functional/cases/101_lua.robot
+++ b/test/functional/cases/101_lua.robot
@@ -61,6 +61,14 @@ Option Order
Expect Symbol With Exact Options OPTION_ORDER one two three 4 5 a
Expect Symbol With Exact Options TBL_OPTION_ORDER one two three 4 5 a
+Rule conditions
+ [Setup] Lua Replace Setup ${TESTDIR}/lua/conditions.lua
+ [Teardown] Lua Replace Teardown
+ Scan File ${MESSAGE}
+ Expect Symbol With Option ANY_A hello3
+ Expect Symbol With Option ANY_A hello1
+ Expect Symbol With Option ANY_A hello2
+
*** Keywords ***
Lua Setup
[Arguments] ${LUA_SCRIPT}
diff --git a/test/functional/lua/conditions.lua b/test/functional/lua/conditions.lua
new file mode 100644
index 000000000..2baa04bfe
--- /dev/null
+++ b/test/functional/lua/conditions.lua
@@ -0,0 +1,22 @@
+local logger = require 'rspamd_logger'
+
+rspamd_config:register_symbol({
+ name = 'ANY_A',
+ score = -1.0,
+ group = "any",
+ callback = function()
+ return true, 'hello3'
+ end
+})
+
+rspamd_config:add_condition('ANY_A', function(task)
+ logger.infox(task, 'hello from condition1')
+ task:insert_result('ANY_A', 1.0, 'hello1')
+ return true
+end)
+
+rspamd_config:add_condition('ANY_A', function(task)
+ logger.infox(task, 'hello from condition2')
+ task:insert_result('ANY_A', 1.0, 'hello2')
+ return true
+end)