From a8aeddfc60e2632eb0beecf90e1f21dbe8fdc97e Mon Sep 17 00:00:00 2001 From: James Roseborough Date: Wed, 19 Sep 2012 05:37:39 +0000 Subject: [PATCH] Improve iolib test. --- src/core/org/luaj/vm2/lib/IoLib.java | 2 +- test/lua/iolib.lua | 9 +++++++++ test/lua/luaj3.0-tests.zip | Bin 297016 -> 298975 bytes 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/core/org/luaj/vm2/lib/IoLib.java b/src/core/org/luaj/vm2/lib/IoLib.java index 04070776..9da029f9 100644 --- a/src/core/org/luaj/vm2/lib/IoLib.java +++ b/src/core/org/luaj/vm2/lib/IoLib.java @@ -469,7 +469,7 @@ public class IoLib extends OneArgFunction { private static Varargs iowrite(File f, Varargs args) throws IOException { for ( int i=1, n=args.narg(); i<=n; i++ ) f.write( args.checkstring(i) ); - return LuaValue.TRUE; + return f; } private Varargs ioread(File f, Varargs args) throws IOException { diff --git a/test/lua/iolib.lua b/test/lua/iolib.lua index ec87c0cb..4a4e8b70 100644 --- a/test/lua/iolib.lua +++ b/test/lua/iolib.lua @@ -5,6 +5,15 @@ print( 'platform', platform ) -- -- C version on Windows will add change \n into \r\n for text files at least -- +local tostr,files,nfiles = tostring,{},0 +tostring = function(x) + local s = tostr(x) + if s:sub(1,4) ~= 'file' then return s end + if files[s] then return files[s] end + files[s] = 'file.'..nfiles + nfiles = nfiles + 1 + return files[s] +end print( io ~= nil ) print( io.open ~= nil ) print( io.stdin ~= nil ) diff --git a/test/lua/luaj3.0-tests.zip b/test/lua/luaj3.0-tests.zip index 3975d417d8c4c038186c62ee0aa07c39ef6d4c9b..62b42bc9dfdaf81e2991c8cee35eff80ee2d159b 100644 GIT binary patch delta 21424 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 D$H1Dj delta 19386 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