Module:ScribuntoUnit/testcases explained

local ScribuntoUnit = require('Module:ScribuntoUnit')

local p =

---------------------------------------------------------------------------------- Test assertEquals

local function testAssertEquals(msg, expected, actual, shouldFail) local out = msg .. ' ' local errmsg =

local success, details = pcall(function local suite = ScribuntoUnit:new suite:assertEquals(expected, actual) end) if not success and (type(details) ~= 'table' or not details.ScribuntoUnit) then -- a real error, not a failed assertion local errmsg = 'Lua error: ' .. tostring(details) end if success

not shouldFail then out = out .. 'OK' else out = out .. 'FAIL' .. (errmsg and ' -- ' .. errmsg or ) end

return outend function p.testAssertEqualsWithEqualStrings return testAssertEquals('Testing that assertEquals does not throw error for equal strings...', 'abc', 'abc', false )

end

function p.testAssertEqualsWithUnequalStrings return testAssertEquals('Testing that assertEquals throws error for unequal strings...', 'abc', 'def', true )

end

---------------------------------------------------------------------------------- TODO: Test more methods--

return p