public void op_ReadJson_JsonReader_whenNestedArrayBug(string json) { using (var stream = new MemoryStream()) { using (var writer = new StreamWriter(stream)) { writer.Write(json); writer.Flush(); stream.Position = 0; using (var reader = new JsonReader(stream)) { reader.Read(); var obj = new JsonObject(); obj.ReadJson(reader); Assert.Equal("123", obj.Array("list").Object(0).Number("count").Value); Assert.True(obj.Array("list").Boolean(1)); } } } }
public void op_ReadJson_JsonReader_whenNestedArray(string json) { using (var stream = new MemoryStream()) { using (var writer = new StreamWriter(stream)) { writer.Write(json); writer.Flush(); stream.Position = 0; using (var reader = new JsonReader(stream)) { reader.Read(); var obj = new JsonObject(); obj.ReadJson(reader); Assert.True(obj.Array("list").Boolean(0)); Assert.Equal("1", obj.Array("list").Array(1).Number(0).Value); Assert.Equal("2", obj.Array("list").Array(1).Number(1).Value); Assert.Equal("3", obj.Array("list").Array(1).Number(2).Value); Assert.False(obj.Array("list").Boolean(2)); Assert.True(obj.Array("list").IsNull(3)); Assert.Equal("abc", obj.Array("list").String(4).Value); Assert.Equal("123", obj.Array("list").Object(5).Number("count").Value); Assert.Equal("456", obj.Array("list").Object(6).Number("count").Value); Assert.True(obj.Array("list").Boolean(7)); Assert.Equal("789", obj.Array("list").Object(8).Number("count").Value); } } } }
public void op_Array_string_whenNullValue() { const string name = "name"; var document = new JsonObject { new JsonPair(name, new JsonNull()) }; Assert.Null(document.Array(name)); }
public void op_ReadJson_JsonReader(string json) { using (var stream = new MemoryStream()) { using (var writer = new StreamWriter(stream)) { writer.Write(json); writer.Flush(); stream.Position = 0; using (var reader = new JsonReader(stream)) { reader.Read(); var obj = new JsonObject(); obj.ReadJson(reader); Assert.Equal("value", obj.String("name").Value); Assert.Equal("1", obj.Array("range").Number(0).Value); Assert.Equal("2", obj.Array("range").Number(1).Value); Assert.Equal("3", obj.Array("range").Number(2).Value); Assert.Equal("123", obj.Number("id").Value); Assert.True(obj.Boolean("visible")); Assert.False(obj.Boolean("enabled")); Assert.Null(obj.String("check")); Assert.Equal("1.23", obj.Object("child").Number("value").Value); } } } }
public void op_Array_string() { const string name = "name"; var expected = new JsonArray(); var document = new JsonObject { new JsonPair(name, expected) }; var actual = document.Array(name); Assert.Equal(expected, actual); }