From: Vsevolod Stakhov Date: Fri, 22 Jan 2021 15:49:55 +0000 (+0000) Subject: [Test] Start css unit testing X-Git-Tag: 3.0~737 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=de3370d428c0c7f6998f21a3831a3c4e2c165e23;p=thirdparty%2Frspamd.git [Test] Start css unit testing --- diff --git a/test/lua/unit/css.lua b/test/lua/unit/css.lua new file mode 100644 index 0000000000..8d4d4469bf --- /dev/null +++ b/test/lua/unit/css.lua @@ -0,0 +1,23 @@ +context("CSS parsing tests", function() + local ffi = require("ffi") + local rspamd_mempool = require "rspamd_mempool" + local pool = rspamd_mempool.create() + ffi.cdef[[ +const char *rspamd_css_unescape (void *pool, + const char *begin, + size_t len, + size_t *olen); +]] + + local cases = { + {'#\\31 a2b3c {', '#1a2b3c {'} + } + for _,t in ipairs(cases) do + test("Unescape " .. t[1], function() + local olen = ffi.new('size_t[1]') + local escaped = ffi.C.rspamd_css_unescape(pool:topointer(), t[1], #t[1], olen) + escaped = ffi.string(escaped, tonumber(olen[0])) + assert_equal(escaped, t[2], escaped .. " not equal " .. t[2]) + end) + end +end) \ No newline at end of file