@@ -0,0 +1,941 @@
+package io.koara;%0A%0Aimport java.io.IOException;%0Aimport java.io.StringReader;%0A%0Aimport org.junit.Before;%0Aimport org.junit.Test;%0A%0Aimport static org.junit.Assert.*;%0A%0Apublic class CharStreamTest %7B%0A%0A%09private CharStream cs;%0A%09%0A%09@Before%0A%09public void setUp() %7B%0A%09%09cs = new CharStream(new StringReader(%22abcd%22));%0A%09%7D%0A%09%0A%09@Test%0A%09public void testBeginToken() throws Exception %7B%0A%09%09assertEquals('a', cs.beginToken());%0A%09%09assertEquals(1, cs.getBeginColumn());%0A%09%09assertEquals(1, cs.getBeginLine());%0A%09%09assertEquals(1, cs.getEndColumn());%0A%09%09assertEquals(1, cs.getEndColumn());%0A%09%7D%0A%09%0A%09@Test%0A%09public void testReadChar() throws Exception %7B%0A%09%09assertEquals('a', cs.readChar());%0A%09%09assertEquals('b', cs.readChar());%0A%09%09assertEquals('c', cs.readChar());%0A%09%09assertEquals('d', cs.readChar());%0A%09%7D%0A%09%0A%09@Test(expected=IOException.class)%0A%09public void testReadCharTillEof() throws Exception %7B%0A%09%09cs.readChar();%0A%09%09cs.readChar();%0A%09%09cs.readChar();%0A%09%09cs.readChar();%0A%09%09cs.readChar();%0A%09%7D%0A%09%0A%7D%0A

add charstream tests