diff options
Diffstat (limited to 'tests/test.lua')
-rw-r--r-- | tests/test.lua | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/tests/test.lua b/tests/test.lua index 0d69d08b..503ac4a1 100644 --- a/tests/test.lua +++ b/tests/test.lua @@ -21,6 +21,7 @@ function run_all_tests() dotest "util.jid" + dotest "util.multitable" dotest "core.stanza_router" dotest "core.s2smanager" dotest "core.configmanager" @@ -40,14 +41,34 @@ function testlib_new_env(t) return setmetatable(t or {}, env_mt); end -function assert_equal(a, b, message) +function assert_equal(a, b, message, level) if not (a == b) then - error("\n assert_equal failed: "..tostring(a).." ~= "..tostring(b)..(message and ("\n Message: "..message) or ""), 2); + error("\n assert_equal failed: "..tostring(a).." ~= "..tostring(b)..(message and ("\n Message: "..message) or ""), (level or 1) + 1); elseif verbosity >= 4 then print("assert_equal succeeded: "..tostring(a).." == "..tostring(b)); end end +function assert_table(a, message, level) + assert_equal(type(a), "table", message, (level or 1) + 1); +end +function assert_function(a, message, level) + assert_equal(type(a), "function", message, (level or 1) + 1); +end +function assert_string(a, message, level) + assert_equal(type(a), "string", message, (level or 1) + 1); +end +function assert_boolean(a, message) + assert_equal(type(a), "boolean", message); +end +function assert_is(a, message) + assert_equal(not not a, true, message); +end +function assert_is_not(a, message) + assert_equal(not not a, false, message); +end + + function dosingletest(testname, fname) local tests = setmetatable({}, { __index = _G }); tests.__unit = testname; |