Browse Source

[Test] Start tests for magic detection

pull/3033/head
Vsevolod Stakhov 6 years ago
parent
commit
eeb429bf4d
  1. 18
      test/functional/cases/350_magic.robot
  2. 14
      test/functional/lua/magic.lua
  3. 22
      test/functional/messages/gargantua.eml

18
test/functional/cases/350_magic.robot

@ -0,0 +1,18 @@
*** Settings ***
Suite Setup Generic Setup
Suite Teardown Simple Teardown
Library ${TESTDIR}/lib/rspamd.py
Resource ${TESTDIR}/lib/rspamd.robot
Variables ${TESTDIR}/lib/vars.py
*** Variables ***
${CONFIG} ${TESTDIR}/configs/lua_script.conf
${LUA_SCRIPT} ${TESTDIR}/lua/magic.lua
${RSPAMD_SCOPE} Suite
${URL_TLD} ${TESTDIR}/../lua/unit/test_tld.dat
*** Test Cases ***
Magic detections bundle 1
${result} = Scan Message With Rspamc ${TESTDIR}/messages/gargantua.eml
Should Contain ${result.stdout} MAGIC_SYM_ZIP_2
Should Contain ${result.stdout} MAGIC_SYM_RAR_3

14
test/functional/lua/magic.lua

@ -0,0 +1,14 @@
rspamd_config.MAGIC_SYM = {
callback = function(task)
local parts = task:get_parts()
for i,p in ipairs(parts) do
local ext = p:get_detected_ext()
if ext then
task:insert_result('MAGIC_SYM_' .. ext:upper() .. '_' .. tostring(i), 1.0)
end
end
end,
type = 'callback'
}

22
test/functional/messages/gargantua.eml

@ -0,0 +1,22 @@
From: <user@example.com>
To: undisclosed-recipients:;
Content-Type: multipart/mixed; boundary=XXX
--XXX
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
UEsDBBQDAAAAADxGUzwAAAAAAAAAAAAAAAACAAAAdC9QSwMECgMAAAAAHUZTPIiw
JDICAAAAAgAAAAcAAAB0L3QudHh0NDJQSwECPwMUAwAAAAA8RlM8AAAAAAAAAAAA
AAAAAgAAAAAAAAAAABCA6EEAAAAAdC9QSwECPwMKAwAAAAAdRlM8iLAkMgIAAAAC
AAAABwAAAAAAAAAAACCAoIEgAAAAdC90LnR4dFBLBQYAAAAAAgACAGUAAABHAAAA
AAA=
--XXX
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
UmFyIRoHAM+QcwAADQAAAAAAAABs53QggCcACwAAAAIAAAADiLAkMh0+UzwdMwcA
oIEAAHRcdC50eHQRC/TEnu9/Np/2WmMfdOCAIQAAAAAAAAAAAAMAAAAAPD5TPBQw
AQDoQQAAdMQ9ewBABwA=
--XXX--
Loading…
Cancel
Save