aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2018-10-01 18:17:07 +0100
committerVsevolod Stakhov <vsevolod@highsecure.ru>2018-10-01 18:17:07 +0100
commit647986d925162a8bd1ee18dde1b074e3edabb22d (patch)
treef7ba7fe13865ce99f7490fd48de371140f1c8b05 /test
parentc9ecda5cf992d7b8742f3420bbd62dbc81eb3560 (diff)
downloadrspamd-647986d925162a8bd1ee18dde1b074e3edabb22d.tar.gz
rspamd-647986d925162a8bd1ee18dde1b074e3edabb22d.zip
[Test] Fix and extend whitelist tests
Diffstat (limited to 'test')
-rw-r--r--test/functional/cases/123_whitelist.robot31
-rw-r--r--test/functional/configs/maps/domains.list6
-rw-r--r--test/functional/configs/whitelist.conf47
3 files changed, 35 insertions, 49 deletions
diff --git a/test/functional/cases/123_whitelist.robot b/test/functional/cases/123_whitelist.robot
index 9ca57b9ec..570c43bf8 100644
--- a/test/functional/cases/123_whitelist.robot
+++ b/test/functional/cases/123_whitelist.robot
@@ -9,6 +9,10 @@ Variables ${TESTDIR}/lib/vars.py
${CONFIG} ${TESTDIR}/configs/plugins.conf
${M_DMARC_OK} ${TESTDIR}/messages/dmarc/pass_none.eml
${M_DMARC_BAD} ${TESTDIR}/messages/dmarc/fail_none.eml
+
+${M_DKIM_RSPAMD_OK} ${TESTDIR}/messages/dmarc/good_dkim_rspamd.eml
+${M_DKIM_RSPAMD_BAD} ${TESTDIR}/messages/dmarc/bad_dkim_rspamd.eml
+
${UTF_MESSAGE} ${TESTDIR}/messages/utf.eml
${RSPAMD_SCOPE} Suite
${URL_TLD} ${TESTDIR}/../lua/unit/test_tld.dat
@@ -16,12 +20,12 @@ ${URL_TLD} ${TESTDIR}/../lua/unit/test_tld.dat
*** Test Cases ***
WHITELISTS
${result} = Scan Message With Rspamc ${M_DMARC_OK} -i 8.8.4.4 -F foo@spf.cacophony.za.org
- Check Rspamc ${result} WHITELIST_DKIM (-1
- Should Contain ${result.stdout} STRICT_DMARC (-3
- Should Contain ${result.stdout} WHITELIST_DDS (-3
- Should Contain ${result.stdout} WHITELIST_DMARC (-2
- Should Contain ${result.stdout} WHITELIST_DMARC_DKIM (-2
- Should Contain ${result.stdout} WHITELIST_SPF (-1
+ Check Rspamc ${result} WHITELIST_DKIM (-
+ Should Contain ${result.stdout} STRICT_DMARC (-
+ Should Contain ${result.stdout} WHITELIST_DDS (-
+ Should Contain ${result.stdout} WHITELIST_DMARC (-
+ Should Contain ${result.stdout} WHITELIST_DMARC_DKIM (-
+ Should Contain ${result.stdout} WHITELIST_SPF (-
Should Not Contain ${result.stdout} BLACKLIST_SPF (
Should Not Contain ${result.stdout} BLACKLIST_DKIM (
Should Not Contain ${result.stdout} BLACKLIST_DMARC (
@@ -38,13 +42,24 @@ BLACKLISTS
Should Contain ${result.stdout} BLACKLIST_SPF (3
Should Contain ${result.stdout} STRICT_DMARC (3
Should Contain ${result.stdout} BLACKLIST_DDS (3
- Should Contain ${result.stdout} BLACKLIST_DMARC (3
+ Should Contain ${result.stdout} BLACKLIST_DMARC (2
Should Not Contain ${result.stdout} WHITELIST_DDS (
Should Not Contain ${result.stdout} WHITELIST_SPF (
- Should Not Contain ${result.stdout} WHITEIST_DKIM (
+ Should Not Contain ${result.stdout} WHITELIST_DKIM (
Should Not Contain ${result.stdout} WHITELIST_DMARC (
Should Not Contain ${result.stdout} WHITELIST_DMARC_DKIM (
+WHITELIST_WL_ONLY
+ ${result} = Scan Message With Rspamc ${M_DKIM_RSPAMD_OK}
+ Check Rspamc ${result} WHITELIST_DKIM (-2
+ Should Not Contain ${result.stdout} BLACKLIST_DKIM (
+
+BLACKLISTS_WL_ONLY
+ ${result} = Scan Message With Rspamc ${M_DKIM_RSPAMD_BAD}
+ Check Rspamc ${result} DKIM_REJECT (
+ Should Not Contain ${result.stdout} WHITELIST_DKIM (
+ Should Not Contain ${result.stdout} BLACKLIST_DKIM (
+
*** Keywords ***
Whitelist Setup
${PLUGIN_CONFIG} = Get File ${TESTDIR}/configs/whitelist.conf
diff --git a/test/functional/configs/maps/domains.list b/test/functional/configs/maps/domains.list
index f0b635852..04b0a9b12 100644
--- a/test/functional/configs/maps/domains.list
+++ b/test/functional/configs/maps/domains.list
@@ -1,3 +1,5 @@
example.com
-cacophony.za.org
-#other.com
+cacophony.za.org both:1.0
+highsecure.ru bl:1.0
+rspamd.com wl:2.0
+#other.com \ No newline at end of file
diff --git a/test/functional/configs/whitelist.conf b/test/functional/configs/whitelist.conf
index 9b8c3af63..7769f5cd4 100644
--- a/test/functional/configs/whitelist.conf
+++ b/test/functional/configs/whitelist.conf
@@ -3,16 +3,6 @@ dmarc {}
whitelist {
rules {
- "BLACKLIST_DDS" = {
- blacklist = true;
- valid_dkim = true;
- valid_dmarc = true;
- valid_spf = true;
- domains = [
- "${TESTDIR}/configs/maps/domains.list",
- ];
- score = 3.0
- }
"WHITELIST_DDS" = {
valid_dkim = true;
@@ -21,7 +11,8 @@ whitelist {
domains = [
"${TESTDIR}/configs/maps/domains.list",
];
- score = -3.0
+ score = -3.0;
+ inverse_symbol = "BLACKLIST_DDS";
}
"WHITELIST_DKIM" = {
@@ -30,16 +21,8 @@ whitelist {
"${TESTDIR}/configs/maps/domains.list",
];
description = "Mail comes from the whitelisted domain and has a valid DKIM signature";
- score = -1.0
- }
-
- "BLACKLIST_DKIM" = {
- blacklist = true;
- valid_dkim = true;
- domains = [
- "${TESTDIR}/configs/maps/domains.list",
- ];
- score = 3.0
+ score = -1.0;
+ inverse_symbol = "BLACKLIST_DKIM";
}
"WHITELIST_SPF" = {
@@ -48,16 +31,9 @@ whitelist {
"${TESTDIR}/configs/maps/domains.list",
];
score = -1.0
+ inverse_multiplier = 3.0
description = "Mail comes from the whitelisted domain and has a valid SPF policy";
- }
-
- "BLACKLIST_SPF" = {
- blacklist = true;
- valid_spf = true;
- domains = [
- "${TESTDIR}/configs/maps/domains.list",
- ];
- score = 3.0
+ inverse_symbol = "BLACKLIST_SPF";
}
"WHITELIST_DMARC_DKIM" = {
@@ -68,6 +44,7 @@ whitelist {
];
score = -2.0;
description = "Mail comes from the whitelisted domain and has valid DMARC and DKIM policies";
+ inverse_symbol = "BLACKLIST_DMARC_DKIM";
}
"WHITELIST_DMARC" = {
@@ -77,15 +54,7 @@ whitelist {
];
score = -2.0;
description = "Mail comes from the whitelisted domain and has valid DMARC policy";
- }
-
- "BLACKLIST_DMARC" = {
- blacklist = true;
- valid_dmarc = true;
- domains = [
- "${TESTDIR}/configs/maps/domains.list",
- ];
- score = 3.0;
+ inverse_symbol = "BLACKLIST_DMARC";
}
"STRICT_DMARC" = {