Various changes:
(1) New lua compatibility bindings, including select() and math functions (2) fix some VM bugs (3) fix some table bugs, and attempt to restore metatable functionality.
This commit is contained in:
@@ -6,6 +6,7 @@ import java.io.OutputStream;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
import lua.StackState;
|
||||
import lua.addon.luacompat.LuaCompat;
|
||||
import lua.addon.luajava.LuaJava;
|
||||
import lua.io.Closure;
|
||||
import lua.io.LoadState;
|
||||
@@ -58,7 +59,11 @@ public class LuaJTest extends TestCase {
|
||||
public void testCompare() throws IOException, InterruptedException {
|
||||
runTest( "compare" );
|
||||
}
|
||||
|
||||
|
||||
public void testSelect() throws IOException, InterruptedException {
|
||||
runTest( "select" );
|
||||
}
|
||||
|
||||
public void testSetlist() throws IOException, InterruptedException {
|
||||
runTest( "setlist" );
|
||||
}
|
||||
@@ -82,6 +87,9 @@ public class LuaJTest extends TestCase {
|
||||
|
||||
// add LuaJava bindings
|
||||
LuaJava.install();
|
||||
|
||||
// add LuaCompat bindings
|
||||
LuaCompat.install();
|
||||
|
||||
// new lua state
|
||||
StackState state = new StackState();
|
||||
|
||||
@@ -18,6 +18,8 @@ import lua.addon.luacompat.LuaCompat;
|
||||
import lua.io.Closure;
|
||||
import lua.io.LoadState;
|
||||
import lua.io.Proto;
|
||||
import lua.value.LNil;
|
||||
import lua.value.LString;
|
||||
import lua.value.LValue;
|
||||
|
||||
public class StandardTest extends TestCase {
|
||||
@@ -71,6 +73,12 @@ public class StandardTest extends TestCase {
|
||||
public void runTest() {
|
||||
GlobalState.resetGlobals();
|
||||
LuaCompat.install();
|
||||
// hack: it's unpleasant when the test cases fail to terminate;
|
||||
// unfortunately, there is a test in the standard suite that
|
||||
// relies on weak tables having their elements removed by
|
||||
// the garbage collector. Until we implement that, remove the
|
||||
// built-in collectgarbage function.
|
||||
GlobalState.getGlobalsTable().rawSet( new LString("collectgarbage"), LNil.NIL );
|
||||
StackState state = new StackState();
|
||||
Closure c = new Closure( state, code );
|
||||
|
||||
|
||||
Reference in New Issue
Block a user