aboutsummaryrefslogtreecommitdiffstats
path: root/test/functional/cases/131_dkim_signing
diff options
context:
space:
mode:
authorJohn McKay <adenosine3p@gmail.com>2019-01-21 04:09:09 +0000
committerJohn McKay <adenosine3p@gmail.com>2019-02-02 05:30:00 +0000
commit04b5bfde88920f472516ebae5172b232e7ca37a0 (patch)
treee11f817e76493c15b9af75ad62be86f69bd3f142 /test/functional/cases/131_dkim_signing
parentebc58cba8fed31f8dccc196da593f60b388d85f2 (diff)
downloadrspamd-04b5bfde88920f472516ebae5172b232e7ca37a0.tar.gz
rspamd-04b5bfde88920f472516ebae5172b232e7ca37a0.zip
Add tests for key cache invalidation
Diffstat (limited to 'test/functional/cases/131_dkim_signing')
-rw-r--r--test/functional/cases/131_dkim_signing/004_invalidate_key.robot51
1 files changed, 51 insertions, 0 deletions
diff --git a/test/functional/cases/131_dkim_signing/004_invalidate_key.robot b/test/functional/cases/131_dkim_signing/004_invalidate_key.robot
new file mode 100644
index 000000000..08a3ac623
--- /dev/null
+++ b/test/functional/cases/131_dkim_signing/004_invalidate_key.robot
@@ -0,0 +1,51 @@
+*** Settings ***
+Suite Setup Key Invalidation Setup
+Suite Teardown Key Invalidation Teardown
+Library ${TESTDIR}/lib/rspamd.py
+Resource ${TESTDIR}/lib/rspamd.robot
+Variables ${TESTDIR}/lib/vars.py
+
+*** Variables ***
+${CONFIG} ${TESTDIR}/configs/plugins.conf
+${MESSAGE} ${TESTDIR}/messages/dmarc/fail_none.eml
+${REDIS_SCOPE} Suite
+${RSPAMD_SCOPE} Suite
+${URL_TLD} ${TESTDIR}/../lua/unit/test_tld.dat
+
+*** Test Cases ***
+TEST SIGNED
+ ${result} = Scan Message With Rspamc ${MESSAGE} -u bob@cacophony.za.org
+ Check Rspamc ${result} DKIM-Signature:
+ Should Contain ${result.stdout} DKIM_SIGNED
+
+TEST NOT SIGNED - MISSING KEY
+ [Setup] Delete Key
+ ${result} = Scan Message With Rspamc ${MESSAGE} -u bob@cacophony.za.org
+ Check Rspamc ${result} DKIM-Signature: inverse=1
+ Should Not Contain ${result.stdout} DKIM_SIGNED
+
+TEST NOT SIGNED - KEY NO LONGER MATCHES
+ [Setup] Move Key
+ ${result} = Scan Message With Rspamc ${MESSAGE} -u bob@cacophony.za.org
+ Check Rspamc ${result} DKIM-Signature: inverse=1
+ Should Not Contain ${result.stdout} DKIM_SIGNED
+
+*** Keywords ***
+Key Invalidation Setup
+ ${key_dir} Make Temporary Directory
+ Set Suite Variable ${KEY_DIR} ${key_dir}
+ Copy File ${TESTDIR}/configs/dkim-eddsa.key ${KEY_DIR}/dkim-eddsa.key
+ ${PLUGIN_CONFIG} = Get File ${TESTDIR}/configs/dkim_signing/invalidate.conf
+ Set Suite Variable ${PLUGIN_CONFIG}
+ Generic Setup PLUGIN_CONFIG
+
+Delete Key
+ Remove File ${KEY_DIR}/dkim-eddsa.key
+
+Move Key
+ Copy File ${TESTDIR}/configs/dkim.key ${KEY_DIR}/dkim-eddsa.key
+ Set Modified Time ${KEY_DIR}/dkim-eddsa.key NOW + 3s
+
+Key Invalidation Teardown
+ Cleanup Temporary Directory ${KEY_DIR}
+ Normal Teardown