package fitnesse.slim; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import org.junit.Test; import static org.junit.Assert.*; public class SlimStreamReaderTest { @Test public void encodeMessageToSend() throws IOException { ByteArrayOutputStream writer = new ByteArrayOutputStream(); SlimStreamReader.sendSlimMessage(writer, "foo bar baz"); assertEquals("000011:foo bar baz", writer.toString()); } @Test public void encodeHeaderToSend() throws IOException { ByteArrayOutputStream writer = new ByteArrayOutputStream(); SlimStreamReader.sendSlimHeader(writer, "foo bar baz"); assertEquals("foo bar baz", writer.toString()); } @Test public void readSlimMessage() throws IOException { InputStream input = new ByteArrayInputStream("000011:foo bar baz".getBytes()); SlimStreamReader reader = new SlimStreamReader(input); String message = reader.getSlimMessage(); assertEquals("foo bar baz", message); } @Test( expected = IOException.class ) public void readIncompleteSlimMessage() throws IOException { InputStream input = new ByteArrayInputStream("00".getBytes()); SlimStreamReader reader = new SlimStreamReader(input); reader.getSlimMessage(); } }