Files
fs2open.github.com/test/test_data/scripting/data/scripts/assert.lua
T
asarium 2303785717 Improve scripting hook variable system
The previous system was kind of hacky and made things a bit inflexible.
This improves that system quite a bit and also adds unit tests for the
hook variable functionality.
2020-08-29 10:27:41 +02:00

42 lines
1022 B
Lua

local module = {}
function module.equals(expected, actual)
if (expected == actual) then
return
end
error(string.format("Expected value of %q but was %q", tostring(expected), tostring(actual)))
end
function module.tablesEqual(expected, actual)
if type(expected) ~= "table" then
error("Expected value is not a table")
end
if type(actual) ~= "table" then
error("Actual value is not a table")
end
if #expected ~= #actual then
error(string.format("Expected table length %d did not match actual %d.", #expected, #actual))
end
for i, expectedVal in ipairs(expected) do
local actualVal = actual[i]
if expectedVal ~= actualVal then
error(string.format("Mismatch at index %d. Expected value of %q but was %q", i, tostring(expected), tostring(actual)))
end
end
end
function module.isTrue(value)
module.equals(true, value)
end
function module.isFalse(value)
module.equals(false, value)
end
return module