commit 4f3008f: [Test] Add tests for grow_factor

Andrew Lewis nerf at judo.za.org
Mon Jul 29 17:55:31 UTC 2024


Author: Andrew Lewis
Date: 2024-04-10 16:30:56 +0200
URL: https://github.com/rspamd/rspamd/commit/4f3008f9682d4edb741913b2ee2aa9cd831f7d04 (refs/pull/4918/head)

[Test] Add tests for grow_factor

---
 test/functional/cases/450_grow_factor.robot        | 37 ++++++++++++++++++++++
 test/functional/configs/grow_factor-local.conf     |  8 +++++
 .../{known_senders.conf => grow_factor.conf}       |  4 +--
 test/functional/lua/simple_plus.lua                | 28 ++++++++++++++++
 4 files changed, 75 insertions(+), 2 deletions(-)

diff --git a/test/functional/cases/450_grow_factor.robot b/test/functional/cases/450_grow_factor.robot
new file mode 100644
index 000000000..518c3ed82
--- /dev/null
+++ b/test/functional/cases/450_grow_factor.robot
@@ -0,0 +1,37 @@
+*** Settings ***
+Suite Setup     Rspamd Setup
+Suite Teardown  Rspamd Teardown
+Library         ${RSPAMD_TESTDIR}/lib/rspamd.py
+Resource        ${RSPAMD_TESTDIR}/lib/rspamd.robot
+Variables       ${RSPAMD_TESTDIR}/lib/vars.py
+
+*** Variables ***
+${CONFIG}               ${RSPAMD_TESTDIR}/configs/grow_factor.conf
+${HAM_MESSAGE}          ${RSPAMD_TESTDIR}/messages/ham.eml
+${RSPAMD_SCOPE}         Suite
+&{RESCORED_SYMBOLS}
+...  SIMPLE_TEST_001=0.013067
+...  SIMPLE_TEST_002=14.374194
+...  SIMPLE_TEST_003=6.533724
+...  SIMPLE_TEST_004=13.067449
+...  SIMPLE_TEST_005=0.013067
+...  SIMPLE_TEST_006=0.130674
+...  SIMPLE_TEST_007=0.143741
+...  SIMPLE_TEST_008=0.156809
+...  SIMPLE_TEST_009=0.169876
+...  SIMPLE_TEST_010=0.182944
+...  SIMPLE_TEST_011=-0.010000
+...  SIMPLE_TEST_012=-0.100000
+...  SIMPLE_TEST_013=-10.000000
+
+*** Test Cases ***
+CHECK BASIC
+  Scan File  ${HAM_MESSAGE}
+  ...  Settings={groups_enabled = [simple_tests]}
+  Expect Required Score  15
+  Expect Symbols With Scores  &{RESCORED_SYMBOLS}
+
+CHECK NOREJECT
+  Scan File  ${HAM_MESSAGE}
+  ...  Settings={actions { reject = null, "add header" = 15 }, groups_enabled = [simple_tests]}
+  Expect Symbols With Scores  &{RESCORED_SYMBOLS}
diff --git a/test/functional/configs/grow_factor-local.conf b/test/functional/configs/grow_factor-local.conf
new file mode 100644
index 000000000..cdf1bf436
--- /dev/null
+++ b/test/functional/configs/grow_factor-local.conf
@@ -0,0 +1,8 @@
+metric {
+  actions {
+    grow_factor = 1.1;
+    reject = 15;
+    "add header" = 6;
+    greylist = 4;
+  }
+}
diff --git a/test/functional/configs/known_senders.conf b/test/functional/configs/grow_factor.conf
similarity index 79%
copy from test/functional/configs/known_senders.conf
copy to test/functional/configs/grow_factor.conf
index 0880ceaf7..e26faa54b 100644
--- a/test/functional/configs/known_senders.conf
+++ b/test/functional/configs/grow_factor.conf
@@ -1,7 +1,7 @@
 .include "{= env.TESTDIR =}/../../conf/rspamd.conf"
 
-lua = "{= env.TESTDIR =}/lua/test_coverage.lua"
+lua = "{= env.TESTDIR =}/lua/simple_plus.lua"
 
-.include(priority=1,duplicate=merge) "{= env.TESTDIR =}/configs/known_senders-local.conf"
+.include(priority=1,duplicate=merge) "{= env.TESTDIR =}/configs/grow_factor-local.conf"
 .include(priority=1,duplicate=merge) "{= env.TESTDIR =}/configs/merged-local.conf"
 .include(priority=2,duplicate=replace) "{= env.TESTDIR =}/configs/merged-override.conf"
diff --git a/test/functional/lua/simple_plus.lua b/test/functional/lua/simple_plus.lua
new file mode 100644
index 000000000..57aee6ae3
--- /dev/null
+++ b/test/functional/lua/simple_plus.lua
@@ -0,0 +1,28 @@
+local test_symbols = {
+  SIMPLE_TEST_001 = 0.01,
+  SIMPLE_TEST_002 = 11,
+  SIMPLE_TEST_003 = 5.0,
+  SIMPLE_TEST_004 = 10.0,
+  SIMPLE_TEST_005 = 0.01,
+  SIMPLE_TEST_006 = 0.10,
+  SIMPLE_TEST_007 = 0.11,
+  SIMPLE_TEST_008 = 0.12,
+  SIMPLE_TEST_009 = 0.13,
+  SIMPLE_TEST_010 = 0.14,
+  SIMPLE_TEST_011 = -0.01,
+  SIMPLE_TEST_012 = -0.1,
+  SIMPLE_TEST_013 = -10.0,
+}
+
+for k, v in pairs(test_symbols) do
+
+  rspamd_config:register_symbol({
+    name = k,
+    group = 'simple_tests',
+    score = v,
+    callback = function()
+      return true
+    end
+  })
+
+end


More information about the Commits mailing list