Ejemplo n.º 1
0
        public void Skip()
        {
            SetText(
                @"<Root>
    <a array=""True"">
        <Elem>123</Elem>
        <Elem>""qwe""</Elem>
        <Elem>""qwe""</Elem>
        <Elem>
            <c>234</c>
        </Elem>
    </a>
    <b>123</b>
</Root>");
            ReadTrue();
            Assert.That(reader.TokenType, Is.EqualTo(TrwTokenType.StartObject));
            ReadTrue();
            Assert.That(reader.TokenType, Is.EqualTo(TrwTokenType.PropertyName));
            Assert.That(reader.ValueAsString, Is.EqualTo("a"));
            reader.Skip();
            Assert.That(reader.TokenType, Is.EqualTo(TrwTokenType.PropertyName));
            Assert.That(reader.ValueAsString, Is.EqualTo("b"));
            ReadTrue();
            Assert.That(reader.TokenType, Is.EqualTo(TrwTokenType.Integer));
            Assert.That(reader.ValueAsSInt32, Is.EqualTo(123));
            ReadTrue();
            Assert.That(reader.TokenType, Is.EqualTo(TrwTokenType.EndObject));
            Assert.That(reader.MoveNext(), Is.False);
        }
Ejemplo n.º 2
0
        public void PathWhenSkipping()
        {
            SetText(
                @"{
    ""a"": [
        123, 
        ""qwe"", 
        ""qwe"", 
        {
            ""c"": 234
        }
    ],
    ""b"": [
        {""a"": 123, ""b"":{""c"":234.0}},
        345
    ]
}");

            ReadTrue();
            Assert.That(reader.CurrentEntryPath, Is.EqualTo(""));
            ReadTrue();
            Assert.That(reader.CurrentEntryPath, Is.EqualTo("a"));
            reader.Skip();
            Assert.That(reader.CurrentEntryPath, Is.EqualTo("b"));
            ReadTrue();
            Assert.That(reader.CurrentEntryPath, Is.EqualTo("b"));
            ReadTrue();
            Assert.That(reader.CurrentEntryPath, Is.EqualTo("b[0]"));
            reader.Skip();
            Assert.That(reader.CurrentEntryPath, Is.EqualTo("b[1]"));
            ReadTrue();
            Assert.That(reader.CurrentEntryPath, Is.EqualTo("b"));
            ReadTrue();
            Assert.That(reader.CurrentEntryPath, Is.EqualTo(""));
            Assert.That(reader.MoveNext(), Is.False);
        }