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.

mempool.lua 947B

123456789101112131415161718192021222324252627282930313233343536373839
  1. context("Memory pool unit tests", function()
  2. test("Mempool variables", function()
  3. local mempool = require "rspamd_mempool"
  4. local pool = mempool.create()
  5. assert_not_nil(pool)
  6. -- string
  7. pool:set_variable('a', 'bcd')
  8. local var = pool:get_variable('a')
  9. assert_equal(var, 'bcd')
  10. -- integer
  11. pool:set_variable('a', 1)
  12. var = pool:get_variable('a', 'double')
  13. assert_equal(var, 1)
  14. -- float
  15. pool:set_variable('a', 1.01)
  16. var = pool:get_variable('a', 'double')
  17. assert_equal(var, 1.01)
  18. -- boolean
  19. pool:set_variable('a', false)
  20. var = pool:get_variable('a', 'bool')
  21. assert_equal(var, false)
  22. -- multiple
  23. pool:set_variable('a', 'bcd', 1, 1.01, false)
  24. local v1, v2, v3, v4 = pool:get_variable('a', 'string,double,double,bool')
  25. assert_equal(v1, 'bcd')
  26. assert_equal(v2, 1)
  27. assert_equal(v3, 1.01)
  28. assert_equal(v4, false)
  29. pool:destroy()
  30. end)
  31. end)