Browse Source

[Test] Test for regexps in {sa_body} and urls with newlines

tags/1.8.0
Mikhail Galanin 5 years ago
parent
commit
247bc030c0

+ 37
- 0
test/functional/cases/260_regex.robot View File

@@ -0,0 +1,37 @@
*** Settings ***
Test Setup Regex Setup
Test Teardown Regex 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/newlines.eml
${UTF_MESSAGE} ${TESTDIR}/messages/utf.eml
${URL_TLD} ${TESTDIR}/../lua/unit/test_tld.dat
${RSPAMD_SCOPE} Test


*** Test Cases ***
Newlines
${result} = Scan Message With Rspamc ${MESSAGE}
Check Rspamc ${result} SA_BODY_WORD
Check Rspamc ${result} SA_BODY_WORD_WITH_SPACE
Check Rspamc ${result} SA_BODY_WORD_WITH_NEWLINE inverse=true
Check Rspamc ${result} SA_BODY_WORD_WITH_SPACE_BOUNDARIES
Check Rspamc ${result} SA_BODY_WORD_WITH_SPACE_BOUNDARIES_2
Check Rspamc ${result} SA_BODY_WORD_WITH_SPACE_BOUNDARIES_3
Check Rspamc ${result} https://google.com/maps/
Check Rspamc ${result} https://www.google.com/search?q\=hello world&oq\=hello world&aqs\=chrome..69i57j0l5.3045j0j7&sourceid\=chrome&ie\=UTF-8
Check Rspamc ${result} https://github.com/google/sanitizers/wiki/AddressSanitizer


*** Keywords ***
Regex Setup
${PLUGIN_CONFIG} = Get File ${TESTDIR}/configs/regexp.conf
Set Suite Variable ${PLUGIN_CONFIG}
Generic Setup PLUGIN_CONFIG

Regex Teardown
Normal Teardown

+ 12
- 0
test/functional/lua/regex_test.lua View File

@@ -0,0 +1,12 @@
local function get_urls(task)
local urls = task:get_urls()
for _, u in ipairs(urls) do
task:insert_result('FOUND_URL', 1.0, tostring(u))
end
end

rspamd_config:register_symbol({
name = 'SIMPLE',
score = 1.0,
callback = get_urls
})

+ 13
- 0
test/functional/messages/newlines.eml View File

@@ -0,0 +1,13 @@
Content-Type: text/plain

this is the word separated with newline:
hello
world

this is the url separated with newline: <https://github.com/google/sanitizers/wi
ki/AddressSanitizer>
<https://www.google.com/search?q=hello+world&oq=hello+world&aqs=chro
me..69i57j0l5.3045j0j7&sourceid=chrome&ie=UTF-8>
<https://google.com
/maps/> click here


Loading…
Cancel
Save