From a55504639e4a8fe0fa14ff628d4d85e36b3110a3 Mon Sep 17 00:00:00 2001 From: Ian Farmer Date: Tue, 18 Sep 2007 05:29:29 +0000 Subject: [PATCH] Add unit test for LString.toInputStream (meant to commit this a while ago) --- src/test/java/lua/value/LStringTest.java | 47 ++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 src/test/java/lua/value/LStringTest.java diff --git a/src/test/java/lua/value/LStringTest.java b/src/test/java/lua/value/LStringTest.java new file mode 100644 index 00000000..7518539b --- /dev/null +++ b/src/test/java/lua/value/LStringTest.java @@ -0,0 +1,47 @@ +package lua.value; + +import java.io.IOException; +import java.io.InputStream; + +import junit.framework.TestCase; + +public class LStringTest extends TestCase { + public void testToInputStream() throws IOException { + LString str = new LString("Hello"); + + InputStream is = str.toInputStream(); + + assertEquals( 'H', is.read() ); + assertEquals( 'e', is.read() ); + assertEquals( 2, is.skip( 2 ) ); + assertEquals( 'o', is.read() ); + assertEquals( -1, is.read() ); + + assertTrue( is.markSupported() ); + + is.reset(); + + assertEquals( 'H', is.read() ); + is.mark( 4 ); + + assertEquals( 'e', is.read() ); + is.reset(); + assertEquals( 'e', is.read() ); + + LString substr = str.substring( 1, 4 ); + assertEquals( 3, substr.length() ); + + is.close(); + is = substr.toInputStream(); + + assertEquals( 'e', is.read() ); + assertEquals( 'l', is.read() ); + assertEquals( 'l', is.read() ); + assertEquals( -1, is.read() ); + + is = substr.toInputStream(); + is.reset(); + + assertEquals( 'e', is.read() ); + } +}