aboutsummaryrefslogtreecommitdiffstats
path: root/test/lua/unit/redis_stat.lua
diff options
context:
space:
mode:
Diffstat (limited to 'test/lua/unit/redis_stat.lua')
-rw-r--r--test/lua/unit/redis_stat.lua37
1 files changed, 30 insertions, 7 deletions
diff --git a/test/lua/unit/redis_stat.lua b/test/lua/unit/redis_stat.lua
index f994bdf01..f4e02f5ef 100644
--- a/test/lua/unit/redis_stat.lua
+++ b/test/lua/unit/redis_stat.lua
@@ -1,8 +1,9 @@
-
+
context("Redis statistics unit tests", function()
local task = require("rspamd_task")
local ffi = require("ffi")
+ local rspamd_util = require("rspamd_util")
ffi.cdef[[
struct rspamd_statfile_config {
const char *symbol;
@@ -16,7 +17,7 @@ context("Redis statistics unit tests", function()
struct rspamd_statfile_config *stcf,
struct rspamd_task *task,
char **target);
- struct rspamd_task * rspamd_task_new(struct rspamd_worker *worker);
+ struct rspamd_task * rspamd_task_new(struct rspamd_worker *worker, struct rspamd_config *cfg);
int rspamd_task_add_recipient (struct rspamd_task *task, const char *rcpt);
int rspamd_task_add_sender (struct rspamd_task *task, const char *sender);
]]
@@ -30,14 +31,36 @@ context("Redis statistics unit tests", function()
{"%r%l", "test@example.comlabel"},
{"%f-from", "test@example.com-from"}
}
- local stcf = ffi.new("struct rspamd_statfile_config",
+ local config = {
+ options = {
+ filters = { 'spf', 'dkim', 'regexp' },
+ url_tld = tld_file,
+ dns = {
+ nameserver = { '8.8.8.8' }
+ },
+ },
+ logging = {
+ type = 'console',
+ level = 'debug'
+ },
+ metric = {
+ name = 'default',
+ actions = {
+ reject = 100500,
+ },
+ unknown_weight = 1
+ }
+ }
+ local cfg = rspamd_util.config_from_ucl(config)
+ assert_not_nil(cfg)
+ local stcf = ffi.new("struct rspamd_statfile_config",
{symbol="symbol",label="label"})
- local t = ffi.C.rspamd_task_new(nil)
-
+ local t = ffi.C.rspamd_task_new(nil, cfg)
+
assert_equal(ffi.C.rspamd_task_add_recipient(t, "Test <test@example.com>"), 1)
assert_equal(ffi.C.rspamd_task_add_recipient(t, "Test1 <test1@example.com>"), 1)
assert_equal(ffi.C.rspamd_task_add_sender(t, "Test <test@example.com>"), 1)
-
+
for _,c in ipairs(cases) do
local pbuf = ffi.new 'char *[1]'
local sz = ffi.C.rspamd_redis_expand_object(c[1], stcf, t, pbuf)
@@ -45,4 +68,4 @@ context("Redis statistics unit tests", function()
assert_equal(s, c[2])
end
end)
-end) \ No newline at end of file
+end)