simplify Rspamd tests

This commit is contained in:
georglauterbach 2024-01-09 14:06:23 +01:00
parent 05a9fbc506
commit fb0b8dc1f2
No known key found for this signature in database
GPG Key ID: F367F7C43C118578
1 changed files with 7 additions and 6 deletions

View File

@ -43,19 +43,20 @@ function setup_file() {
_wait_for_service postfix _wait_for_service postfix
_wait_for_smtp_port_in_container _wait_for_smtp_port_in_container
# ref: https://rspamd.com/doc/gtube_patterns.html
local GTUBE_SUFFIX='*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X'
# We will send 4 emails: # We will send 4 emails:
# 1. The first one should pass just fine # 1. The first one should pass just fine
_send_email_and_get_id MAIL_ID_PASS _send_email_and_get_id MAIL_ID_PASS
# 2. The second one should be rejected due to spam (GTUBE pattern) # 2. The second one should be rejected (GTUBE pattern)
_send_email_and_get_id MAIL_ID_SPAM --unchecked \ _send_email_and_get_id MAIL_ID_REJECT --unchecked --body "XJS${GTUBE_SUFFIX}"
--body 'XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X'
# 3. The third one should be rejected due to a virus (ClamAV EICAR pattern) # 3. The third one should be rejected due to a virus (ClamAV EICAR pattern)
# shellcheck disable=SC2016 # shellcheck disable=SC2016
_send_email_and_get_id MAIL_ID_VIRUS --unchecked \ _send_email_and_get_id MAIL_ID_VIRUS --unchecked \
--body 'X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*' --body 'X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*'
# 4. The fourth one will receive an added header (GTUBE pattern) # 4. The fourth one will receive an added header (GTUBE pattern)
_send_email_and_get_id MAIL_ID_HEADER \ _send_email_and_get_id MAIL_ID_HEADER --body "YJS${GTUBE_SUFFIX}"
--body 'YJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X'
_run_in_container cat /var/log/mail.log _run_in_container cat /var/log/mail.log
assert_success assert_success
@ -121,7 +122,7 @@ function teardown_file() { _default_teardown ; }
_service_log_should_contain_string 'rspamd' 'S \(reject\)' _service_log_should_contain_string 'rspamd' 'S \(reject\)'
_service_log_should_contain_string 'rspamd' 'reject "Gtube pattern"' _service_log_should_contain_string 'rspamd' 'reject "Gtube pattern"'
_print_mail_log_for_id "${MAIL_ID_SPAM}" _print_mail_log_for_id "${MAIL_ID_REJECT}"
assert_output --partial 'milter-reject' assert_output --partial 'milter-reject'
assert_output --partial '5.7.1 Gtube pattern' assert_output --partial '5.7.1 Gtube pattern'