summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorAndrew Lewis <nerf@judo.za.org>2024-01-01 16:01:50 +0200
committerAndrew Lewis <nerf@judo.za.org>2024-01-01 16:01:50 +0200
commit1fa1fe96cd429562657952f55a4b44ed90cf144c (patch)
tree8e944e1bc4d32f7055f68ddc1b37ef7348218e9b /test
parentecd96adf48982e99e3144fa0fdf74b83661fa544 (diff)
downloadrspamd-1fa1fe96cd429562657952f55a4b44ed90cf144c.tar.gz
rspamd-1fa1fe96cd429562657952f55a4b44ed90cf144c.zip
[Test] Some more tests for logging
Diffstat (limited to 'test')
-rw-r--r--test/functional/cases/410_logging/000_console/000_systemd_logger.robot (renamed from test/functional/cases/410_systemd_logger.robot)5
-rw-r--r--test/functional/cases/410_logging/000_console/001_timestamps.robot24
-rw-r--r--test/functional/cases/410_logging/001_file/000_json.robot17
-rw-r--r--test/functional/configs/loggingtest-local.conf5
-rw-r--r--test/functional/configs/loggingtest.conf (renamed from test/functional/configs/systemd.conf)2
-rw-r--r--test/functional/configs/systemd-local.conf4
-rw-r--r--test/functional/lib/rspamd.py9
7 files changed, 60 insertions, 6 deletions
diff --git a/test/functional/cases/410_systemd_logger.robot b/test/functional/cases/410_logging/000_console/000_systemd_logger.robot
index f90d16065..88178461b 100644
--- a/test/functional/cases/410_systemd_logger.robot
+++ b/test/functional/cases/410_logging/000_console/000_systemd_logger.robot
@@ -6,7 +6,10 @@ Resource ${RSPAMD_TESTDIR}/lib/rspamd.robot
Variables ${RSPAMD_TESTDIR}/lib/vars.py
*** Variables ***
-${CONFIG} ${RSPAMD_TESTDIR}/configs/systemd.conf
+${CONFIG} ${RSPAMD_TESTDIR}/configs/loggingtest.conf
+${RSPAMD_LOGGINGTYPE} console
+${RSPAMD_JSON} false
+${RSPAMD_SYSTEMD} true
${RSPAMD_SCOPE} Suite
*** Test Cases ***
diff --git a/test/functional/cases/410_logging/000_console/001_timestamps.robot b/test/functional/cases/410_logging/000_console/001_timestamps.robot
new file mode 100644
index 000000000..bd8e2c349
--- /dev/null
+++ b/test/functional/cases/410_logging/000_console/001_timestamps.robot
@@ -0,0 +1,24 @@
+*** Settings ***
+Suite Setup Rspamd Setup
+Suite Teardown Console Timestamps Teardown
+Library ${RSPAMD_TESTDIR}/lib/rspamd.py
+Resource ${RSPAMD_TESTDIR}/lib/rspamd.robot
+Variables ${RSPAMD_TESTDIR}/lib/vars.py
+
+*** Variables ***
+${CONFIG} ${RSPAMD_TESTDIR}/configs/loggingtest.conf
+${RSPAMD_LOGGINGTYPE} console
+${RSPAMD_JSON} false
+${RSPAMD_SYSTEMD} false
+${RSPAMD_SCOPE} Suite
+
+*** Test Cases ***
+EMPTY TEST
+ Pass Execution No worries
+
+*** Keywords ***
+Console Timestamps Teardown
+ Touch ${RSPAMD_TMPDIR}/rspamd.log
+ Rspamd Teardown
+ ${log} = Get File ${EXECDIR}/robot-save/rspamd.stderr.last
+ Should Match Regexp ${log} \\n\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2} #\\d+\\(main\\) lua; lua_cfg_transform\\.lua:\\d+: overriding actions from the legacy metric settings\\n
diff --git a/test/functional/cases/410_logging/001_file/000_json.robot b/test/functional/cases/410_logging/001_file/000_json.robot
new file mode 100644
index 000000000..a2f04e85c
--- /dev/null
+++ b/test/functional/cases/410_logging/001_file/000_json.robot
@@ -0,0 +1,17 @@
+*** Settings ***
+Test Setup Rspamd Setup
+Library ${RSPAMD_TESTDIR}/lib/rspamd.py
+Resource ${RSPAMD_TESTDIR}/lib/rspamd.robot
+Variables ${RSPAMD_TESTDIR}/lib/vars.py
+
+*** Variables ***
+${CONFIG} ${RSPAMD_TESTDIR}/configs/loggingtest.conf
+${RSPAMD_LOGGINGTYPE} file
+${RSPAMD_JSON} true
+${RSPAMD_SYSTEMD} true
+${RSPAMD_SCOPE} Test
+
+*** Test Cases ***
+JSON LOGS
+ Rspamd Teardown
+ Check JSON Log ${EXECDIR}/robot-save/rspamd.log.last
diff --git a/test/functional/configs/loggingtest-local.conf b/test/functional/configs/loggingtest-local.conf
new file mode 100644
index 000000000..7330d972e
--- /dev/null
+++ b/test/functional/configs/loggingtest-local.conf
@@ -0,0 +1,5 @@
+logging {
+ type = "{= env.LOGGINGTYPE =}";
+ json = {= env.JSON =};
+ systemd = {= env.SYSTEMD =};
+}
diff --git a/test/functional/configs/systemd.conf b/test/functional/configs/loggingtest.conf
index f57827c48..99026df81 100644
--- a/test/functional/configs/systemd.conf
+++ b/test/functional/configs/loggingtest.conf
@@ -1,3 +1,3 @@
.include(duplicate=append,priority=0) "{= env.TESTDIR =}/configs/trivial.conf"
-.include(priority=1,duplicate=merge) "{= env.TESTDIR =}/configs/systemd-local.conf"
+.include(priority=1,duplicate=merge) "{= env.TESTDIR =}/configs/loggingtest-local.conf"
diff --git a/test/functional/configs/systemd-local.conf b/test/functional/configs/systemd-local.conf
deleted file mode 100644
index ed796a95e..000000000
--- a/test/functional/configs/systemd-local.conf
+++ /dev/null
@@ -1,4 +0,0 @@
-logging {
- type = "console";
- systemd = true;
-}
diff --git a/test/functional/lib/rspamd.py b/test/functional/lib/rspamd.py
index 49c21a449..3976ca949 100644
--- a/test/functional/lib/rspamd.py
+++ b/test/functional/lib/rspamd.py
@@ -24,6 +24,15 @@ def Check_JSON(j):
assert 'error' not in d
return d
+def check_json_log(fn):
+ line_count = 0
+ f = open(fn, 'r')
+ for l in f.readlines():
+ d = demjson.decode(l, strict=True)
+ assert len(d) > 0
+ line_count = line_count + 1
+ assert line_count > 0
+
def cleanup_temporary_directory(directory):
shutil.rmtree(directory)