From: Vsevolod Stakhov Date: Sat, 14 Mar 2015 22:25:54 +0000 (+0000) Subject: Add inet addr unit test. X-Git-Tag: 0.9.0~493 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=7b6ff345af8128520e47ea91b9fb75277e625801;p=rspamd.git Add inet addr unit test. --- diff --git a/test/lua/unit/addr.lua b/test/lua/unit/addr.lua new file mode 100644 index 000000000..519be358c --- /dev/null +++ b/test/lua/unit/addr.lua @@ -0,0 +1,31 @@ +-- inet addr tests + +context("Inet addr check functions", function() + local ffi = require("ffi") + + ffi.cdef[[ + typedef struct rspamd_inet_addr_s rspamd_inet_addr_t; + bool rspamd_parse_inet_address (rspamd_inet_addr_t **target, + const char *src); + void rspamd_inet_address_destroy (rspamd_inet_addr_t *addr); + ]] + + test("Create inet addr from string", function() + local cases = { + {'192.168.1.1', true}, + {'2a01:4f8:190:43b5::99', true}, + {'256.1.1.1', false}, + {'/tmp/socket', true}, + {'./socket', true}, + } + + for _,c in ipairs(cases) do + local ip = ffi.new("rspamd_inet_addr_t* [1]"); + local res = ffi.C.rspamd_parse_inet_address(ip, c[1]) + assert_equal(res, c[2], "Expect " .. tostring(c[2]) .. " while parsing " .. c[1]) + if res then + ffi.C.rspamd_inet_address_destroy(ip[0]) + end + end + end) +end) \ No newline at end of file