/** * Cursor is moved to the end of the fragment as usually even * if nothing was read from the event reader after beginning * of fragment was marked. */ public void testMarkFragmentProcessedImmediatelyAfterMarkFragmentStart() throws Exception { moveCursorBeforeFragmentStart(); fragmentReader.markStartFragment(); fragmentReader.markFragmentProcessed(); fragmentReader.nextEvent(); // skip whitespace // the next element after fragment end is <misc2/> XMLEvent misc2 = fragmentReader.nextEvent(); assertTrue(EventHelper.startElementName(misc2).equals("misc2")); }
/** * When fragment is marked as processed the cursor is moved after the end of * the fragment. */ public void testMarkFragmentProcessed() throws XMLStreamException { moveCursorBeforeFragmentStart(); fragmentReader.markStartFragment(); // mark the fragment start // read only one event to move inside the fragment XMLEvent startFragment = fragmentReader.nextEvent(); assertTrue(startFragment.isStartDocument()); fragmentReader.markFragmentProcessed(); // mark fragment as processed fragmentReader.nextEvent(); // skip whitespace // the next element after fragment end is <misc2/> XMLEvent misc2 = fragmentReader.nextEvent(); assertTrue(EventHelper.startElementName(misc2).equals("misc2")); }
assertTrue(fragmentReader.nextEvent().isStartDocument()); assertTrue(EventHelper.startElementName(fragmentReader.nextEvent()).equals("fragment")); fragmentReader.nextEvent(); // skip it fragmentReader.nextEvent(); // skip it assertTrue(EventHelper.endElementName(fragmentReader.nextEvent()).equals("fragment")); assertTrue(fragmentReader.nextEvent().isEndDocument()); fragmentReader.nextEvent(); fail("nextEvent should simulate behavior as if document ended");