From d5cb25276bdd6a11374c62672804aa903586e521 Mon Sep 17 00:00:00 2001 From: jyelon Date: Thu, 9 Dec 2021 14:22:07 -0500 Subject: [PATCH] eris: disable unit test of __persist metamethod --- luprex/eris-master/test/persist.lua | 28 +++++++++++++++------------ luprex/eris-master/test/unpersist.lua | 7 ++++++- 2 files changed, 22 insertions(+), 13 deletions(-) diff --git a/luprex/eris-master/test/persist.lua b/luprex/eris-master/test/persist.lua index df4a7642..d41dac23 100644 --- a/luprex/eris-master/test/persist.lua +++ b/luprex/eris-master/test/persist.lua @@ -137,19 +137,23 @@ rootobj.testuvcycle = uvcycle ------------------------------------------------------------------------------- -- Special callback for persisting tables. +-- +-- Note: the __persist metamethod was deliberately disabled in the +-- luprex version of eris. Therefore this unit test was also disabled. +-- -local sptable = { a = 3 } - -setmetatable(sptable, { - __persist = function(tbl) - local a = tbl.a - return function() - return { a = a+3 } - end - end -}) - -rootobj.testsptable = sptable +-- local sptable = { a = 3 } +-- +-- setmetatable(sptable, { +-- __persist = function(tbl) +-- local a = tbl.a +-- return function() +-- return { a = a+3 } +-- end +-- end +-- }) +-- +-- rootobj.testsptable = sptable ------------------------------------------------------------------------------- -- Special callbacks for persisting userdata. diff --git a/luprex/eris-master/test/unpersist.lua b/luprex/eris-master/test/unpersist.lua index 1124f967..6d9d1850 100644 --- a/luprex/eris-master/test/unpersist.lua +++ b/luprex/eris-master/test/unpersist.lua @@ -43,7 +43,6 @@ function test(rootobj) dotest("Nil in closure ", rootobj.testnilclosure() == nil) dotest("Nested func ", rootobj.testnest(1) == 6) dotest("Upvalue cycles ", rootobj.testuvcycle()[1] == rootobj.testuvcycle()[2]) - dotest("Table special persist ", rootobj.testsptable.a == 6) dotest("Udata special persist ", unboxboolean(rootobj.testspudata1) == true and unboxboolean(rootobj.testspudata2) == false) dotest("Identical tables ", rootobj.testsharedrefa ~= rootobj.testsharedrefb) dotest("Shared reference ", rootobj.testsharedrefa.sharedref == rootobj.testsharedrefb.sharedref) @@ -59,6 +58,12 @@ function test(rootobj) dotest("Deep callstack ", rootobj.testdeep() == 100) dotest("Tail call ", rootobj.testtail() == 100) + + -- Note: the following test uses the persist metamethod, which + -- was deliberately disabled in the luprex version of eris. + -- dotest("Table special persist ", rootobj.testsptable.a == 6) + + print() if passed == total then print("All tests passed.")