blob: 7b2773863cb204200c8e8ca587e20355481c255b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
|
*** Settings ***
Suite Setup Settings Setup
Suite Teardown Settings Teardown
Library ${TESTDIR}/lib/rspamd.py
Resource ${TESTDIR}/lib/rspamd.robot
Variables ${TESTDIR}/lib/vars.py
*** Variables ***
${CONFIG} ${TESTDIR}/configs/plugins.conf
${LUA_SCRIPT} ${TESTDIR}/lua/settings.lua
${MESSAGE} ${TESTDIR}/messages/spam_message.eml
${SPAM_MESSAGE} ${TESTDIR}/messages/spam.eml
${HAM_MESSAGE} ${TESTDIR}/messages/ham.eml
${RSPAMD_SCOPE} Suite
${URL_TLD} ${TESTDIR}/../lua/unit/test_tld.dat
*** Test Cases ***
NO SETTINGS SPAM
${result} = Scan Message With Rspamc ${SPAM_MESSAGE}
Check Rspamc ${result} SIMPLE_TEST
Should Contain ${result.stdout} SIMPLE_PRE
Should Contain ${result.stdout} SIMPLE_POST
Should Contain ${result.stdout} BAYES_SPAM
NO SETTINGS HAM
${result} = Scan Message With Rspamc ${HAM_MESSAGE}
Check Rspamc ${result} SIMPLE_TEST
Should Contain ${result.stdout} SIMPLE_PRE
Should Contain ${result.stdout} SIMPLE_POST
Should Contain ${result.stdout} BAYES_HAM
ENABLE SYMBOL - NORMAL
${result} = Scan Message With Rspamc ${HAM_MESSAGE} --header Settings={symbols_enabled = ["SIMPLE_TEST"]}
Check Rspamc ${result} SIMPLE_TEST
Should Not Contain ${result.stdout} SIMPLE_PRE
Should Not Contain ${result.stdout} SIMPLE_POST
Should Not Contain ${result.stdout} BAYES_HAM
ENABLE SYMBOL - POSTFILTER
${result} = Scan Message With Rspamc ${HAM_MESSAGE} --header Settings={symbols_enabled = ["SIMPLE_TEST", "SIMPLE_POST"]}
Check Rspamc ${result} SIMPLE_TEST
Should Contain ${result.stdout} SIMPLE_POST
Should Not Contain ${result.stdout} SIMPLE_PRE
Should Not Contain ${result.stdout} BAYES_HAM
ENABLE SYMBOL - PREFILTER
${result} = Scan Message With Rspamc ${HAM_MESSAGE} --header Settings={symbols_enabled = ["SIMPLE_PRE"]}
Check Rspamc ${result} SIMPLE_PRE
Should Not Contain ${result.stdout} SIMPLE_POST
Should Not Contain ${result.stdout} SIMPLE_TEST
Should Not Contain ${result.stdout} BAYES_HAM
ENABLE SYMBOL - CLASSIFIER
${result} = Scan Message With Rspamc ${HAM_MESSAGE} --header Settings={symbols_enabled = ["BAYES_HAM", "BAYES_SPAM"]}
Check Rspamc ${result} BAYES_HAM
Should Not Contain ${result.stdout} SIMPLE_PRE
Should Not Contain ${result.stdout} SIMPLE_POST
Should Not Contain ${result.stdout} SIMPLE_TEST
DISABLE SYMBOL - NORMAL
${result} = Scan Message With Rspamc ${MESSAGE} --header Settings={symbols_disabled = ["SIMPLE_TEST"]}
Check Rspamc ${result} SIMPLE_TEST inverse=1
Should Contain ${result.stdout} SIMPLE_PRE
Should Contain ${result.stdout} SIMPLE_POST
RESCORE SYMBOL - NORMAL
${result} = Scan Message With Rspamc ${MESSAGE} --header Settings={SIMPLE_TEST = 3.33}
Check Rspamc ${result} SIMPLE_TEST (3.33)
RESCORE ACTION
${result} = Scan Message With Rspamc ${MESSAGE} --header Settings={actions { reject = 1234.5; } }
Check Rspamc ${result} ${SPACE}/ 1234.50
DISABLE GROUP - NORMAL
${result} = Scan Message With Rspamc ${MESSAGE} --header Settings={groups_disabled = ["b"]}
Check Rspamc ${result} SIMPLE_TEST inverse=1
Should Contain ${result.stdout} SIMPLE_PRE
Should Contain ${result.stdout} SIMPLE_POST
ENABLE GROUP - NORMAL
${result} = Scan Message With Rspamc ${MESSAGE} --header Settings={groups_enabled = ["b"]}
Check Rspamc ${result} SIMPLE_TEST
Should Not Contain ${result.stdout} SIMPLE_PRE
Should Not Contain ${result.stdout} SIMPLE_POST
SETTINGS ID - NORMAL
${result} = Scan Message With Rspamc ${MESSAGE} --header Settings-Id=id_test
Check Rspamc ${result} SIMPLE_TEST
Should Not Contain ${result.stdout} SIMPLE_PRE
Should Not Contain ${result.stdout} SIMPLE_POST
SETTINGS ID - PRE
${result} = Scan Message With Rspamc ${MESSAGE} --header Settings-Id=id_pre
Check Rspamc ${result} SIMPLE_PRE
Should Not Contain ${result.stdout} SIMPLE_TEST
Should Not Contain ${result.stdout} SIMPLE_POST
*** Keywords ***
Settings Setup
Copy File ${TESTDIR}/data/bayes.spam.sqlite3 /tmp/bayes.spam.sqlite3
Copy File ${TESTDIR}/data/bayes.ham.sqlite3 /tmp/bayes.ham.sqlite3
${PLUGIN_CONFIG} = Get File ${TESTDIR}/configs/settings.conf
Set Suite Variable ${PLUGIN_CONFIG}
Generic Setup PLUGIN_CONFIG
Settings Teardown
Normal Teardown
|