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); }
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); }