mirror of
https://github.com/minetest/minetest.git
synced 2024-12-26 07:57:29 +01:00
29 lines
743 B
Lua
29 lines
743 B
Lua
|
_G.core = {}
|
||
|
|
||
|
_G.setfenv = function() end
|
||
|
|
||
|
dofile("builtin/common/serialize.lua")
|
||
|
|
||
|
describe("serialize", function()
|
||
|
it("works", function()
|
||
|
local test_in = {cat={sound="nyan", speed=400}, dog={sound="woof"}}
|
||
|
local test_out = core.deserialize(core.serialize(test_in))
|
||
|
|
||
|
assert.same(test_in, test_out)
|
||
|
end)
|
||
|
|
||
|
it("handles characters", function()
|
||
|
local test_in = {escape_chars="\n\r\t\v\\\"\'", non_european="θשׁ٩∂"}
|
||
|
local test_out = core.deserialize(core.serialize(test_in))
|
||
|
assert.same(test_in, test_out)
|
||
|
end)
|
||
|
|
||
|
it("handles recursive structures", function()
|
||
|
local test_in = { hello = "world" }
|
||
|
test_in.foo = test_in
|
||
|
|
||
|
local test_out = core.deserialize(core.serialize(test_in))
|
||
|
assert.same(test_in, test_out)
|
||
|
end)
|
||
|
end)
|