aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2015-11-20 16:33:34 +0000
committerVsevolod Stakhov <vsevolod@highsecure.ru>2015-11-20 16:33:34 +0000
commitc3896936f524bd19d732b5034c87058260bd04e6 (patch)
tree1518d2aef66c4ffe6e171b596d15e9c94d2194d0
parent13cb93001a2cb7dbf7db85b25ac22558da4f610b (diff)
downloadrspamd-c3896936f524bd19d732b5034c87058260bd04e6.tar.gz
rspamd-c3896936f524bd19d732b5034c87058260bd04e6.zip
Fix tests
-rw-r--r--test/lua/unit/redis_stat.lua37
-rw-r--r--test/rspamd_test_suite.c8
-rw-r--r--test/rspamd_upstream_test.c11
3 files changed, 38 insertions, 18 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)
diff --git a/test/rspamd_test_suite.c b/test/rspamd_test_suite.c
index 97d0565b8..4ba11ea0f 100644
--- a/test/rspamd_test_suite.c
+++ b/test/rspamd_test_suite.c
@@ -16,10 +16,8 @@ main (int argc, char **argv)
rspamd_main = (struct rspamd_main *)g_malloc (sizeof (struct rspamd_main));
memset (rspamd_main, 0, sizeof (struct rspamd_main));
rspamd_main->server_pool = rspamd_mempool_new (rspamd_mempool_suggest_size (), NULL);
- rspamd_main->cfg = (struct rspamd_config *)g_malloc (sizeof (struct rspamd_config));
- cfg = rspamd_main->cfg;
- memset (cfg, 0, sizeof (struct rspamd_config));
- rspamd_init_cfg (cfg, FALSE);
+ cfg = rspamd_config_new ();
+ rspamd_main->cfg = cfg;
cfg->cfg_pool = rspamd_mempool_new (rspamd_mempool_suggest_size (), NULL);
cfg->log_type = RSPAMD_LOG_CONSOLE;
cfg->log_level = G_LOG_LEVEL_INFO;
@@ -29,7 +27,7 @@ main (int argc, char **argv)
g_test_init (&argc, &argv, NULL);
- rspamd_init_libs ();
+ cfg->libs_ctx = rspamd_init_libs ();
rspamd_stat_init (cfg);
base = event_init ();
diff --git a/test/rspamd_upstream_test.c b/test/rspamd_upstream_test.c
index 528b0a9dc..0cf163322 100644
--- a/test/rspamd_upstream_test.c
+++ b/test/rspamd_upstream_test.c
@@ -85,10 +85,10 @@ rspamd_upstream_test_func (void)
resolver = dns_resolver_init (NULL, ev_base, cfg);
- rspamd_upstreams_library_init (resolver->r, ev_base);
- rspamd_upstreams_library_config (cfg);
+ cfg->ups_ctx = rspamd_upstreams_library_init (resolver->r, ev_base);
+ rspamd_upstreams_library_config (cfg, cfg->ups_ctx);
- ls = rspamd_upstreams_create ();
+ ls = rspamd_upstreams_create (cfg->ups_ctx);
g_assert (rspamd_upstreams_parse_line (ls, test_upstream_list, 443, NULL));
g_assert (rspamd_upstreams_count (ls) == 3);
@@ -105,7 +105,7 @@ rspamd_upstream_test_func (void)
rspamd_upstream_test_method (ls, RSPAMD_UPSTREAM_ROUND_ROBIN, "microsoft.com");
/* Test stable hashing */
- nls = rspamd_upstreams_create ();
+ nls = rspamd_upstreams_create (cfg->ups_ctx);
g_assert (rspamd_upstreams_parse_line (nls, test_upstream_list, 443, NULL));
g_assert (rspamd_upstreams_parse_line (nls, new_upstream_list, 443, NULL));
for (i = 0; i < assumptions; i ++) {
@@ -135,7 +135,7 @@ rspamd_upstream_test_func (void)
/*
* Test v4/v6 priorities
*/
- nls = rspamd_upstreams_create ();
+ nls = rspamd_upstreams_create (cfg->ups_ctx);
g_assert (rspamd_upstreams_add_upstream (nls, "127.0.0.1", 0, NULL));
up = rspamd_upstream_get (nls, RSPAMD_UPSTREAM_RANDOM);
rspamd_parse_inet_address (&paddr, "127.0.0.2", 0);
@@ -169,6 +169,5 @@ rspamd_upstream_test_func (void)
event_base_loop (ev_base, 0);
g_assert (rspamd_upstreams_alive (ls) == 3);
- g_free (cfg);
rspamd_upstreams_destroy (ls);
}