public void SerializeTest() { var obj1 = new FormatModel { Age = 18, Name = "laojiu" }; var formatter = new KeyValueFormatter(); var kvs = formatter.Serialize("pName", obj1, null) .ToDictionary(item => item.Key, item => item.Value); Assert.True(kvs.Count == 2); Assert.True(kvs["Name"] == "laojiu"); Assert.True(kvs["Age"] == "18"); kvs = formatter.Serialize("pName", 30, null) .ToDictionary(item => item.Key, item => item.Value); Assert.True(kvs.Count == 1); Assert.True(kvs["pName"] == "30"); var dic = new System.Collections.Concurrent.ConcurrentDictionary <string, object>(); dic.TryAdd("Key", "Value"); var options = HttpApiOptions.CreateDefaultJsonOptions(); var kvs2 = formatter.Serialize("dic", dic, options); Assert.True(kvs2.First().Key == "key"); Assert.True(formatter.Serialize("null", null, null).Any()); }
public void SerializeTest() { var obj1 = new FormatModel { Age = 18, Name = "lao九" }; var formatter = new KeyValueFormatter(); var kvs = formatter.Serialize("pName", obj1, HttpApiOptions.CreateDefaultJsonOptions()) .ToDictionary(item => item.Key, item => item.Value, StringComparer.OrdinalIgnoreCase); Assert.True(kvs.Count == 2); Assert.True(kvs["Name"] == "lao九"); Assert.True(kvs["Age"] == "18"); kvs = formatter.Serialize("pName", 30, null) .ToDictionary(item => item.Key, item => item.Value); Assert.True(kvs.Count == 1); Assert.True(kvs["pName"] == "30"); var bools = formatter.Serialize("bool", true, null); Assert.Equal("true", bools[0].Value); var strings = formatter.Serialize("strings", "string", null); Assert.Equal("string", strings[0].Value); var dic = new System.Collections.Concurrent.ConcurrentDictionary <string, object>(); dic.TryAdd("Key", "Value"); var options = HttpApiOptions.CreateDefaultJsonOptions(); var kvs2 = formatter.Serialize("dic", dic, options); Assert.True(kvs2.First().Key == "key"); Assert.True(formatter.Serialize("null", null, null).Any()); }
public void ReadWriteTest() { var options = HttpApiOptions.CreateDefaultJsonOptions(); var obj1 = new FormatModel { Age = 18, Name = "老九" }; var formatter = new WebApiClientCore.Defaults.JsonFormatter(); var json = formatter.Serialize(obj1, options); var obj2 = formatter.Deserialize(json, typeof(FormatModel), options); Assert.True(obj1.Equals(obj2)); var dic = new System.Collections.Concurrent.ConcurrentDictionary <string, object>(); dic.TryAdd("Key", "Value"); var json2 = Encoding.UTF8.GetString(formatter.Serialize(dic, options)); Assert.Contains("key", json2); }
public void JsonStringReadWriteTest() { var options = HttpApiOptions.CreateDefaultJsonOptions(); var b = new JsonString <B>(new B()); var json1 = JsonSerializer.Serialize(b, options); var json2 = JsonSerializer.Serialize(b.Value, options); var json3 = JsonSerializer.Serialize(json2, options); Assert.Equal(json1, json3); var b2 = JsonSerializer.Deserialize(json3, typeof(JsonString <B>), options) as JsonString <B>; Assert.Equal("name", b2.Value.Name); var a = new A(); var aJson = JsonSerializer.Serialize(a, options); var a2 = JsonSerializer.Deserialize(aJson, typeof(A), options) as A; Assert.Equal(a.Age, a2.Age); Assert.Equal(a.B.Value.Name, a2.B.Value.Name); }