Line 187:
Line 187:
else
else
return success, data
return success, data
+
end
+
end
+
+
-- * Testing functions.
+
+
function Utils.debugPrint(x, i)
+
i = i or 0
+
if type(x) == "table" then
+
for k, v in pairs(x) do
+
mw.log(
+
string.rep(" ", i) .. tostring(k) .. " : " .. type(k) .. " = " ..
+
(type(v) == "table" and "table" or tostring(v) .. " : " .. type(v))
+
)
+
if type(v) == "table" then
+
debugPrint(v, i + 1)
+
end
+
end
+
else
+
mw.log(tostring(x) .. " : " .. type(x))
+
end
+
end
+
+
function Utils.registerFormatTests(obj, tests, fn)
+
obj.run_format_tests = function()
+
for _, test in ipairs(tests) do
+
local result = obj.format(nil, test)
+
mw.log(fn and fn(result) or result)
+
end
+
end
+
end
+
+
function Utils.registerTableTests(obj, tests, fn)
+
obj.run_table_tests = function()
+
for _, test in ipairs(tests) do
+
local result = obj:Table(test)
+
mw.log(fn and fn(result) or result)
+
end
end
end
end
end
return Utils
return Utils