public void WriteJson() { JsonObject o = JsonObject.Parse(@"{ ""CPU"": ""Intel"", ""Drives"": [ ""DVD read/writer"", ""500 gigabyte hard drive"" ] }"); StringWriter sw = new StringWriter(); JsonTextWriter writer = new JsonTextWriter(sw); JsonValueConverter converter = new JsonValueConverter(); converter.WriteJson(writer, o, null); string json = sw.ToString(); Assert.Equal(@"{""Drives"":[""DVD read/writer"",""500 gigabyte hard drive""],""CPU"":""Intel""}", json); }
public void ReadJsonComments() { string json = @"{/*comment!*/ ""CPU"": ""Intel"",/*comment!*/ ""Drives"": [/*comment!*/ ""DVD read/writer"", /*comment!*/""500 gigabyte hard drive"" ]/*comment!*/ }"; JsonTextReader writer = new JsonTextReader(new StringReader(json)); JsonValueConverter converter = new JsonValueConverter(); JsonObject o = (JsonObject) converter.ReadJson(writer, typeof (JsonObject), null, null); Assert.Equal(2, o.Count); Assert.Equal("Intel", o.GetNamedString("CPU")); Assert.Equal("DVD read/writer", o.GetNamedArray("Drives")[0].GetString()); Assert.Equal("500 gigabyte hard drive", o.GetNamedArray("Drives")[1].GetString()); }
public void ReadJsonBadJsonType() { string json = "null"; JsonTextReader writer = new JsonTextReader(new StringReader(json)); JsonValueConverter converter = new JsonValueConverter(); AssertException.Throws<JsonException>(() => { converter.ReadJson(writer, typeof (JsonObject), null, null); }, "Could not convert 'Windows.Data.Json.JsonValue' to 'Windows.Data.Json.JsonObject'. Path '', line 1, position 4."); }
public void ReadJsonUnexpectedEndInObject() { string json = "{'hi':"; JsonTextReader writer = new JsonTextReader(new StringReader(json)); JsonValueConverter converter = new JsonValueConverter(); AssertException.Throws<JsonException>(() => { converter.ReadJson(writer, typeof (JsonValue), null, null); }, "Unexpected end. Path 'hi', line 1, position 6."); }
public void ReadJsonUnexpectedEndAfterComment() { string json = "[/*comment!*/"; JsonTextReader writer = new JsonTextReader(new StringReader(json)); JsonValueConverter converter = new JsonValueConverter(); AssertException.Throws<JsonException>(() => { converter.ReadJson(writer, typeof (JsonValue), null, null); }, "Unexpected end. Path '', line 1, position 13."); }
public void ReadJsonUnsupportedValue() { string json = "undefined"; JsonTextReader writer = new JsonTextReader(new StringReader(json)); JsonValueConverter converter = new JsonValueConverter(); AssertException.Throws<JsonException>(() => { converter.ReadJson(writer, typeof (JsonValue), null, null); }, "Unexpected or unsupported token: Undefined. Path '', line 1, position 9."); }
public void ReadJsonNullValue() { string json = "null"; JsonTextReader writer = new JsonTextReader(new StringReader(json)); JsonValueConverter converter = new JsonValueConverter(); JsonValue v = (JsonValue) converter.ReadJson(writer, typeof (JsonValue), null, null); Assert.Equal(JsonValueType.Null, v.ValueType); }