Ejemplo n.º 1
0
            public void NextIs()
            {
                var parser = new SimpleParser("<asdf/>");

                Assert.IsFalse(parser.NextIs("asdf"));
                Assert.IsTrue(parser.NextIs('<'));
                Assert.AreEqual(0, parser.Position);
                Assert.IsTrue(parser.NextIs("<asdf/>"));
                Assert.AreEqual(0, parser.Position);
                Assert.IsTrue(parser.NextIs('<'));
                parser.ReadUntil('/');
                parser.Unskip(1);
                Assert.IsTrue(parser.NextIs('/'));
                Assert.IsFalse(parser.NextIs("asdf"));
                Assert.IsTrue(parser.NextIs('/'));
                Assert.IsTrue(parser.NextIs("/>"));
                Assert.IsTrue(parser.NextIs('/'));
            }
Ejemplo n.º 2
0
            public void ConsumeAny()
            {
                var p = new SimpleParser("abc.def ghi");

                p.ConsumeAny('a', 'b', 'c', 'd', 'e', 'f');
                Assert.AreEqual('.', p.NextChar.Value);
                p.Skip(1);
                p.ConsumeAny('a', 'b', 'c', 'd', 'e', 'f');
                Assert.AreEqual(' ', p.NextChar.Value);
                p.Skip(1);
                p.ConsumeAny('a', 'b', 'c', 'd', 'e', 'f');
                Assert.AreEqual(true, p.NextIs('g'));
            }
Ejemplo n.º 3
0
            public void SkipUntil1()
            {
                var parser = new SimpleParser("<asdf/>");

                Assert.IsTrue(parser.SkipUntil("asdf"));
                Assert.AreEqual(5, parser.Position);
                Assert.IsTrue(parser.NextIs('/'));
                parser = new SimpleParser("<aasasdasdf/>");
                Assert.IsTrue(parser.SkipUntil("asdf"));
                Assert.IsTrue(parser.NextIs('/'));
                parser = new SimpleParser("<asdf/>");
                Assert.IsFalse(parser.SkipUntil("xyz"));
                Assert.False(parser.HasNext);
            }