1*** Settings ***
2Library         ${RSPAMD_TESTDIR}/lib/rspamd.py
3Resource        ${RSPAMD_TESTDIR}/lib/rspamd.robot
4Variables       ${RSPAMD_TESTDIR}/lib/vars.py
5
6*** Variables ***
7${MESSAGE}            ${RSPAMD_TESTDIR}/messages/spam_message.eml
8${RSPAMD_MAP_MAP}     ${RSPAMD_TESTDIR}/configs/maps/map.list
9${RSPAMD_RADIX_MAP}   ${RSPAMD_TESTDIR}/configs/maps/ip2.list
10${RSPAMD_REGEXP_MAP}  ${RSPAMD_TESTDIR}/configs/maps/regexp.list
11
12*** Test Cases ***
13Recipient Parsing Sanity
14  Scan File  ${MESSAGE}  Rcpt=rcpt1@foobar,rcpt2@foobar,rcpt3@foobar,rcpt4@foobar
15  ...  Settings={symbols_enabled = [TEST_RCPT]}
16  Expect Symbol With Exact Options  TEST_RCPT  rcpt1@foobar,rcpt2@foobar,rcpt3@foobar,rcpt4@foobar
17
18TLD parts
19  Scan File  ${MESSAGE}  Settings={symbols_enabled = [TEST_TLD]}
20  Expect Symbol With Exact Options  TEST_TLD  no worry
21
22Hashes
23  Scan File  ${MESSAGE}  Settings={symbols_enabled = [TEST_HASHES]}
24  Expect Symbol With Exact Options  TEST_HASHES  no worry
25
26Maps Key Values
27  Scan File  ${MESSAGE}  Settings={symbols_enabled = [RADIX_KV, REGEXP_KV, MAP_KV]}
28  Expect Symbol With Exact Options  RADIX_KV  no worry
29  Expect Symbol With Exact Options  REGEXP_KV  no worry
30  Expect Symbol With Exact Options  MAP_KV  no worry
31
32Option Order
33  Scan File  ${MESSAGE}  Settings={symbols_enabled = [OPTION_ORDER, TBL_OPTION_ORDER]}
34  Expect Symbol With Exact Options  OPTION_ORDER  one  two  three  4  5  a
35  Expect Symbol With Exact Options  TBL_OPTION_ORDER  one  two  three  4  5  a
36
37Rule conditions
38  Scan File  ${MESSAGE}  Settings={symbols_enabled = [ANY_A]}
39  Expect Symbol With Option  ANY_A  hello3
40  Expect Symbol With Option  ANY_A  hello1
41  Expect Symbol With Option  ANY_A  hello2
42