Files
coa-details/Details/Libs/DF/packtable.tests.lua
T
florian.berthold 5bb7be4968 chore: hoist plugins to root and move main into Details/
Each Details_* plugin and the main Details addon now lives in its own
repo-root folder, matching the Exiles fork-layout convention.
2026-05-25 10:59:28 +02:00

56 lines
2.6 KiB
Lua

--this file isn't loaded, the tests need to be copied, loaded and run.
function PackTest()
local table = {1, 2, 3, 4, 5}
local packed = DetailsFramework.table.pack(table)
print("Testing table.pack, table: {1, 2, 3, 4, 5}")
local expected = "\"5,1,2,3,4,5\""
print("Expected: string ", expected)
print("Result: " .. type(packed) .. " \"" .. packed .. "\"")
end
function PackSubTest()
local table = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }
local packed = DetailsFramework.table.packsub(table)
print("Testing table.packsub, table: { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }")
local expected = "\"3,1,2,3,3,4,5,6,3,7,8,9\""
print("Expected: string ", expected)
print("Result: " .. type(packed) .. " \"" .. packed .. "\"")
end
function PackSubMergeTest()
local table = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }
local packed = DetailsFramework.table.packsubmerge(table)
print("Testing table.packsubmerge, table: { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }")
local expected = "\"9,1,2,3,4,5,6,7,8,9\""
print("Expected: string ", expected)
print("Result: " .. type(packed) .. " \"" .. packed .. "\"")
end
function UnpackTest()
local packed = "5,1,2,3,4,5"
local table, nextIndex = DetailsFramework.table.unpack(packed)
print("Testing table.unpack, data: \"5,1,2,3,4,5\"")
local expected = "table {1, 2, 3, 4, 5}, 0"
print("Expected:", expected)
print("Result: " .. type(table) .. " {" .. table[1] .. ", " .. table[2] .. ", " .. table[3] .. ", " .. table[4] .. ", " .. table[5] .. "},", nextIndex)
end
function UnpackSecondTest()
local packed = "5,1,2,3,4,5,2,5,4,3,1,2,3"
local table, nextIndex = DetailsFramework.table.unpack(packed, 7)
print("Testing table.unpack with Idx 7, data: \"5,1,2,3,4,5,2,5,4,3,1,2,3\"")
local expected = "table {5, 4}, 10"
print("Expected:", expected)
print("Result: " .. type(table) .. " {" .. table[1] .. ", " .. table[2] .. "},", nextIndex)
end
function UnpackSubTest()
local packed = "3,1,2,3,3,4,5,6,3,7,8,9"
local tables = DetailsFramework.table.unpacksub(packed)
print("Testing table.unpacksub, data: \"3,1,2,3,3,4,5,6,3,7,8,9\"")
local expected = "table {table {1, 2, 3}, table {4, 5, 6}, table {7, 8, 9}}"
print("Expected:", expected)
print("Result: " .. type(tables) .. " {" .. type(tables[1]) .. " {" .. tables[1][1] .. ", " .. tables[1][2] .. ", " .. tables[1][3] .. "}, " .. type(tables[2]) .. " {" .. tables[2][1] .. ", " .. tables[2][2] .. ", " .. tables[2][3] .. "}, " .. type(tables[3]) .. " {" .. tables[3][1] .. ", " .. tables[3][2] .. ", " .. tables[3][3] .. "}}")
end