diff options
Diffstat (limited to 'tests/lvm.js')
-rw-r--r-- | tests/lvm.js | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/lvm.js b/tests/lvm.js index 6a4ed9f..1dbff2e 100644 --- a/tests/lvm.js +++ b/tests/lvm.js @@ -10,6 +10,7 @@ const DataView = require('buffer-dataview'); const BytecodeParser = require("../src/lundump.js"); const lua_State = require("../src/lstate.js").lua_State; const LuaVM = require("../src/lvm.js").LuaVM; +const Table = require("../src/lobject.js").Table; const toByteCode = function (luaCode) { var luaFile = tmp.fileSync(), @@ -134,4 +135,26 @@ test('Unary op, LOADBOOL', function (t) { [-5, true, -6], "Program output is correct" ); +}); + + +test('NEWTABLE', function (t) { + let luaCode = ` + local a = {} + return a + `, vm; + + t.plan(2); + + t.comment("Running following code: \n" + luaCode); + + t.doesNotThrow(function () { + vm = getVM(luaCode); + vm.execute(); + }, "Program executed without errors"); + + t.ok( + vm.L.stack[0] instanceof Table, + "Program output is correct" + ); });
\ No newline at end of file |