protected void runTest() throws Throwable {
OMFactory omFactory = metaFactory.getOMFactory();
OMDataSource ds = new CharArrayDataSource("<a>test</a>".toCharArray());
OMElement root = omFactory.createOMElement(new QName("root"));
OMSourcedElement child = omFactory.createOMElement(ds, "a", null);
root.addChild(child);
assertFalse(child.isExpanded());
XMLStreamReader stream = root.getXMLStreamReader();
assertEquals(XMLStreamReader.START_ELEMENT, stream.next());
assertEquals("root", stream.getLocalName());
assertEquals(XMLStreamReader.START_ELEMENT, stream.next());
assertEquals(XMLStreamReader.CHARACTERS, stream.next());
assertEquals("test", stream.getText());
assertEquals(XMLStreamReader.END_ELEMENT, stream.next());
assertEquals(XMLStreamReader.END_ELEMENT, stream.next());
assertEquals(XMLStreamReader.END_DOCUMENT, stream.next());
assertFalse(child.isExpanded());
}