diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/functional/cases/102_multimap.robot | 8 | ||||
-rw-r--r-- | test/functional/cases/105_mimetypes.robot | 6 | ||||
-rw-r--r-- | test/functional/cases/135_spamassassin.robot | 33 | ||||
-rw-r--r-- | test/functional/configs/spamassassin.conf | 3 | ||||
-rw-r--r-- | test/functional/configs/spamassassin.rules | 34 | ||||
-rw-r--r-- | test/functional/messages/freemail.eml | 7 |
6 files changed, 84 insertions, 7 deletions
diff --git a/test/functional/cases/102_multimap.robot b/test/functional/cases/102_multimap.robot index 9d02ca666..cad5b56df 100644 --- a/test/functional/cases/102_multimap.robot +++ b/test/functional/cases/102_multimap.robot @@ -8,7 +8,7 @@ Variables ${TESTDIR}/lib/vars.py *** Variables *** ${CONFIG} ${TESTDIR}/configs/plugins.conf ${MESSAGE} ${TESTDIR}/messages/spam_message.eml -${UTF_MESSAGE} ${TESTDIR}/messages/utf.eml +${UTF_MESSAGE} ${TESTDIR}/messages/utf.eml ${RSPAMD_SCOPE} Suite *** Test Cases *** @@ -116,6 +116,6 @@ MAP - CDB - HOSTNAME MISS *** Keywords *** Multimap Setup - ${PLUGIN_CONFIG} = Get File ${TESTDIR}/configs/multimap.conf - Set Suite Variable ${PLUGIN_CONFIG} - Generic Setup PLUGIN_CONFIG + ${PLUGIN_CONFIG} = Get File ${TESTDIR}/configs/multimap.conf + Set Suite Variable ${PLUGIN_CONFIG} + Generic Setup PLUGIN_CONFIG diff --git a/test/functional/cases/105_mimetypes.robot b/test/functional/cases/105_mimetypes.robot index c67784f25..18eac6289 100644 --- a/test/functional/cases/105_mimetypes.robot +++ b/test/functional/cases/105_mimetypes.robot @@ -24,6 +24,6 @@ Rar4 *** Keywords *** MIMETypes Setup - ${PLUGIN_CONFIG} = Get File ${TESTDIR}/configs/mime_types.conf - Set Suite Variable ${PLUGIN_CONFIG} - Generic Setup PLUGIN_CONFIG + ${PLUGIN_CONFIG} = Get File ${TESTDIR}/configs/mime_types.conf + Set Suite Variable ${PLUGIN_CONFIG} + Generic Setup PLUGIN_CONFIG diff --git a/test/functional/cases/135_spamassassin.robot b/test/functional/cases/135_spamassassin.robot new file mode 100644 index 000000000..31082c96d --- /dev/null +++ b/test/functional/cases/135_spamassassin.robot @@ -0,0 +1,33 @@ +*** Settings *** +Suite Setup SpamAssassin Setup +Suite Teardown Generic Teardown +Library ${TESTDIR}/lib/rspamd.py +Resource ${TESTDIR}/lib/rspamd.robot +Variables ${TESTDIR}/lib/vars.py + +*** Variables *** +${CONFIG} ${TESTDIR}/configs/plugins.conf +${RSPAMD_SCOPE} Suite + +*** Test Cases *** +Freemail Scan + Set Suite Variable ${FREEMAIL_RESULT} ${EMPTY} + ${FREEMAIL_RESULT} = Scan Message With Rspamc ${TESTDIR}/messages/freemail.eml + ... --from faked.asdfjisiwosp372@outlook.com + Check Rspamc ${FREEMAIL_RESULT} ${EMPTY} + Set Suite Variable ${FREEMAIL_RESULT} ${FREEMAIL_RESULT.stdout} + +Freemail From + Should Contain ${FREEMAIL_RESULT} FREEMAIL_FROM + +Freemail From Enddigit + Should Contain ${FREEMAIL_RESULT} FREEMAIL_ENVFROM_END_DIGIT + +Freemail Subject + Should Contain ${FREEMAIL_RESULT} FREEMAIL_SUBJECT + +*** Keywords *** +SpamAssassin Setup + ${PLUGIN_CONFIG} = Get File ${TESTDIR}/configs/spamassassin.conf + Set Suite Variable ${PLUGIN_CONFIG} + Generic Setup PLUGIN_CONFIG diff --git a/test/functional/configs/spamassassin.conf b/test/functional/configs/spamassassin.conf new file mode 100644 index 000000000..ddd65b95e --- /dev/null +++ b/test/functional/configs/spamassassin.conf @@ -0,0 +1,3 @@ +spamassassin { + rules = "${TESTDIR}/configs/spamassassin.rules" +} diff --git a/test/functional/configs/spamassassin.rules b/test/functional/configs/spamassassin.rules new file mode 100644 index 000000000..e020fe7b9 --- /dev/null +++ b/test/functional/configs/spamassassin.rules @@ -0,0 +1,34 @@ +# These rules are from SpamAssasin project! (but might be modified) +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to you under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +ifplugin Mail::SpamAssassin::Plugin::FreeMail + +freemail_domains qq.com yahoo.com outlook.com +freemail_domains lycosmail.com hotmail.com + +header FREEMAIL_FROM eval:check_freemail_from() +describe FREEMAIL_FROM Sender email is commonly abused enduser mail provider +score FREEMAIL_FROM 1.0 + +header FREEMAIL_ENVFROM_END_DIGIT eval:check_freemail_header('EnvelopeFrom', '\d@') +describe FREEMAIL_ENVFROM_END_DIGIT Envelope-from freemail username ends in digit +score FREEMAIL_ENVFROM_END_DIGIT 1.0 + +header FREEMAIL_SUBJECT eval:check_freemail_header('Subject') +describe FREEMAIL_SUBJECT Subject contains freemail +score FREEMAIL_SUBJECT 1.0 + +endif diff --git a/test/functional/messages/freemail.eml b/test/functional/messages/freemail.eml new file mode 100644 index 000000000..a64094b74 --- /dev/null +++ b/test/functional/messages/freemail.eml @@ -0,0 +1,7 @@ +From: <faked.asdfjisiwosp372@outlook.com> +Subject: Reply me at faked.asdfjisiwosp372@hotmail.com +Date: Sun, 31 Jul 2016 11:40:08 +0100 +Content-type: text/plain +MIME-Version: 1.0 + +hello |