print("testing asserts")
if pcall(assert, false) or pcall(function() assert(false) end) then
error('catastrophic assertion failure') end
function ecall(fn, ...)
local ok, err = pcall(fn, ...)
assert(not ok)
return err:sub(err:find(": ") + 2, #err)
end
assert(1)
assert(true)
assert(assert(1) == 1)
assert(type(assert({})) == 'table')
assert(ecall(function() assert() end) == "missing argument #1")
assert(ecall(function() assert(nil) end) == "assertion failed!")
assert(ecall(function() assert(false) end) == "assertion failed!")
assert(ecall(function() assert(nil, "epic fail") end) == "epic fail")
assert(select('#', assert(1, 2, 3)) == 3)
assert(table.concat(table.pack(assert(1, 2, 3)), "") == "123")
return('OK')