public void TestMethodOutOfOrderDeserialization2() { JsonObjectSerializer serializer = new JsonObjectSerializer(); { string outOfOrderJson = "{\"SubDe\":\"Test String\",\"SubId\":2}"; SubObjectEx subObj = (SubObjectEx)serializer.Deserialize(outOfOrderJson, typeof(SubObjectEx), null); Assert.Equal <int>(2, subObj.SubId); Assert.Equal("Test String", subObj.SubDe); } { string outOfOrderJson = "{\"Flag\":true,\"Number\":3.5,\"SubDe\":\"Test String\",\"SubId\":2}"; SubObjectEx subObj = (SubObjectEx)serializer.Deserialize(outOfOrderJson, typeof(SubObjectEx), null); Assert.Equal <int>(2, subObj.SubId); Assert.Equal("Test String", subObj.SubDe); Assert.True(subObj.Flag); Assert.Equal(3.5m, subObj.Number); SubObjectEx subObj2 = (SubObjectEx)serializer.Deserialize(outOfOrderJson, typeof(SubObjectEx), null); Assert.Equal <int>(2, subObj2.SubId); Assert.Equal("Test String", subObj2.SubDe); Assert.True(subObj2.Flag); Assert.Equal(3.5m, subObj2.Number); } }
public void TestMethodStringEscapePathTestMultiProperty() { JsonObjectSerializer serializer = new JsonObjectSerializer(UnknownTypeResolver, SpecialTypeResolver); SubObjectEx testObj = new SubObjectEx(); testObj.SubDe = @"C:\some\path\ends\with\backslash\"; string json = serializer.Serialize(testObj, null); SubObjectEx deserializedObj = (SubObjectEx)serializer.Deserialize(json, typeof(SubObjectEx), null); Assert.Equal(testObj.SubDe, deserializedObj.SubDe); }