Esempio n. 1
0
        public void TestReader()
        {
            Provider     provider = new DocumentProvider();
            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());
            while (reader.peek().isText())
            {
                assertTrue(reader.next().isText()); // remove text from the document
            }
            AssertEquals(reader.peek().getName(), "child");
            AssertEquals(reader.next().getName(), "child");
            assertTrue(reader.peek().isText());
            assertTrue(reader.next().isText());
            while (reader.peek().isText())
            {
                assertTrue(reader.next().isText()); // remove text from the document
            }
            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());
            while (reader.peek().isText())
            {
                assertTrue(reader.next().isText()); // remove text from the document
            }
            assertTrue(reader.next().isEnd());
            while (reader.peek().isText())
            {
                assertTrue(reader.next().isText()); // remove text from the document
            }
        }
Esempio n. 2
0
 /// <summary>
 /// Constructor for the <c>NodeReader</c> object. This is used
 /// to read XML events a input node objects from the event reader.
 /// </summary>
 /// <param name="reader">
 /// this is the event reader for the XML document
 /// </param>
 public NodeReader(EventReader reader)
 {
     this.stack  = new InputStack();
     this.reader = reader;
 }
Esempio n. 3
0
 /// <summary>
 /// This is used to create an <c>InputNode</c> that can be
 /// used to read XML from the specified reader. The reader will
 /// be positioned at the root element in the XML document.
 /// </summary>
 /// <param name="source">
 /// This contains the contents of the XML source.
 /// </param>
 private static InputNode Read(EventReader source)
 {
     return(new NodeReader(source).ReadRoot());
 }