You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

230_tcp.robot 2.5KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. *** Settings ***
  2. Suite Setup Servers Setup
  3. Suite Teardown Servers Teardown
  4. Library Process
  5. Library ${TESTDIR}/lib/rspamd.py
  6. Resource ${TESTDIR}/lib/rspamd.robot
  7. Variables ${TESTDIR}/lib/vars.py
  8. *** Variables ***
  9. # ${CONFIG} ${TESTDIR}/configs/http.conf
  10. ${URL_TLD} ${TESTDIR}/../lua/unit/test_tld.dat
  11. ${CONFIG} ${TESTDIR}/configs/lua_test.conf
  12. ${MESSAGE} ${TESTDIR}/messages/spam_message.eml
  13. ${RSPAMD_SCOPE} Suite
  14. *** Test Cases ***
  15. Simple TCP request
  16. ${result} = Scan Message With Rspamc ${MESSAGE}
  17. Check Rspamc ${result} HTTP_ASYNC_RESPONSE
  18. Check Rspamc ${result} HTTP_ASYNC_RESPONSE_2
  19. SSL TCP request
  20. ${result} = Scan Message With Rspamc ${MESSAGE}
  21. Check Rspamc ${result} TCP_SSL_RESPONSE (0.00)[hello]
  22. Check Rspamc ${result} TCP_SSL_RESPONSE_2 (0.00)[hello]
  23. SSL Large TCP request
  24. ${result} = Scan Message With Rspamc ${MESSAGE}
  25. Check Rspamc ${result} TCP_SSL_LARGE (0.00)
  26. Check Rspamc ${result} TCP_SSL_LARGE_2 (0.00)
  27. Sync API TCP request
  28. ${result} = Scan Message With Rspamc ${MESSAGE}
  29. Check Rspamc ${result} HTTP_SYNC_RESPONSE
  30. Check Rspamc ${result} HTTP_SYNC_RESPONSE_2
  31. Check Rspamc ${result} hello world
  32. Check Rspamc ${result} hello post
  33. Sync API TCP get request
  34. Check url /request get HTTP_SYNC_EOF_get (0.00)[hello world]
  35. Check url /content-length get HTTP_SYNC_CONTENT_get (0.00)[hello world]
  36. Sync API TCP post request
  37. Check url /request post HTTP_SYNC_EOF_post (0.00)[hello post]
  38. Check url /content-length post HTTP_SYNC_CONTENT_post (0.00)[hello post]
  39. *** Keywords ***
  40. Lua Setup
  41. [Arguments] ${LUA_SCRIPT}
  42. Set Suite Variable ${LUA_SCRIPT}
  43. Generic Setup
  44. Servers Setup
  45. Run Dummy Http
  46. Run Dummy Ssl
  47. Lua Setup ${TESTDIR}/lua/tcp.lua
  48. Servers Teardown
  49. ${http_pid} = Get File /tmp/dummy_http.pid
  50. Shutdown Process With Children ${http_pid}
  51. ${ssl_pid} = Get File /tmp/dummy_ssl.pid
  52. Shutdown Process With Children ${ssl_pid}
  53. Normal Teardown
  54. Run Dummy Http
  55. [Arguments]
  56. ${result} = Start Process ${TESTDIR}/util/dummy_http.py
  57. Wait Until Created /tmp/dummy_http.pid timeout=2 second
  58. Run Dummy Ssl
  59. [Arguments]
  60. ${result} = Start Process ${TESTDIR}/util/dummy_ssl.py ${TESTDIR}/util/server.pem
  61. Wait Until Created /tmp/dummy_ssl.pid timeout=2 second
  62. Check url
  63. [Arguments] ${url} ${method} @{expect_results}
  64. ${result} = Scan Message With Rspamc --header=url:${url} --header=method:${method} ${MESSAGE}
  65. FOR ${expect} IN @{expect_results}
  66. Check Rspamc ${result} ${expect}
  67. END