diff options
author | Benoit Giannangeli <giann008@gmail.com> | 2017-02-14 21:39:16 +0100 |
---|---|---|
committer | Benoit Giannangeli <giann008@gmail.com> | 2017-02-14 21:40:39 +0100 |
commit | 829e47b9bd568c5722e9f59ca05036d2ae912ddf (patch) | |
tree | 40d51cbfa9449c0b07e7fb348d20365bc531e2f4 /tests/lvm.js | |
parent | 8e19f368c2c40d99a92b39c6f566c7bcb2af6cf7 (diff) | |
download | fengari-829e47b9bd568c5722e9f59ca05036d2ae912ddf.tar.gz fengari-829e47b9bd568c5722e9f59ca05036d2ae912ddf.tar.bz2 fengari-829e47b9bd568c5722e9f59ca05036d2ae912ddf.zip |
Launch scripts with luaD_call
Will adjust L.top correctly. Still isn't what lua's doing since we still
miss the first 5 elements.
Diffstat (limited to 'tests/lvm.js')
-rw-r--r-- | tests/lvm.js | 59 |
1 files changed, 30 insertions, 29 deletions
diff --git a/tests/lvm.js b/tests/lvm.js index 40a20bc..ac62f20 100644 --- a/tests/lvm.js +++ b/tests/lvm.js @@ -6,6 +6,7 @@ const beautify = require('js-beautify').js_beautify; const lua_State = require("../src/lstate.js").lua_State; const VM = require("../src/lvm.js"); +const ldo = require("../src/ldo.js"); const Table = require("../src/lobject.js").Table;; const getState = require("./tests.js").getState; @@ -22,7 +23,7 @@ test('LOADK, RETURN', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( @@ -46,7 +47,7 @@ test('MOV', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( @@ -69,7 +70,7 @@ test('Binary op', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.deepEqual( @@ -93,7 +94,7 @@ test('Unary op, LOADBOOL', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.deepEqual( @@ -116,7 +117,7 @@ test('NEWTABLE', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.ok( @@ -143,7 +144,7 @@ test('CALL', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( @@ -175,7 +176,7 @@ test('Multiple return', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.deepEqual( @@ -201,7 +202,7 @@ test('TAILCALL', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( @@ -227,7 +228,7 @@ test('VARARG', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.deepEqual( @@ -251,7 +252,7 @@ test('LE, JMP', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( @@ -275,7 +276,7 @@ test('LT', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( @@ -299,7 +300,7 @@ test('EQ', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( @@ -324,7 +325,7 @@ test('TESTSET (and)', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( @@ -349,7 +350,7 @@ test('TESTSET (or)', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( @@ -378,7 +379,7 @@ test('TEST (true)', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( @@ -407,7 +408,7 @@ test('TEST (false)', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( @@ -435,7 +436,7 @@ test('FORPREP, FORLOOP (int)', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( @@ -462,7 +463,7 @@ test('FORPREP, FORLOOP (float)', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( @@ -489,7 +490,7 @@ test('SETTABLE, GETTABLE', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( @@ -525,7 +526,7 @@ test('SETUPVAL, GETUPVAL', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( @@ -552,7 +553,7 @@ test('SETTABUP, GETTABUP', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( @@ -587,7 +588,7 @@ test('SELF', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( @@ -611,7 +612,7 @@ test('SETLIST', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.deepEqual( @@ -639,7 +640,7 @@ test('Variable SETLIST', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.deepEqual( @@ -663,7 +664,7 @@ test('Long SETLIST', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.deepEqual( @@ -687,7 +688,7 @@ test('Long SETLIST', function (t) { // // // t.doesNotThrow(function () { // L = getState(luaCode); -// VM.luaV_execute(L); +// ldo.luaD_call(L, 0, -1); // // }, "Program executed without errors"); // // t.deepEqual( @@ -727,7 +728,7 @@ test('TFORCALL, TFORLOOP', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( @@ -753,7 +754,7 @@ test('LEN', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( @@ -787,7 +788,7 @@ test('CONCAT', function (t) { t.doesNotThrow(function () { L = getState(luaCode); - VM.luaV_execute(L); + ldo.luaD_call(L, 0, -1); }, "Program executed without errors"); t.strictEqual( |