package org.simpleframework.xml.stream; import java.io.StringReader; import junit.framework.TestCase; public class EventReaderTest extends TestCase { private static final String SOURCE = "<root name='top'>\n"+ " <!-- child node -->\n"+ " <child a='A' b='B'>\n"+ " <leaf>leaf node</leaf>\n"+ " </child>\n"+ "</root>"; public void testPull() throws Exception { Provider provider = new PullProvider(); StringReader source = new StringReader(SOURCE); EventReader reader = provider.provide(source); assertEquals(reader.peek().getName(), "root"); assertEquals(reader.next().getName(), "root"); assertTrue(reader.peek().isText()); assertTrue(reader.next().isText()); assertEquals(reader.peek().getName(), "child"); assertEquals(reader.next().getName(), "child"); assertTrue(reader.peek().isText()); assertTrue(reader.next().isText()); assertEquals(reader.peek().getName(), "leaf"); assertEquals(reader.next().getName(), "leaf"); assertTrue(reader.peek().isText()); assertEquals(reader.peek().getValue(), "leaf node"); assertEquals(reader.next().getValue(), "leaf node"); assertTrue(reader.next().isEnd()); assertTrue(reader.next().isText()); assertTrue(reader.next().isEnd()); assertTrue(reader.next().isText()); } }